Az Ubuntu 22.10 kiadásának fejlesztéséhez használt tárolóban alapértelmezés szerint a PipeWire multimédiás szerverre váltottak a hangfeldolgozáshoz. A PulseAudio-val kapcsolatos csomagokat eltávolították a desktop és desktop-minimal készletekből, és a PulseAudio-val való interakcióhoz szükséges könyvtárak helyett a PipeWire fölött működő pipewire-pulse réteg került bevezetésre, amely lehetővé teszi, hogy a meglévő PulseAudio kliensek folytathassák a működést.
A PipeWire teljes körű használatára vonatkozó döntést Heather Ellsworth, a Canonical munkatársa erősítette meg az Ubuntu 22.10-ben. Megjegyezték, hogy az Ubuntu 22.02-es kiadásban mindkettő használatban volt. a szerver — A PipeWire-t videofeldolgozásra használták screencast felvételeknél és a képernyő megosztásánál, de a hang továbbra is PulseAudio segítségével lett feldolgozva. Az Ubuntu 22.10-ben csak a PipeWire marad. Két évvel ezelőtt hasonló változást vezettek be a Fedora 34 disztribúcióban, ami lehetővé tette a professzionális hangfeldolgozás lehetőségeit, megszüntette a fragmentációt és egységesítette a hanginfrastruktúrát a különböző alkalmazások számára.
A PipeWire kiterjesztett biztonsági modellt kínál, amely lehetővé teszi az eszközök és konkrét áramlások szintjén történő hozzáférés kezelését, és leegyszerűsíti a hang és videó továbbításának megszervezését elszigetelt konténerekből és azokba. A PipeWire bármilyen multimédiás áramlatot képes kezelni, és nemcsak a hangáramlatokat, hanem a videóáramlatokat is képes keverni és átirányítani, valamint kezelni a videóforrásokat (videofogó eszközök, webkamerák vagy a programok által megjelenített képernyőtartalom). A PipeWire emellett hangkiszolgálóként is működhet, amely minimális késleltetést biztosít, és ötvözi a PulseAudio és a JACK funkcióit, figyelembe véve a professzionális hangfeldolgozás igényeit, amelyet a PulseAudio nem tudott teljesíteni.
Főbb funkciók:
- Hang- és videofolyamok rögzítése és lejátszása minimális késleltetéssel;
- Valós idejű video- és hangfeldolgozó eszközök;
- Többprocesszor-architektúra, amely lehetővé teszi több alkalmazás közötti tartalommegosztást;
- Multimédiás csomópontok gráf alapú feldolgozási modell, támogatva a visszacsatoló ciklusokat és a gráf atomikus frissítéseit. Kezelők csatlakoztatása megengedett a kiszolgálón belül és külső pluginek által is;
- Hatékony interfész a videofolyamokhoz való hozzáféréshez fájl-kezdeményezők átvitelén keresztül, és hozzáférés a hanghoz osszaközösített gyűrűs puffereken (shared ringbuffer);
- Bármely folyamatból származó multimédiás adatok feldolgozásának lehetősége;
- A GStreamerhez készült plugin jelenléte, amely megkönnyíti a meglévő alkalmazásokkal való integrációt;
- Izolált környezetek és Flatpak támogatása;
- SPA (Simple Plugin API) formátumú pluginek támogatása és a valós idejű működésű pluginek készítésének lehetősége;
- Rugalmas rendszer a használt multimédiás formátumok egyeztetésére és a pufferek kiosztására;
- Egy háttérfolyamat használata a hang és videó irányításához. Lehetőség hangkiszolgálóként, hubként a videóalkalmazások számára (például a gnome-shell screencast API számára), és a videofogó hardverekhez való hozzáférés kezelésére szolgáló szerverként működni.
Forrás: opennet.ru
