mp4-sa-> sfront reference manual-> change log and license |
Sections
|
Change LogThe right panel documents the changes made in each sfront release. |
Change LogVersion 0.99 -- 8/31/11 (download) [1] Sfront is now compatible with Mac OS X Lion, including the AudioUnit, CoreAudio, and CoreMIDI drivers. Version 0.98 -- 7/21/10 [1] Audio output of AudioUnits generated by sfront no longer clips sample values to [-1.0, 1.0]. Version 0.97 -- 3/8/10 [1] Improved user-interface support for AudioUnits generated by sfront. Writes by SAOL code to AudioUnit parameter variables are reflected in the user interface, and naming conventions for parameter variables support display-only user interface widgets (such as grayed-out checkboxes). See this section of the MP4-SA book for details. [2] Improved Leopard support for Audiounits. Improved support for Debian standards. Version 0.96 -- 1/12/10 (download) [1] Improved user-interface support for AudioUnits generated by sfront. Sliders have programmable tapering (from log to exp), a slider's unit label may now be specified, and support for menus and checkboxes has been improved. In addition, irrelevant properties no longer clutter the UI. See this section of the MP4-SA book for details. Version 0.95 -- 12/28/09 [1] Effect AudioUnits generated by sfront are now compatible with Ableton Live (tested on Live 8 on Mac OS X Tiger/PPC). Version 0.94 -- 12/14/09 [1] AudioUnits generated by sfront can now use a custom Cocoa view. The release includes an example AU that is a SAOL rewrite of Apple's FilterDemo AU. The example uses a modified version of Apple's FilterDemo Cocoa UI view (written in Objective-C). See this section of the MP4-SA book for details. Version 0.93 -- 11/2/09 [1] Sfront now creates sa.c files that will produce correct results using the 64-bit memory model of gcc (gcc -m64) on x86 CPUs. Version 0.92 -- 9/16/09 [1] Sfront now supports the creation of AudioUnit plug-ins, under Tiger and Leopard (but not yet Snow Leopard). See this chapter of the MP4-SA book for details. Version 0.91 -- 7/30/06 [1] Bug fix: sfront now defaults to writing 16-bit WAV and AIFF files, and the command-line flags for specifying 16-bit WAV and AIFF files now work correctly (thanks to Francois Pinot). [2] Bug fixes in the documentation and implementation of the custom control driver API (thanks to Francois Pinot). Version 0.90 -- 7/03/06 [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. Version 0.89 -- 6/18/05 [1] Source code changes to eliminate new warning messages from gcc 4.0.0. [2] Changes to sfront networking code to match the latest RTP MIDI changes (draft-ietf-avt-rtp-midi-format-09.txt). Version 0.88 -- 12/26/04 [1] Networking updated to match draft-ietf-avt-rtp-midi-format-07. Chapter M fields for A-BUTTON and C-BUTTON use new G bit layout and compute count for large values correctly. Sender supports the oldest-first log ordering for Chapters E/A/N. Sender supports new Chapter Q coding rule Start and Continue commands. SDP sent in SIP INVITEs uses rtp_maxptime and rtp_ptime, and uses correct SDP syntax. [2] The -sip_ip parameter now parses dotted-quads correctly. [2] Memory management bugs fixed (thanks to Graydon Hoare). [3] Correct value for PI used in code examples, book (thanks to Tiaan Geldenhuys). Version 0.87 -- 10/15/04 [1] Networking knows the new IP number of the Berkeley SIP server. [2] Compilation times of Mac OS X are improved. Version 0.86 -- 4/24/04 [1] Networking now conforms to the RTP payload format for MIDI under development in the Audio/Video Transport group of the Internet Engineering Task Force. [2] The download page no longer offers RedHat or Debian packages, because I no longer have root access to a desktop Linux workstation to build and test packages. However, the official Debian package for sfront 0.85 still exists, and will hopefully be updated to 0.86. [3] Several minor bugfixes. Version 0.85 -- 9/13/02 [1] Mac OS X support for real-time MIDI control, using the -cin coremidi control driver. Up to four external MIDI sources are recognized. Virtual sources are ignored; expect virtual source support in a future release. [2] Mac OS X memory locking now works in normal user processes, and is no longer limited to root.Version 0.84 -- 8/29/02 [1] CoreAudio I/O now works correctly under Mac OS X 10.2 (Jaguar). Thanks to Juno. [2] Large -latency values no longer hang CoreAudio; documentation for -latency option is now accurate for CoreAudio. Thanks to Manfred Brockhaus. [3] Sfront networking now works under Mac OS X, including PPP and DHCP. Version 0.83 -- 8/11/02 [1] Low-latency audio output and input now supported for Mac OS X using CoreAudio. Developed on a TiBook under 10.1.5; please send reports for other platforms. Thanks to coreaudio-api and darwin mailing list members for extensive API help. [2] Compile-time warnings under Visual C++ fixed. Thanks to Kees van Prooijen. Version 0.82 -- 7/23/02 [1] Bugfixes for large spline and cubicseg wavetables, and for polymorphic opcodes used in wavetables. Thanks to Michael B. [2] SIP server IP numbers updated for sfront networking. To use earlier sfront versions with the new SIP server, add -sip_ip 128.32.112.203 to the sfront command line. Version 0.81 -- 5/24/02 [1] Bugfixes for sfront code generation and for the SLib library. Thanks to Manfred Brockhaus and Michael McGonagle. Version 0.80 -- 5/08/02 [1] Sfront complies with the MPEG 4 Structured Audio COR2 Corrigenda (March 2002). See this guide to COR2 changes for more details. [2] The MP4-SA book is now licensed under the GNU Free Documentation License, and is bundled with all versions of the sfront distribution. [3] Many bugfixes. Version 0.79 -- 11/04/01 [1] Performance tuning for audio streaming under Mac OS X. Thanks to Richard Dobson and Robert. Version 0.78 -- 10/23/01 [1] Sfront buffer overflow bugfix, caused fatal errors under Mac OS X. Thanks to Robert. Version 0.77 -- 10/12/01 [1] New mac_carbon audio driver for Mac OS X, using the Carbon framework. Bugfixes for Windows WMME and DirectSound drivers. Thanks to portaudio.com, Phil Burk, Richard Dobson, and Dominic Mazzoni. Version 0.76 -- 9/23/01 [1] Enhanced audio driver API to support soundcard APIs that require callback functions. [2] New ps_win_wmme and ps_win_ds audio drivers for Windows WMME and DirectSound APIs. Thanks to the PortAudio team, and testers Richard Dobson, Peter Maas, Kees van Prooijen, and Tim Thompson. [3] Audio drivers now control default time option selection. [4] Many bugfixes in SAOL audio bus system. Thanks to Robert Sherry. Version 0.75 -- 8/13/01 [0] Sfront networking now works well with DHCP, otherwise unchanged from sfront 0.74. Thanks to Mike McGonagle. Version 0.74 -- 8/04/01 [1] First release for sfront networking. [2] Audio driver for Irix (6.2 and above). Thanks to Michael Pruett (SGI). [3] The sfront manual is now under the GFDL, for Debian compatibility. Thanks to Enrique Arnuncio for help with the Debian issues. Note the MP4-SA book license is unchanged. [4] New SAOL resonant physical model library. See examples/bach and several examples/linux files for SAOL produced by the library, and see sfront/lib/reson/README for library details. [5] Many bug fixes, thanks to Robert Sherry, Michael McGonagle, and Kees van Prooijen. Version 0.72 -- 7/10/01 [1] The -cin ascii control driver has been rewritten: it maps the ASCII keyboard as a two-octave pentatonic scale, with fixed note length. Special keys control MIDI presets and channel volume. Tested under Linux, should work on any OS that supports the termios API. [2] Sfront now fully tested under Mac OS X version 10.0.3. Work on Mac OS 9.1 under MPW has yet to resolve problems related to sample file and MIDI file reading, and so OS X is the most viable option for sfront Mac OS users. Thanks to Manfred Brockhaus. [3] Numerous bug fixes: variable length core opcodes work in oparrays, the && and || operators work for vectors, unused exports signal variables work correctly, several audio-bus errors fixed, SASL labelled control statements access multiple instrs correctly, large constant integer values correctly supported. Thanks to Robert Sherry and Axel Nackaerts. Version 0.71 -- 3/29/01 [1] Bugfixes for user-defined opcodes that use slower-rate statements. Thanks to Robert Sherry and Robin Davies. Version 0.70 -- 2/20/01 [0] Added MPW-related bugfix -- otherwise identical to 0.69, whose change-log items are listed below. [1] Sfront is compliant with the COR1 document, a new MPEG Corrigenda that updates the SAOL language. See this appendix of the MP4-SA Book to learn about the SAOL changes in COR1. [2] New alsaseq control driver written by Enrique Robledo Arnuncio, for MIDI control using the Linux ALSA sequencer. [3] Many bug fixes, including compliant global parameter krate determination when srate/krate is non-integral (thanks to Ross Bencina), Macintosh MPW compilation fixes (thanks to BUYO-BUYO- IGOR). Version 0.68 -- 10/28/00 [1] C code generated for MIDI control now compiles faster. [2] Many contributed bug fixes, thanks to Kees van Prooijen, Richard Dobson, the saol.net folks, and M. Edward Borasky. Version 0.67 -- 09/09/00 [0] Another bugfix for Windows sfront.dsp file (thanks to Kees van Prooijen). Rest of items unchanged since 0.65. [1] 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. [2] C code generated for wide oparrays compiles much quicker and runs with improved cache behavior (thanks to Richard Dobson). [3] Many sa.c memory leaks involving wavetables have been fixed, reducing the working memory space of table-intensive programs. [4] Bugfixes involving the dur standard name (thanks to Tobiah), empty opcode return() statements (thanks to Ross Bencina), name space collisions (thanks to Aaron Finch), oparrays, and wavetables. Version 0.64 -- 08/02/00 [1] Optimizations for accessing global variables (via import/export) and opcode parameters, to eliminate unneeded copying. Programs that use these language features extensively should see significant speedups (thanks to Dave Gillepsie). [2] Linux rpm and deb binary packages now available for download (thanks to Enrique Arnuncio and Joey Hess). [3] Bugfixes for fft/ifft shift-and-add mode (a startup artifact was eliminated, and an boxcar windowed fft/ifft pair has unity gain, thanks to Richard Dobson). [4] Bug fixes for ANSI constant compatibility (thanks for Aaron Finch) and name-space clashes, and a null -ain/-aout driver added was (thanks to Mike McGonagle). Version 0.63 -- 07/10/00 [0] Several cross-platform bugfixes (Thanks to Michael McGonagle and Richard Dobson). Rest of change log from 0.62. [1] 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. [2] 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. Thanks to Paul Barton-Davis, Bertrand Petit, Benno Senoner, Kai Vehmanen, and the folks at saol.net. [3] 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. Thanks to Richard Dobson and the folks at saol.net. Version 0.61 -- 05/28/00 [1] Sfront is 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. [2] New linux/linbuzz example, that shows the MIDI features of Slib in a real-time instrument. [3] New optimization: faster execution of expressions like tableread(t, int(x)), by eliminating interpolation code. [4] 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 -- 05/07/00 [0] Minor buzz() opcode bugfix -- rest of change log describes changes between 0.58 and 0.59. [1] Rate-semantic printf statement implemented, and a new book chapter on debugging SAOL shows how to use it. Like all sfront SAOL extensions, sfront drops printf statements as it encodes MP4 files, and printf is not a reserved word if the -isosyntax flag is set. New -isocheck flag also helps debugging, adding many run-time checks. [2] "C pre-processing" of SAOL and SASL is now integrated into sfront, with line-number support for error messages, a post-processor that strips stray semicolons. To support library development, sfront now supports multiple global blocks in a program. Thanks to Michael McGonagle. [3] MIDI controller, aftertouch, and pitch bend information is now visible to effects and SASL instruments. See this book section for details. Thanks to Robin Davies and saol.net. [4] Support added to querying audio input sources for sample rate and channel width of input_bus, if not specified in global block. [5] Control drivers can now control BIFS variables (including params[]) as accessed by SAOL code. [6] Bug fixes: expressions used in array/opcode/table indexing now executed just once (formerly done twice due to buggy rounding code), buzz opcode now works for large rolloff and nharm values, user-defined opcode calls in the global block now work correctly, recursive opcode calls generate an error message, Kaiser window table generator bugs fixed. Many bugs in MIDI File support fixed (thanks to saol.net.) Version 0.58 -- 04/17/00 [1] The control driver API has been improved. It can now support compliant execution of MP4 SA_access_units, as well as patch editor, CLI, and symbolic debug applications. It includes many data structures that let the control driver discover information about the SAOL and SASL files used to generate the sa.c it lives in. [2] The programmers manual for sfront has been reworked, and now includes an introductory section that explains how to use sfront from other programs, and a multi-part manual on the control driver interface. [3] A file streaming control driver has been written to demonstrate the new API. It opens an MP4 file during the start of sa.c execution, seeks past the config section, and then dynamically executes SA_access_unit stream packets. It contains much of the codebase needed for true MP4-SA network streamer. [4] The spline wavetable generator was described incorrectly in the MP4-SA book, and implemented incorrectly in sfront. Both book and program are now fixed. See this book section for the correct syntax (page down to the spline generator). [5] SAOL random opcodes now produce a different random number stream on each sa.c run. New -fixedseed sfront option simplifies SAOL program testing, by making all random opcodes produce a deterministic number stream on every sa.c run. Thanks to Martin Marier and Michael McGonagle. [6] Many bugs were fixed. Most bugs were in SASL and SAOL wave table generator code, and in the control driver code. Bugs were also fixed in the linmidi driver. Version 0.57 -- 03/8/00 [0] Windows distribution issues, and several bugs, that were found in 0.56 are fixed -- thanks to Daniel Kahlin, Michael McGonagle, Kees van Prooijen, and Richard Dobson. Remaining change log entries are carried over from 0.56. [1] The -bit option now reads SA files that have streaming data (i.e. SA_access_units). All event_types are supported (SASL score_lines, MIDI midi_events, and the sample type for table data). SASL score_lines that use both relative and absolute timestamps can be read (i.e. has_time = 0 and 1). [2] The -bitout option now writes binary files that include SA_access_units. The new -sstrout filename.sasl -mstrout filename.mid options specify the SASL and MIDI files for encoding as SA_access_units. Files specified using the older options: -sco filename.sasl -midi filename.mid are encoded as part of the preamble of the binary file (StructuredAudioSpecificConfig) as before. If SASL table commands are used with the sample wavetable generator, the WAV or AIFF file specified becomes a streaming sample chunk. [3] Bug fixes: skip and size fields work correctly in sample wavetable generator (thanks to Bertrand Petit), bugs in dynamic instrs fixed (thanks to Michael McGonagle), bugs in the AIFF audio input driver fixed. [4] Default help printout shortened (-help prints out the longer option listing). Version 0.55 -- 02/12/00 [1] 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 (Thanks to Kees van Prooijen). [2] SAOL template improvements: the restrictions on the use of "<" 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. [3] Control and audio drivers can now access command-line options of the program containing them, and policy has been set to share the command-line-option namespace. See the audio driver documentation and Part III of the control driver documentation for details. Thanks to Michael McGonagle. [4] Linux/FreeBSD driver enhancements: more soundcards are permitted to use -timesync mode, and warning messages are printed for ill-advised use of timing flags. [5] Bug fixes: MIDIctrl standard name now works as an lval, control driver interface bugs fixed (thanks to the SAOL Projekt). Version 0.54 -- 01/27/00 [1] The sample wavetable generator can now read base frequency and loop start and end points from the smpl chunk of Microsoft WAV files (Thanks to Kees van Prooijen). MP4 file encoding and decoding correctly packs and unpacks this data into the binary MP4 encoding. Bugs handling 8-bit AIFF and WAV file data in MP4 encoding and decoding and in sample wavetable generator fixed. [2] Concat wavetable generator bugs fixed. [3] Several SAOL and SASL file parsing errors fixed (thanks to Bertrand Petit and to the members of the SAOL Projekt). [4] Non-ANSI strdup() calls removed from sfront and generated code. Version 0.53 -- 01/12/00 [1] Several new optimizations: [a] Instr and opcode tables generators with constant parameters are converted to imports tables. [b] Instr code in while and if-else blocks are now rate-optimized (i.e. slower subexpressions are moved to i-rate or k-rate if it is safe to do so). [2] Audio drivers for FreeBSD (thanks to Bertrand Petit). [3] New -except sfront option, includes a signal handler for gracefully shutting down audio drivers if generated C program terminates abnormally. Compiles as vanilla ANSI C, but may not work well on non-POSIX systems (thanks to Bertrand Petit). [4] Divide-by-zero bugs fixed in the aline, kline, aexpon, and kexpon core opcodes (thanks to Bertrand Petit). Bugs fixed in table and tablemap accesses in deeply nested oparrays. Bugs fixed in template expression substitution. [5] New binary distributions for Linux and DOS/Windows. The DOS/Windows releases are built using the dos-gcc cross-compiler that runs under Linux. Version 0.52 -- 01/03/00 [1] Extensive optimizations and bug fixes for the filter, spectral analysis, gain control, sample conversion, delay, and effects core opcodes, the pluck and grain signal generator core opcodes, and the spatialize statement. [2] All a-rate core opcodes now function correctly when enclosed in if and while statements with a-rate guards (thanks to Ross Bencina). [3] Runtimef.c file now included in lib/csrc/ directory -- thanks to Bertrand Petit. Version 0.50 -- 12/17/99 [1] The code sfront generates for wavetable data structures has been improved, and many core opcodes and language elements run faster as a result. [2] Many bug fixes: nested oparrays of user-defined opcodes now work correctly, a specialop bug that broke the linux/linvoc example is fixed, and complex wavetable generates now work correctly. Thanks to Dan Ellis and Reynald Hoskinson. Version 0.49 -- 12/04/99 [1] Optimizations of several core opcodes: buzz, aline, kline, aexpon, and kexpon. [2] Imports tables are now implemented as imports exports tables when it is safe to do so. Version 0.48 -- 11/22/99 [1] Fixes optimizer bugs, and adds new optimizations. New optimizations focus on effects instruments, and specializes generated code to the unique properties of instruments launched using send(). [2] Duration and delay arguments to SAOL instr command now correctly interpreted as having units of beats. Version 0.46 -- 11/16/99 [1] Fixes optimizer bugs, and adds new optimizations. New optimizations stem from a reference-counting scheme that tracks variables in SAOL code. [2] Win32 DirectSound output driver is now works better, and has been tested on SB Live, SB16, and Creamware Pulsar cards. Requires 7.0 version of DirectSound, and may have problems working under NT/Windows 2000. Thanks to Vincent Siliakus and Thomas Jongepier. [3] New control input driver alsamidi supports real-time MIDI input under Linux using the ALSA sound system (note OSS audio input and output drivers already work with ALSA). Thanks to Steven Pickles. Version 0.44 -- 11/01/99 [1] Fixes optimizer bugs, and adds minor optimizations. Major parts of the compiler have been rewritten to support future optimization releases. Version 0.43 -- 09/28/99 [1] Fixes code optimization bugs (0.42 produces incorrect code for certain arithmetic expressions). Running 0.42 with -O0 option should avoid these bugs, but will also avoid all optimization! Version 0.42 -- 09/19/99 [1] Rate optimization added to sfront -- slower-rate subexpressions are factored out and executed in a slower pass. Default is complete optimization, new flags control turning off parts of the optimizer. [2] Fixed dsound code generation bugs (but not underlying sound generation bugs). Thanks to Michael Gogins. Version 0.41 -- 09/10/99 [1] Fixed bugs affecting the special "startup" instrument (thanks to Michel Jullian). Version 0.40 -- 09/05/99 [1] Sfront can now handle audio input and output drivers that require floating-point data buffers. See audio driver documentation for details. [2] New -ain and -aout options for .dat files, the ASCII data format for the curve graphing program view (part of the Chipmunk tools, a UNIX toolset under the GPL). This option uses a floating-point driver. Version 0.39 -- 09/03/99 [1] Core opcodes now handle negative frequency arguments correctly (except for loscil). Thanks to Giorgio Zoia (ETH). [2] Supports Borland C++ compiler under Windows with very few warning messages (thanks to Ross Bencina). Version 0.38 -- 08/31/99 [1] Supports Borland C++ compiler under Windows with minimal warning messages (thanks to Ross Bencina). Version 0.37 -- 08/27/99 [1] Many minor changes to support compilation using Microsoft Visual C++. [2] Bundles all libraries into the sfront executable, so that the binary no longer needs to find the library directory. Version 0.36 -- 08/20/99 [1] Adds linux audio output and audio and MIDI input support. [2] Core opcode rate semantics now match saolc. [3] Removes a printf option that was not compatible with Microsoft Visual C, increasing the odds sfront may compile under Windows w/o UWIN (thanks to gogins@nyc.pipeline.com). Version 0.35 -- 07/29/99 Baseline version of sfront, future entries in this log will describe changes made to this release. |
Sfront LicenseThe Regents of the University of California hold the copyright to sfront, apart from a few driver modules contributed by non-UC employees. Sfront is licensed under the BSD license (without the advertising clause) which is reproduced below: Copyright (c) 1999-2006, Regents of the University of California All rights reserved.Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the University of California, Berkeley nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
SummaryThis concludes the users guide. The next section of the manual is for programmers wishing to modify sfront or write audio drivers for sfront Next section: Part II/1: Adding Drivers to Sfront |
|
mp4-sa-> sfront reference manual-> change log and license |