Sound system

From ArchWiki

This article is about basic sound management. For advanced topics see professional audio.

General information

The Arch sound system consists of several levels:

  • Drivers and interface – hardware support and control
  • Usermode API (libraries) – utilized and required by applications
  • Usermode sound servers (optional) – best for the complex desktop, needed for multiple simultaneous audio applications, and vital for more advanced capabilities e.g. pro audio
  • Sound frameworks (optional) – higher-level application environments not involving server processes

A default Arch installation already includes the kernel sound system (ALSA), and lots of utilities for it can be installed from the official repositories. If you want additional features you can install one of several sound servers.

Drivers and interface

  • ALSA — The default Linux kernel component providing device drivers and lowest-level support for audio hardware.
https://www.alsa-project.org/wiki/Main_Page || present in stock kernel
  • OSS — An alternative sound architecture for Unix-like and POSIX-compatible systems which has been superseded by ALSA due to a licensing change, but got opened back in 2007.
http://www.opensound.com/ || ossAUR

Sound servers

  • JACK Audio Connection Kit — Sound server for pro audio use, especially for low-latency applications including recording, effects, realtime synthesis, and many others.
https://jackaudio.org/ || jackAUR, jack2
  • Network Audio System — An open-source, network-transparent, client–server audio transport system.
https://www.radscan.com/nas/nas-links.html || nasAUR
  • PipeWire — Multimedia framework intended as a replacement for both PulseAudio and JACK, supports containers like Flatpak.
https://pipewire.org/ || pipewire
  • PulseAudio — General purpose sound system intended for out-of-the-box audio, multiple simultaneous inputs, can handle complex setups; is network-capable.
https://www.freedesktop.org/wiki/Software/PulseAudio/ || pulseaudio