Skip to main content

Sound

For audio handling on Linux, PipeWire is the currently recommended framework.

PipeWire is a newserver low-leveland user space API that provides a platform to handle multimedia framework.pipelines. It aimsis toa offermodern, capture and playback for bothlow-latency audio and video server designed to work with minimalthe latencylatest audio use cases and supporthandle forprofessional PulseAudio,audio JACK, ALSAinterfaces and GStreamer-based applications.

ThePipeWire daemonwas basedcreated onas a replacement for both the frameworkPulseAudio cansound beserver configuredand the Jack Audio Connection Kit (JACK) server. It provides a unified interface for handling video and audio streams and is intended to be bothflexible anand extensible, allowing it to address not only audio serverbut (withother PulseAudiomultimedia tasks as well, such as video conferencing, screen capture, and JACKother features)multimedia applications. It can also work with different hardware devices, including webcams, microphones, and aprofessional videoaudio capture server.devices.

PipeWireAdditionally, alsoit supportsintegrates containersbetter likewith the security models of Flatpak and Wayland. It does notso relyvia sandboxing processes from one another, preventing an application from snooping on theother applications' audio andstreams. videoBefore userallowing groups.an Instead,application to record audio or sharing the screen(e.g. in a browser over WebRTC) it useswill aask Polkit-likethe security model, asking Flatpak or Waylanduser for permission to recorddo screenso.

PipeWire implements no connection logic internally, that is the responsibility of a program called a session manager. It watches for new streams and connects them to the appropriate output device or audio.application.

Additionally,There WirePlumberare istwo session managers to choose from:

    PipeWire Media Session: A very simple session manager that caters to some basic desktop use cases. It was mostly implemented for testing and as an example for building new session managers. WirePlumber: A more powerful manager and the current recommendation for a session manager.recommendation. It is based on a modular design, with Lua plugins that implement the actual management functionality.

    WirePlumber is the recommended choice, as it is better maintained, receives regular updates and is more feature-rich.

    pacman -S pipewire pipewire-pulse pipewire-jack pipewire-alsa wireplumber
    

    Installation

    The most basic PipeWire setup includes the following packages:

    NOTE: PipeWire handles Bluetooth audio devices if the pipewire-pulseaudio package is installed.

    The
    pacman package-S includespipewire pipewire-audio wireplumber
    

    Additional packages can be installed to extend PipeWire's compatibility and capabilities:

    Package Description pipewire-alsa Support for routing ALSA clients through PipwWire pipewire-jack Support for JACK clients pipewire-pulse Support for PulseAudio clients (recommended) pipewire-v4l2 Support for handling video devices, e.g. webcams, tuners, etc. pipewire-zeroconf Support for streaming audio over the /etc/pipewire/media-session.d/with-pulseaudionetwork, file,e.g. whosean existenceAirPlay promptsreceiver the media session daemon to enable the bluez5 module.