Hlavní navigace

PipeWire: nástupce PulseAudio se postará i o video

Autor: PipeWire
David Ježek

Projektem PulseAudio si před lety Lennart Poettering rozezlil nemalou část linuxového světa a přes 13 let vývoje není PulseAudio hotové. Lidé z Red Hatu už připravují nástupce, který se vedle audia postará i o video.

PulseAudio + „PulseVideo“ ⇒ PipeWire

Projekt nese název PipeWire a je reakcí na velké změny, kterými linuxový desktop, resp. multimediální použití Linuxu v posledních letech prochází. Hlavními jmenovateli je zlepšení stavu v oblasti videa a vyřešení problémů, se kterými se potýkají jak PulseAudio, tak případně vrstvy starší, tedy ALSA apod. No a samozřejmě také skutečnost, že Red Hat v této oblasti chce solidně připravit svět na plné nasazení Waylandu v linuxovém světě (parafrázovat by se to dalo přirovnáním k systemd, které mnozí z duše nenávidí, lze se obejít i bez něj, ale to nic nemění na skutečnosti, že drtivá majorita linuxových distribucí na systemd přešla).

Za projektem PipeWire stojí spolutvůrce frameworku GStreamer Wim Taymans a další lidé. Jednou z motivací pro vznik byl i příchod balíčků Flatpak a z něho plynoucí potřeba pracovat s videem podobně jako PulseAudio pracuje s audiem – tedy oddělit jej od vlastního operačního systému další mezivrstvou. Wim Taymans si svoje ideje testoval právě na PulseAudio, jehož vývoje se v Red Hatu po určitou dobu účastní. Díky tomu dospěl k přesvědčení, že učinit PipeWire pouze vrstvou pracující s videem by bylo chybné, že je potřeba vše sjednotit a tedy de facto opustit „zvukový server“ PulseAudio jako samostatně pracující záležitost (což mimo jiné znamenalo konec dočasného názvu PulseVideo).

PipeWire je tedy společným multimediálním serverem, který mimo jiné usnadní v budoucnu spoustu práce staršímu dítku Wima Taymanse (a kolegů), tedy GStreameru. Mnohé prvky přebírá také ze zvukového systému JACK. Bude také sloužit jako místo, přes které budou na Waylandu ukládány screenshoty (na tom pracuje Jonas Ådahl) či záznamy videí plochy a provozovány protokoly pro vzdálenou plochu (tím není myšleno pouze zahrnutí podpory pro RDP či VNC, ale „propojovací základy“, na kterých bude moci stavět libovolný jiný protokol tohoto typu – Red Hat spolupracuje mj. s týmem kolem projektu SPICE). Také se pracuje na podpoře pro Chrome/Chromium a Firefox, takže budeme moci v budoucnu sdílet svoje desktopy skrze služby jako Blue Jeans.

Aktuální stav projektu PipeWire po několika letech vývoje pod různými staršími názvy je takový, že je zahrnut v linuxové distribuci Fedora Workstation 27 – tato verze s nejvyšší pravděpodobností vyjde ve finální podobě koncem října, už nyní lze samozřejmě zkoušet testovací buildy. Sluší se v tomto kontextu připomenout, že od Fedory 25 se používá jako výchozí zobrazovací server Wayland.

PipeWire ve vývojové verzi Fedora 27

PipeWire ve Fedoře 27 má ještě daleko nejen k dokonalosti, ale i ke stavu plně funkčnímu se všemi plánovanými vlastnostmi. Počáteční verze zde přítomná podporuje pouze video (audio je tedy stále svěřeno serveru PulseAudio) a bude se na ní testovat, jak tato kombinace šlape s Flatpaky a Waylandem. A jak Christian Schaller z Red Hatu dodává na svém blogu, jsou si dobře vědomi toho, jak byl v počátcích negativně přijímán příchod PulseAudio i s jeho porodními problémy, čehož se chtějí s PipeWire vyvarovat.

V případě zájmu o testování PipeWire je možné stáhnout Fedora Workstation 27 beta, případně nahlédnout na domovský web projektu PipeWire.org do rozpracované dokumentace. Zajímavé jsou zejména části týkající se JACK a PulseAudio. PipeWire má ambice býti schopno pracovat jako JACK server, u PulseAudio je uváděna například snaha udržet co nejnižší latence (10 ms max).

Budoucnost

PipeWire lze vnímat jako další důkaz toho, že Linuxový svět se mění. Nemění se samozřejmě pro ty, kteří jsou spokojeni s „dřívějšími zaběhlými pořádky“ (tedy například init, ALSA, X.Org apod.). Pro ostatní je tu systemd, PulseAudio, Wayland a výhledově PipeWire, případně pro menšinu server Mir. Red Hat už vícekrát v minulosti dokázal, že minimálně ve svém světě si nové projekty prosadí, důkazem toho je i výrazná změna desktopového prostředí GNOME mezi verzemi 2.x a 3.x. 

Pravděpodobněji lze spíše říci, že není otázkou zdali PipeWire nasadí i další linuxové distribuce, otázkou je pouze kdy se tak stane. Největší protiváha projektů Red Hatu, tedy Canonical s vlastním init systémem (Upstart), vlastním grafickým serverem (Mir) i vlastním desktopem (Unity) se v posledních měsících průběžně vrací k majoritnímu standardu linuxového světa, tedy systemd, Wayland a GNOME. Těžko předpokládat i s ohledem na dlouholeté nasazení PulseAudio v Ubuntu, že by PipeWire byl opomenut.

Našli jste v článku chybu?