PipeWire
{{Short description|Media processing server for Linux}}
{{Infobox software
| name = PipeWire
| logo = Pipewire logo.svg
| logo_size = 250px
| screenshot = File:PipeWire 1.4.1 details screenshot, under EndeavourOS.png
| screenshot_alt = Screenshot showing information of audio server as reported by PulseAudio Control (pactl) software, PipeWire is using PulseAudio as its audio server and the library version information for PipeWire 1.2.7
| caption = Screenshot of pactl
showing information about PipeWire configuration in a system and version information
| author = Wim Taymans
| repo = {{URL|https://gitlab.freedesktop.org/pipewire/pipewire}}
| programming language = C
| operating system = Linux, FreeBSD
| license = MIT License
| website = {{URL|https://pipewire.org}}
| released = {{Start date and age|2017|06|20|df=yes/no}}
| latest release version = {{LSR/wikidata}}
}}
PipeWire is a server for handling audio, video streams, and hardware on Linux.{{Cite web|last=Schaller|first=Christian|date=2017-09-19|title=Launching Pipewire!|url=https://blogs.gnome.org/uraeus/2017/09/19/launching-pipewire/|access-date=2019-06-29|website=Christian F.K. Schaller}}{{Cite web|url=https://fedoramagazine.org/improved-multimedia-support-pipewire-fedora-27/|title=Improved multimedia support with Pipewire in Fedora 27|last=Lerch|first=Ryan|date=2017-09-20|website=Fedora Magazine|access-date=2019-07-05}}{{Cite web|url=https://www.omgubuntu.co.uk/2017/09/pipewire-will-video-pulseaudio-sound|title=PipeWire aims to do for video what PulseAudio did for sound|last=Sneddon|first=Joey|date=2017-09-21|website=OMG! Ubuntu!|access-date=2019-07-05}} It was created by Wim Taymans at Red Hat.{{Cite web|url=https://blogs.gnome.org/uraeus/2015/06/30/introducing-pulse-video/|title=Fedora Workstation next steps : Introducing Pinos|last=Schaller|first=Christian|date=2015-06-30|website=Christian F.K. Schaller|access-date=2019-06-29}}{{cite web|title=PipeWire: a low-level multimedia subsystem|series=Proceedings of the 18th Linux Audio Conference (LAC-20)|publisher=SCRIME, University of Bordeaux|date=November 25–27, 2020|url=https://lac2020.sciencesconf.org/307881/document|author=Waymans, Tim}} It handles multimedia routing and pipeline processing.{{Cite web|url=https://arunraghavan.net/2018/10/update-from-the-pipewire-hackfest/|title=Update from the PipeWire hackfest|last=Raghavan|first=Arun|date=2018-10-31|website=Arun Raghavan|access-date=2019-06-30}}
History
In 2015, Taymans started work on PipeWire. It was based on ideas from several existing projects, including one called PulseVideo by William Manley.{{Cite web|date=2021-05-14|title=PipeWire: the new audio and video daemon in Fedora Linux 34|url=https://fedoramagazine.org/pipewire-the-new-audio-and-video-daemon-in-fedora-linux-34/|access-date=2021-10-16|website=Fedora Magazine|language=en-US}}{{Citation|last=Manley|first=William|title=PulseVideo|date=2021-09-14|url=https://github.com/wmanley/pulsevideo|access-date=2021-10-16}}{{Cite web|url=https://blogs.gnome.org/uraeus/2015/06/30/introducing-pulse-video/#comment-6514|title=Comment on: How is this project related to PulseVideo?|last=Schaller|first=Christian|date=2015-07-01|website=Christian F.K. Schaller|access-date=2019-06-29}}{{Cite web|url=https://lwn.net/Articles/661401/|title=3D video and device mediation with GStreamer|last=Willis|first=Nathan|date=2015-10-21|website=LWN.new|access-date=2019-06-29}}{{Excessive citations inline|date=February 2025}} 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 of the project was to improve handling of video on Linux in the same way that 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 the city Pinos de Alhaurin in Spain, where Taymans used to live.
Initially, Pinos only handled video streams. By early 2017, Taymans had started working on integrating audio streams. Taymans wanted to support both consumer and professional audio use cases, and consulted Paul Davis (JACK developer) and Robin Gareus (Ardour developer) for advice on implementation for professional audio. At this time, the name "PipeWire" was adopted for the project.
In November 2018, PipeWire was re-licensed from the LGPL to the MIT License.{{Cite web|last=Larabel|first=Michael|date=2019-02-03|title=PipeWire Should Be One Of The Exciting Linux Desktop Technologies For 2019|url=https://www.phoronix.com/scan.php?page=news_item&px=PipeWire-2019-Looking-Good|access-date=2019-07-05|website=Phoronix}}{{Cite web|url=https://github.com/PipeWire/pipewire/commit/85f2e93c546816a5cbb218c271aa18210bd9b64a|title=Relicense as MIT/X11|last=|first=|date=2018-11-05|website=PipeWire Git repository in GitHub|archive-url=|archive-date=|access-date=2019-10-26}}
In April 2021, Fedora Linux 34 became the first Linux distribution to ship PipeWire for audio by default.{{Cite web|title=Releases/34/ChangeSet - Fedora Project Wiki|url=https://fedoraproject.org/wiki/Releases/34/ChangeSet#Route_all_Audio_to_PipeWire|access-date=2021-05-04|website=fedoraproject.org}}{{Cite web|date=2021-04-27|title=What's new in Fedora Workstation 34|url=https://fedoramagazine.org/whats-new-fedora-34-workstation/|access-date=2021-05-04|website=Fedora Magazine|language=en-US}}{{Cite web|date=2021-04-04|title=What's New in Fedora 34? 8 Reasons to Upgrade or Switch|url=https://www.makeuseof.com/whats-new-in-fedora-34/|access-date=2021-05-04|website=MUO|language=en-US}} A year later, Pop! OS adopted it as the default audio server in version 22.04.{{Cite web |last=Nestor |first=Marius |date=2022-04-25 |title=Pop!_OS 22.04 Launches Based on Ubuntu 22.04 LTS, Powered by Linux 5.16 and PipeWire |url=https://9to5linux.com/pop_os-22-04-launches-based-on-ubuntu-22-04-lts-powered-by-linux-5-16-and-pipewire |access-date=2022-09-23 |website=9to5Linux |language=en-US}} It was made the default audio server in Ubuntu beginning with version 22.10.{{Cite web |last=Sneddon |first=Joey |date=2022-05-22 |title=Ubuntu 22.10 Makes PipeWire Default for Audio |url=https://www.omgubuntu.co.uk/2022/05/ubuntu-22-10-makes-pipewire-default |access-date=2022-09-23 |website=OMG! Ubuntu! |language=en-GB}} In 2023, it was adopted as the default audio server for the GNOME desktop environment in Debian 12 Bookworm.{{Cite web |last=Larabel |first=Michael |date=2022-10-01 |title=Debian 12 Switches To PipeWire & WirePlumber By Default With The GNOME Desktop |url=https://www.phoronix.com/news/Debian-12-PipeWire |website=Phronix |language=en-US |access-date=2023-06-14}}
Features
The project aims include:
- To work with sandboxed Flatpak applications.{{Cite web|last=Kaskinen|first=Tanu|date=2018-11-12|title=PipeWire Hackfest 2018 in Edinburgh|url=https://tanukaskinen.wordpress.com/2018/11/12/pipewire-hackfest-2018-in-edinburgh/|access-date=2019-07-05|website=Tanu's Blog}}
- To provide secure methods for screenshotting and screencasting on Wayland compositors.{{Cite web|last=Schaller|first=Christian|date=2018-01-26|title=An update on Pipewire – the multimedia revolution|url=https://blogs.gnome.org/uraeus/2018/01/26/an-update-on-pipewire-the-multimedia-revolution-an-update/|access-date=2019-06-29|website=Christian F.K. Schaller}}
- To unify handling of cases managed by JACK and PulseAudio.{{Cite web|last=Larabel|first=Michael|date=2018-10-30|title=PipeWire Is Still On Track For One Day Being A Drop-In Replacement To PulseAudio|url=https://www.phoronix.com/scan.php?page=news_item&px=PipeWire-2018-PulseAudio-JACK|access-date=2019-07-05|website=Phoronix}}
References
{{reflist}}