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.
Baudline is a time-frequency browser designed for scientific visualization of the spectral domain. Signal analysis is performed by Fourier, correlation, and raster transforms that create colorful spectrograms with vibrant detail. Conduct test and measurement experiments with the built in function generator, or play back audio files with a multitude of effects and filters. The baudline signal analyzer combines fast digital signal processing, versatile high speed displays, and continuous capture tools for hunting down and studying elusive signal characteristics.
DAP is a comprehensive audio sample editing and processing suite. It currently supports AIFF and AIFF-C audio files, 8 or 16 bit resolution, and 1, 2 or 4 channels of audio data. The package offers comprehensive editing, playback, and recording facilities including full time stretch resampling, manual data editing, and a reasonably complete DSP processing suite.
DarkIce is a live audio streamer. It records audio from an audio interface (e.g. a sound card), encodes it, and sends it to a streaming server. DarkIce can record from OSS audio devices, ALSA audio devices, Solaris audio interfaces, and Jack sources. DarkIce can encode into MP3, MP2, Ogg Vorbis, and AAC formats, and can send the encoded stream to ShoutCast, IceCast 1.3.x and 2.x, and the Darwin Streaming Server.
dsproxy emulates an OSS device that "virtualizes" itself so each UID that opens /dev/dsp gets its own private sound device. At this point, simultaneous reading of /dev/dsp by another process "samples" the data out of dsproxy. The tagged audio data and ioctls stream may be saved to disk locally as the example program does, retargeted over a network, pushed into an effects generator (3-D sound), etc. The virtualization feature is a stepping stone to adding sound to VNC on a per-desktop basis with each user appearing to have total control over /dev/dsp. Most OSS ioctls are implemented, so applications such as xmame and rvplayer7 may be retargeted through dsproxy.