HOME

TheInfoList



OR:

PipeWire is a server for handling audio, video
streams A stream is a continuous body of water, body of surface water Current (stream), flowing within the stream bed, bed and bank (geography), banks of a channel (geography), channel. Depending on its location or certain characteristics, a stream ...
, and hardware on Linux. It was created by Wim Taymans at
Red Hat Red Hat, Inc. is an American software company that provides open source software products to enterprises. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North Carolina, with other offices worldwide. Red Hat has become ass ...
. It handles multimedia routing and pipeline processing.


History

In 2015, Taymans started work on PipeWire. It was based on ideas from a couple of projects, including one called PulseVideo by William Manley. According to Red Hat's Christian Schaller, it drew many of its ideas from an early PulseVideo prototype by Manley and builds upon some of the code that was merged into GStreamer due to that effort. A goal was to improve handling of video on Linux the same way PulseAudio improved handling of audio. Although a separate project from PulseAudio, Taymans initially considered using the name "PulseVideo" for the new project. By June 2015, the name Pinos was being used after a city where Taymans used to live, Pinos de Alhaurin in Spain. Initially, Pinos only handled video streams. By early 2017, Taymans had started working on integrating audio streams. He wanted the project to support both consumer and professional audio use cases. For advice on professional audio implementation he consulted Paul Davis and Robin Gareus. At this time the name PipeWire was adopted for the project. In November 2018, PipeWire was re-licensed from the
LGPL The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
to the MIT License. In April 2021, Fedora Linux 34 became the first Linux distribution to ship PipeWire for audio by default. A year later, Pop! OS adopted it as the default audio server in version 22.04. It was made the default audio server in Ubuntu beginning with version 22.10.


Features

The project aims include: * To work with
sandboxed In computer security, a sandbox is a security mechanism for separating running programs, usually in an effort to mitigate system failures and/or software Vulnerability (computing), vulnerabilities from spreading. The isolation metaphor is taken ...
Flatpak applications. * To provide secure methods for screenshotting and
screencasting A screencast is a digital recording of computer screen output, also known as a video screen capture or a screen recording, often containing audio narration. The term ''screencast'' compares with the related term '' screenshot''; whereas screensh ...
on
Wayland compositors Wayland may refer to: Computers * Wayland (display server protocol), a graphical display system for Unix-like computers Fiction * Jace Wayland, a character in the ''Mortal Instruments'' book series * Wayland (''Star Wars''), a planet in the ''S ...
. * To unify handling of cases managed by JACK and PulseAudio.


Reception

PipeWire has received much praise, especially among the
GNOME A gnome is a mythological creature and diminutive spirit in Renaissance magic and alchemy, first introduced by Paracelsus in the 16th century and later adopted by more recent authors including those of modern fantasy literature. Its characte ...
and Arch Linux communities. Particularly as it fixes problems that some PulseAudio users had experienced, including high CPU usage, Bluetooth connection issues, and JACK backend issues.


References


External links

* {{Official website, https://pipewire.org/
Presentation of Pinos by Wim Taymans

The PipeWire multimedia framework and its potential in AGL
(PDF)
PulseVideo

PipeWire: A Low-Level multimedia subsystem (PDF)
Audio software for Linux Video software for Linux