významné vydanie projektu , vyvíjajúci multimediálny server novej generácie, ktorý nahrádza PulseAudio. PipeWire rozširuje možnosti PulseAudio prostriedkami na prácu s video tokmi, možnosťou spracovania zvuku s minimálnymi oneskoreniami a novým modelom zabezpečenia na správu prístupu na úrovni jednotlivých zariadení a tokov. Projekt je podporovaný v GNOME a už sa aktívne používa v Fedora Linux na nahrávanie obsahu obrazovky (screencasting) a zdieľanie obrazovky v prostrediach založených na Wayland. Kód projektu je napísaný v jazyku C a is licensed under LGPLv2.1.
Hlavné v PipeWire 0.3:
- Celkom prepracovaný plánovač spracovania tokov. Zmeny umožnili dosiahnuť možnosť spustenia vrstvy na zabezpečenie kompatibility so zvukovým serverom JACK, ktorého výkon je porovnateľný s JACK2.
- Prepracovaný a vyhlásený za stabilný . Všetky ďalšie zmeny v API sa plánujú vykonávať bez narušenia spätnej kompatibility so existujúcimi aplikáciami.
- Do súboru bol pridaný správca relácií, ktorý umožňuje spravovať graf multimediálnych uzlov v PipeWire, ako aj pridávať nové toky. Zatiaľ správca poskytuje iba najzákladnejší súbor funkcií a v budúcnosti bude rozšírený alebo nahradený funkčnejšou a flexibilnejšou verziou, ako je .
- Vylepšené vstavané knižnice na zabezpečenie kompatibility s PulseAudio, JACK a ALSA, ktoré umožňujú používať PipeWire s existujúcimi aplikáciami navrhnutými na prácu s inými zvukovými systémami. Knižnica pre ALSA je už takmer pripravená, ale knižnice pre JACK a PulseAudio si ešte vyžadujú úpravy. PipeWire zatiaľ nie je pripravený na úplné nahradenie PulseAudio a JACK, ale v nasledujúcich vydaniach sa otázkam kompatibility bude venovať priorita.
- Do súboru boli pridané niektoré pluginy GStreamer na interakciu s PipeWire. Plugin pipewiresrc, ktorý používa PipeWire ako zdroj zvuku, vo väčšine situácií funguje bez problémov. Plugin pipewiresink na výstup zvuku cez PipeWire zatiaľ nie je bez niektorých známych problémov.
- Podpora PipeWire 0.3 do správcu okien Mutter vyvíjaného projektom GNOME.
Pripomíname, že PipeWire rozširuje oblasť použitia PulseAudio spracovaním akýchkoľvek multimediálnych prúdov a je schopný miešať a presmerovávať prúdy aj s videom. PipeWire tiež poskytuje možnosti na správu video zdrojov, ako sú zariadenia na zachytávanie videa, webkamery alebo obsah zobrazený aplikáciami na obrazovke. Napríklad, PipeWire umožňuje organizovať spoluprácu viacerých aplikácií s webkamerou a rieši problémy so zabezpečeným zachytením obsahu obrazovky a vzdialeným prístupom k obrazovke v prostredí Wayland.
PipeWire tiež môže fungovať ako zvukový server, ktorý poskytuje minimálne oneskorenia a ponúka funkčnosť kombinujúcu možnosti a , vrátane požiadaviek systémov profesionálneho spracovania zvuku, o ktoré nemohol PulseAudio žiadať. Okrem toho PipeWire ponúka rozšírený model zabezpečenia, ktorý umožňuje spravovať prístup na úrovni jednotlivých zariadení a konkrétnych streamov, a zjednodušuje organizáciu preposielania zvuku a videa z izolovaných kontajnerov a do nich. Jedným z hlavných cieľov je podpora samostatných aplikácií vo formáte Flatpak a práca v grafickom stacku založenom na Waylande.
:
- Zachytávanie a prehrávanie zvuku a videa s minimálnymi oneskoreniami;
- Nástroje na spracovanie videa a zvuku v reálnom čase;
- Viacprocesorová architektúra, ktorá umožňuje spoločný prístup k obsahu viacerých aplikácií;
- Model spracovania založený na grafoch mediálnych uzlov s podporou slučiek spätnej väzby a atómových aktualizácií grafu. Umožňuje pripojenie spracovateľov ako v rámci servera, tak aj externých pluginov;
- Efektívne rozhranie na prístup k video streamom cez prenos súborových deskriptorov a prístup k zvuku cez zdieľané kruhové buffery (shared ringbuffer);
- Možnosť spracovania mediálnych dát z akýchkoľvek procesov;
- Existencia pluginu pre GStreamer na zjednodušenie integrácie s existujúcimi aplikáciami;
- Podpora izolovaných prostredí a Flatpak;
- Podpora pluginov vo formáte (Simple Plugin API) a možnosť vytvárať pluginy, ktoré pracujú v režime tvrdého reálneho času;
- Flexibilný systém koordinácie použitých mediálnych formátov a prideľovania bufferov;
- Použitie jedného pozadia procesu na smerovanie zvuku a videa. Možnosť práce vo forme zvukového servera, hubu na poskytovanie videa aplikáciám (napr. pre gnome-shell screencast API) a servera na správu prístupu k hardvérovým zariadeniam zachytávajúcim video.
Zdroj: opennet.ru
