Version 0.68 - 10/28/00
- C code generated for MIDI control now compiles faster.
- Many contributed bug fixes.
Version 0.67 - 9/9/00
- Another bugfix for Windows sfront.dsp file.
- C code generated for SAOL and SASL wavetables compiles much quicker and runs with improved cache behavior. C code created for the "sample" wavetable generator no longer includes an WAV or AIFF parser, and moderately-sized constant tables for all generators are computed by sfront and placed into the sa.c file as constant float arrays. On some machine/compiler configurations, the sfront -hexdata flag offers additional compilation speedup, by encoding arrays as hexadecimal strings.
- C code generated for wide oparrays compiles much quicker and runs with improved cache behavior.
- Many sa.c memory leaks involving wavetables have been fixed, reducing the working memory space of table-intensive programs.
- Bugfixes involving the dur standard name, empty opcode return() statements, name space collisions, oparrays, and wavetables.
Version 0.64 - 8/2/00
- Optimizations for accessing global variables (via import/export) and opcode parameters, to eliminate unneeded copying. Programs that use these language features extensively should see significiant speedups.
- Linux rpm and deb binary packages now available for download.
- Bugfixes for fft/ifft shift-and-add mode (a startup artifact was eliminated, and an boxcar windowed fft/ifft pair has unity gain).
- Bug fixes for ANSI constant compatibility and name-space clashes, and a null -ain/-aout driver added was.
Version 0.63 - 7/10/00
- Several cross-platform bugfixes
Version 0.62 - 7/7/00
- Standard name cpuload is now supported in -playback and -timesync mode, for all drivers. Cpuload is a ksig, that takes on a value between 0 (machine is not loaded at all) and 1 (any further loading of machine risks loss of real-time playback). Cpuload is computed with no temporal filtering or windowing, and shows the performance on the last kcycle.
- The -ain/-aout linux and -cin linmidi drivers are enhanced. The drivers are more robust against lockup and MIDI data loss. When run as root, the driver uses POSIX real-time scheduling to reduce audio dropouts (while we have carefully tested these root features, bugs in programs run as root can cause file-system damage: use at your own risk). Sa.c start-up screen now suggests the best sfront flags to use for a given patch. FreeBSD and linux sources are now merged, with many of these features available for both operating systems.
- Bugfixes in: memory allocation, dsound driver, random number generators, polymorphic table opcode rate semantics, -cin fstr file streaming, wavetable generator sizing, and array parameters in user defined opcodes.
Version 0.61 - 5/28/00
- Now includes Slib, a SAOL library that provides support utilities to simplify low-level SAOL programming. See this new chapter of the MP4-SA book for details.
- New linux/linbuzz example, that shows the MIDI features of Slib in a real-time instrument.
- New optimization: faster execution of expressions like tableread(t, int(x)), by eliminating interpolation code.
- Bugfixes for the dynamic instr command, the outbus command, the buzz opcode and wavetable generator, specialop expressions, opcode table initializations that use opcode parameters, send statements that target the output_bus, and user-defined opcode rate warnings.
Version 0.60 - 5/7/00
- Major additions to help SAOL programmers write and debug programs including a rate-semantic printf statement, a new chapter in the online MP4-SA book on debugging, and full integration of the C pre-processor to prepare ASCII SAOL and SASL files for parsing.
- Enhancements were made to MIDI real-time control, external audio input processing, and the BIFS standard name interface.
- Many bugs were fixed, including MIDI File handling bugs, graceful detection of recursive op-code calls, and fixes to the core opcodes and generators.
Version 0.58 - 4/17/00
- Enhanced control driver API, which supports the use of sfront in end-user applications like streaming decoders, patch editors, sequencers and symbolic debuggers.
- Many bugs were fixed, mostly in wavetable generators and the linmidi control driver for real-time MIDI input under Linux.
- Random number opcodes now produce unique data streams on each decoder invocation, with a new sfront flag to force deterministic data streams for testing.
Version 0.57 - 3/8/00
- Streaming data part of the Structured Audio binary format can now be decoded and encoded by sfront
- Default sfront help message has improved
- Skip and size fields now work correctly in sample wavetable generator
- An instr can now correctly create copies of itself using the instr command
- Bugs in the AIFF audio input driver fixed
Version 0.55 - 2/12/00
- Base frequency and loop points can be read by the sample wavetable generator, for both AIFF and WAV files, and this looping information is correctly captured in .mp4 files
- Syntax restrictions on SAOL templates removed ("<" and ">" in maplist expressions have been removed, many bugs have been fixed, and a new template chapter in the MP4-SA book is now online)
- Enhanced the control and audio driver APIs to support command-line arguments
- MIDIctrl standard name now works as an lval
- Control driver interface bugs fixed
|
|