This article is about basic sound management. For advanced topics see Pro Audio.
Arch sound system contains of several levels:
- Drivers and interface – hardware support and control
- Usermode API (libraries) – utilized and required by applications
- (optional) Usermode sound servers – best for the complex desktop, needed for multiple simultaneous audio apps, and vital for more advanced capabilities e.g. pro audio
- (optional) Sound frameworks – higher-level application environments not involving server processes
Default Arch installation already includes kernel sound system, namely ALSA, and lots of utilities for it, to be installed from official repositories. Ones who want additional features can switch to another one (namely OSS) or install one of several sound servers.
Drivers and Interface
- The Advanced Linux Sound Architecture (ALSA) — A Linux kernel component providing device drivers and lowest-level support for audio hardware.
- http://www.alsa-project.org/main/index.php/Main_Page || present in stock kernel
- The Open Sound System (OSS) — An alternative sound architecture for Unix-like and POSIX-compatible systems. OSS version 3 was the original sound system for Linux and is in the kernel, but was superceded by ALSA in 2002 when OSS version 4 became proprietary software. OSSv4 became free software again in 2007 when 4Front Technologies released its source code and provided it under the GPL. Does not support as wide a variety of hardware as ALSA, but does better for some.
- PulseAudio — popular sound server, usable by most common desktop applications
- The Jack-Audio-Connection-Kit — sound server for advanced use, and is generally used by professionals looking to record. Regardless it does support mixing, although to get non JACK aware applications to work, a plugin has to be provided. The alsa-plugins package will do this for you.
- JACK2 — also called jackdmp, it is the next version of JACK, with more support for multi-processor systems, and also includes transport over network.