The Advanced Linux Sound Architecture is composed of several parts. The first is a fully modularized sound driver which supports module autoloading, devfs, isapnp autoconfiguration, and gives complete access to analog audio, digital audio, control, mixer, synthesizer, DSP, MIDI, and timer components of audio hardware. It also includes a fully-featured kernel-level sequencer, a full compatibility layer for OSS/Free applications, an object-oriented C library which covers and enhances the ALSA kernel driver functionality for applications (client/server, plugins, PCM sharing/multiplexing, PCM metering, etc.), an interactive configuration program for the driver, and some simple utilities for basic management.
Beast is a powerful music composition and modular synthesis application. It offers multiple input methods like multitrack, piano roll, and pattern editing and supports skins. On the technical side, it has a wide range of abilities like sequencing, unlimited undo/redo history, real-time synthesis with multiprocessor support, full duplex 32-bit audio rendering, precise timing down to sample granularity, on demand loading of partial wave files, on the fly decoding of various sample formats, aliasing free oscillators, and full Scheme scripting support.
jMusic provides a library of classes for generating and manipulating music, and is a solid framework for computer assisted composition in Java. jMusic supports composers by providing a music data structure based upon note/sound events, and methods for working with that musical data. jMusic can read and write MIDI files, audio files, and its own .jm files. jMusic is designed to be extendible, encouraging you to build upon the functionality of jMusic by programming in Java to create your own music composition tools.
Sfront compiles MPEG 4 Structured Audio (MP4-SA) programs into efficient C programs that generate audio when executed. MP4-SA is a standard for normative algorithmic sound, which combines an audio signal processing language (SAOL) with score languages (MIDI and SASL). Under Mac OS X and Linux, sfront supports real-time, low-latency audio input/output and MIDI input. Under Mac OS X, sfront supports the creation of AudioUnit plug-ins. The documentation includes a book about SAOL programming.
Smurf is a GTK-based SoundFont editor. SoundFont files are a collection of audio samples and other data that describe instruments for the purpose of composing music. SoundFont files do not describe the music itself, but rather the sounds of the instruments. These instruments can be composed of any digitally recordable or generated sound. This format provides a portable and flexible sound synthesis environment that can be supported in hardware or software. Note that Swami is the successor to Smurf and is an entire object-oriented rewrite of it.
Cumulus is a software synthesizer which implements the Asynchronous Grain Synthesis. This synthesis allows you to create very original sounds to be used in your music (mainly percussive and ambient background sounds). It features a convenient QT-based GUI where each paramter can be controlled by an envelope, the ability for all parameters to be controlled with hardware controllers (MIDI-controllerbox), an interface to use a MIDI-keyboard (polyphony adjustable, default 8 voices), internal 32-bit accuracy, an internal sampling rate that can be any multiple of the external one, and full realtime capability with parameter changes audible within around 50ms, depending on system latency.
jMax is a visual programming environment for building interactive real-time musical and multimedia applications by allowing the user to interactively design dataflow circuits. The basic data types that can go through are integers, symbols, lists, etc. It is an event-driven system and has been used for MIDI processing. A second part of the system (DSP) allows a continuous signal to flow through a circuit, which is most useful for PCM sound (ie. microphone, sound files, etc.). The system is extensible by using shared libraries, you may add data processor types, data types, GUI elements, device types, and more. Data processors may also be designed as circuits and reused.
Swami is an instrument patch file editor using SoundFont files that allows you to create and distribute instruments from audio samples used for composing music. It uses FluidSynth, a software synthesizer, which has real time effect control, support for modulators, and routable audio via JACK. This project supersedes the Smurf SoundFont Editor, and is an entire object-oriented rewrite of it. The supporting libraries are GUI-independant and can be used in your own programs for doing SoundFont manipulation.