Hi laa-folk,
Announcing the release of sfront 0.90 7/03/06, available
for download from:
http://www.cs.berkeley.edu/~lazzaro/sa/index.html
For those of you unfamiliar with sfront, here's a short bio:
Sfront compiles MPEG 4 Structured Audio (MP4-SA) bitstreams into
efficient C programs that generate audio when executed. MP4-SA is a
standard for normative algorithmic sound, that combines an audio
signal processing language (SAOL) with score languages (SASL, and the
legacy MIDI File Format). Under Linux and Mac OS X, sfront supports
real-time, low-latency audio input/output, local MIDI input from
soundcards, and networked MIDI input using RTP and SIP. A SIP server
hosted on the Berkeley campus manages sessions. The documentation
includes a book about SAOL programming.
The change log for 0.90:
[1] Sfront has been relicensed to
use the BSD license (without the
advertising clause).
[2] If the SAOL global parameter
interp is set to 1, sfront uses
band-limited windowed sinc function
interpolation for most normative
interpolations defined in the MPEG
standard (opcodes such as doscil,
oscil, tableread, fracdelay, etc).
An exception is the grain() core
opcode, which still uses linear
interpolation when interp=1. As
a convenience, sfront has new
command-line options to adjust
the interpolation algorithm
(-interp, -sinc_zcross, and
-sinc_pilen).
[3] 64-bit integer arithmetic is
now used in the implementation of
phase pointers for most core opcodes
(the grain() opcode is an exception,
grain uses float phase pointers). This
change fixes the phase slipping problems
reported by Florian Walter.
[4] 8-bit and 24-bit WAV and AIFF
files are now supported by the
sample wavetable generator, and
by the -ain fname.{wav,aif} and
-aout fname.{wav,aif} drivers.
See -aout for output syntax.
[5] It is now possible to specify
the input channel of a stereo
WAV or AIFF file used by the
sample wavetable generator,
using the "filname.wav@n",
when n = 0 or 1. This supports
the creation of SAOL sample
playback engines that access
a database of stereo samples.
[6] The network musical performance
library has been updated to reflect
the final RTP MIDI payload format
that will appear in IESG-approved
Internet-Drafts, that should appear
as IETF RFCs later this year.
[7] A few bug fixes. (a) The fir, iir,
and reverb core opcodes may now
be used as oparrays, fixing a bug
reported by Jonathan Beyer. (b)
Constant tables defined in the
startup instrument no longer cause
a run-time crash. (c) Table
imports in the startup instrument
that would produce a run-time
error now generate a warning
message, fixing a bug reported
by Robert of all-your-bass.
---
John Lazzaro
http://www.cs.berkeley.edu/~lazzaro
lazzaro [at] cs [dot] berkeley [dot] edu
---