FTS 1.4.0 pre-production (Brunello) Release Notes

Highlights

Brunello is widely known high level tuscany wine, made in the same area as Morellino but much more mature.

This release include a large number of bug fixes and increased compatibility with Max 0.26; the release is currently used in Ircam to run big patches (>= 20000 objects) written for Max 0.26 and it have also already been used in concerts within Ircam.

Also a number of small user visible changes have been introduced (mostly in time related objects) and a number of new objects libraries has been introduced, namely a patch level error/exception handling system and a list manipulation library.

The change in the minor version number is due to the fact that this release is the first release to support Ermes, the new Java based editor for FTS; the new editor is not bundled with this distribution, but it will be soon available for evaluation.

Platforms

Perfomance on the Sgi platform have been largely increased, by fixing an underflow exception problem and by compiling FST with the new Mips Pro 7.1 compiler and n32 ABI (IRIX 6.2 and following only).

This release is distributed in different binary format for the Sgi platforms, including binaries for the 5.3, and 6.x r5k and r10k machines.

Time

Release 1.4.0 include a number user visible changes in time handling, in time related APIs and in time related objects.

The time is now a float, and no more a long; all the C APIs are changed accordingly, and the corresponsding objects; if you use the FTS header files, the object sources should be compatible with this new version; also, the patches should be compatible in the 99.99% of the cases.

This release add a new system clock, called "mtc", that correspond to the MIDI time clock received on midi port 0; this is a first experimental implementation of MTC, with reduced features; the time resolution is two frames, and backward going MTC is not well supported; also, the drop frame MTC format is not supported (will be unprecise).

The pipe object take now a clock argument; also, all the time related objects accept the clock name as first argument, and not as second: for example, the correct syntac now is "at mtc 1000", and not "at 1000 mtc".

Finally the "ms" and "dsp_ms" clock changed name to "msec" and "dsp_msec".

Error and Exception Handling

A new error/exception handling subsystem has been introduced in this release; errors can be raised and handled non-locally within a patch; a C Api will provided in the future, for raising and handling errors in user code.

See the help patches for documentation.

New And Changed Objects

A number of objects has been introduced: Refer to the help patches for up to date documentation on the objects; we will update the reference manual in a later release. Also, a lot of bugs have been fixed, including all the known bugs in delay objects.

New Help Patches and Examples

This release include a complete new set of help and example patches. A complete overview of the supported object libraries is given in the help-intro.pat patch, accessible via the help menus in Max.

New Configuration Options

The configuration system now include a default machine dependent configuration file; see the install files for more information.

Better compatibility with Max 0.26

Other than the tens of compatibility bug fixed, this release work with old patches using the "max" targer for send or message boxes, and for patches that use the "receive dsp_is_starting" object. Don't use this two features for new patches, they are substituted with new functionalities (ucs and the "at" object with the dsp_msec clock). To disable this compatibility feature, use the -no26 command line option (or the correspoding X resource or NextStep default).