Vydání multimediálního serveru PipeWire 1.2.0

Po sedmi měsících vývoje byla vytvořena nová stabilní verze multimediálního serveru PipeWire 1.2.0, který nahrazuje zvukový server PulseAudio a vyznačuje se přidáním prostředků pro práci s video streamy, možností zpracování zvuku s minimálními latencemi a novým bezpečnostním modelem pro řízení přístupu na úrovni jednotlivých zařízení a streamů. Projekt je podporován v GNOME a standardně se používá v distribucích Fedora Linux, RHEL, Ubuntu, Debian, SUSE/openSUSE a mnoha dalších distribucích Linuxu. Kód projektu je napsán v jazyce C a je distribuován pod licencí LGPLv2.1.

PipeWire je postaven na vícetransakční architektuře, která umožňuje sdílený přístup k obsahu několika aplikací.
Nabízí možnosti pro zpracování jakýchkoli multimediálních streamů, míchání a přesměrování video streamů, stejně jako řízení video zdrojů, jako jsou zařízení pro zachytávání videa, webkamery nebo obsah obrazovky generovaný aplikacemi. Například PipeWire umožňuje spolupráci několika aplikací s webkamerou a řeší problémy s bezpečným zachycováním obsahu obrazovky a vzdáleným přístupem k obrazovce v prostředí Wayland.

Při použití jako zvukový server může PipeWire zajistit minimální latence a poskytnout funkčnost kombinující možnosti PulseAudio a JACK, včetně vyladění požadavků systémů profesionálního zpracování zvuku, na kterou PulseAudio nemohl dosáhnout. Kromě toho PipeWire nabízí rozšířený bezpečnostní model, který umožňuje řízení přístupu na úrovni jednotlivých zařízení a konkrétních streamů, což usnadňuje organizaci přesměrování zvuku a videa z izolovaných kontejnerů a do nich. Jedním z hlavních cílů je podpora samostatných aplikací ve formátu Flatpak a práce v grafickém stacku založeném na Waylandu.

V nové verzi:

  • Do modelu zpracování streamů dat na základě grafu uzlů byla přidána podpora asynchronního zpracování, při kterém graf uzlů není blokován při nedostatku výstupu z určitého uzlu, a pokračuje v práci s daty z uzlu obdrženými při předchozím cyklu. Tímto způsobem, za cenu latence jedním cyklem, dochází k vyhnutí se situaci, kdy jeden uzel blokuje práci ostatních uzlů v grafu.
  • Byla realizována koncepce skupin synchronizovaných uzlů (node.sync-group), která umožňuje vytvářet skupiny uzlů, aktivované plánovačem současně. Tato funkce může být využita pro současné plánování aktivace uzlů při spuštění transportu JACK.
  • Vylepšeno zobrazování informací o chybách v konfiguračním souboru, přidáno zmínění místa, kde došlo k chybě v nastavení (číslo řádku a pozice v řádku).
  • Byla přidána podpora technologie Explicit Sync, která umožňuje aplikacím informovat kompozitní správce na základě protokolu Wayland o připravenosti výstupu snímku na obrazovku, což umožňuje snížení latence a odstranění artefaktů při zobrazení grafiky. Konkrétně Explicit Sync řeší problémy s narušováním výstupu a zasekáváním na systémech s GPU NVIDIA a aktivovanou podporou Wayland.
  • Byla zavedena možnost určování povinných metadat při dohodě parametrů vyrovnávací paměti, které se používají k zajištění podpory „Explicit Sync“.
  • Byla přidána podpora pro vytváření a používání více smyček zpracování dat (data-loop) v klientu a serveru. Smyčky zpracování dat nyní zahrnují možnosti pro přiřazení k určitým jader CPU a nastavení priorit.
  • Byla poskytnuta možnost změny úrovní ladění, které řídí výstup informací do protokolu, bez nutnosti restartovat, pomocí metadat.
  • Byla přepracována logika propojení peerů (uzlů v grafu toků dat, které určují externí zdroje nebo přijímače dat).
  • Byly přijaty patche pro zpracování zařízení označených jako konfliktní prostřednictvím ALSA UCM (Use Case Manager).
  • Byl přidán modul snapcast-discover pro streamování obsahu v servery SnapCast.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster