Generated by GPT-5-mini| PipeWire | |
|---|---|
![]() | |
| Name | PipeWire |
| Developer | Red Hat; contributors include Collabora, SUSE, Canonical, GNOME Project, KDE |
| Released | 2017 |
| Operating system | Linux |
| License | LGPL; MIT components |
PipeWire PipeWire is a multimedia server and routing framework designed for modern Linux audio and video handling, offering low-latency audio, professional routing, and unified handling of consumer and pro workflows. It aims to replace legacy stacks by bridging concepts from JACK, PulseAudio, and professional audio software while integrating with desktop environments such as GNOME and KDE. Major contributors include Red Hat, Collabora, SUSE, and vendors in the Linux ecosystem.
PipeWire provides a graph-based multimedia routing infrastructure that supports audio and video streams, device management, and policy control for both desktop and professional applications. It interoperates with technologies like ALSA, JACK, PulseAudio, Video4Linux, and GStreamer, enabling integration with applications such as Firefox, Chromium, OBS Studio, Ardour, and Audacity. Designed for low-latency audio similar to JACK and session management reminiscent of PulseAudio, PipeWire focuses on modern use cases including containerized multimedia for Docker and Flatpak sandboxed apps.
Development began in 2017 at Red Hat to address shortcomings in existing Linux multimedia stacks exposed by projects like GNOME and KDE and by pro-audio initiatives such as Ardour and Studio One. Early designs were informed by standards and projects including ALSA, JACK, PulseAudio, GStreamer, and the Linux kernel. Contributors from Collabora, SUSE, and independent developers refined the API, leading to integration efforts with distributions such as Fedora, Ubuntu, Debian, Arch Linux, openSUSE, and Manjaro. Over successive releases work addressed compatibility with applications including Firefox, Chromium, SDL2, and Steam.
PipeWire implements a modular daemon architecture combining a session manager, graph scheduler, and policy layer. Core components interoperate with kernel subsystems like ALSA and Video4Linux and with userspace frameworks such as GStreamer, JACK, and PulseAudio. The routing model uses nodes and ports to form a directed graph similar to concepts in JACK and GStreamer pipelines, enabling complex topologies for applications like Ardour, OBS Studio, and Qubes OS. Security and permissions rely on mechanisms inspired by SELinux and sandboxing systems used by Flatpak and Snapcraft.
PipeWire offers low-latency audio paths targeting professional workflows found in Ardour and JACK, multistream Bluetooth support compliant with Bluetooth SIG profiles, and video capture routing usable by OBS Studio, Firefox, and Chromium. It supports sample rate conversion, channel remixing, metadata handling for players like Rhythmbox and Clementine, and session management features familiar to PulseAudio users. PipeWire exposes APIs for language bindings used by projects such as GStreamer, Qt, GTK, Rust, and Python.
Adoption spans desktop distributions Fedora, Ubuntu, Debian, openSUSE, and Arch Linux, enterprise vendors like Red Hat and SUSE, and application communities around GNOME, KDE, OBS Studio, Ardour, Audacity, and Firefox. Use cases include professional audio production with routing complexity akin to JACK, video conferencing integration for Zoom and Microsoft Teams via WebRTC, Bluetooth audio for devices from Sony, Samsung, and Bose, and sandboxed multimedia for Flatpak and Snapcraft. Embedded and real-time systems in projects like AOSP derivatives and Yocto Project-based builds have evaluated PipeWire for unified media management.
Desktop integration is advanced for GNOME and KDE, where distribution maintainers configured PipeWire as the default audio and video server. Applications such as Firefox, Chromium, OBS Studio, LibreOffice, Zoom, and Microsoft Teams interact with PipeWire via compatibility layers or native support. Multimedia frameworks like GStreamer and toolkits including Qt and GTK provide plugins or backends to route streams through PipeWire, enabling features in environments like Ubuntu Desktop, Fedora Workstation, and KDE Plasma.
PipeWire incorporates permission controls to manage access for sandboxed apps distributed by Flatpak, Snapcraft, and distribution containers like Docker and Podman, drawing on concepts from SELinux and AppArmor. It exposes fine-grained policy rules to restrict camera and microphone access for applications such as Firefox, Chromium, Zoom, and Microsoft Teams. Integration with session and seat management from systemd and logind enables per-user and per-seat access control for hardware devices, aligning with security practices from Red Hat and Canonical.
Category:Multimedia software