PipeWire je bezplatná a open source aplikace vytvořená Wim Taymans který pracuje jako Principal Engineer ve společnosti Red Hat a je spolutvůrcem multimediálního rámce GStreamer.
Byl postaven od nuly se zvláštním zaměřením na podporu Wayland a Flatpak ve snaze modernizovat zpracování zvuku a videa. To zahrnuje podporu pro snímky obrazovky s jedním snímkem, snímání obrazovky, nahrávání z místní plochy na video a možná i nativní odesílání ploch Wayland do televizorů a monitorů!
Podle webových stránek projektu je jeho cílem
výrazně zlepšit zpracování zvuku a videa pod Linuxem. Jeho cílem je podporovat případy použití, které v současné době zpracovávají PulseAudio i Jack, a zároveň poskytovat stejnou úroveň výkonného zpracování vstupu a výstupu videa.
Zavádí také bezpečnostní model, který usnadňuje interakci se zvukovými a video zařízeními z kontejnerových aplikací, přičemž primárním cílem je podpora aplikací Flatpak. Očekáváme, že vedle Wayland a Flatpak bude PipeWire poskytovat základní stavební blok pro budoucí vývoj aplikací pro Linux.
Funkce v PipeWire
- FOSS:Zdarma ke stažení a použití se zdrojovým kódem dostupným na GitHubu.
- Skvělé přehrávání zvuku a videa s minimální latencí.
- Vícenásobné zpracování zvuku a videa v reálném čase.
- Víceprocesová architektura:aplikace mohou sdílet multimediální obsah.
- Podpora pluginů GSTreamer, která umožňuje rozsáhlou integraci aplikací.
- Podpora aplikací v izolovaném prostoru, např. Flatpak.
- Vynikající zachycení zvuku a videa.
V tomto příspěvku na blogu Christian vysvětluje, že PipeWire představuje model zabezpečení, který usnadňuje interakci mezi audio a video zařízeními z aplikací v sandboxu; a vzhledem k tomu, jak Flatpak a další modely kontejnerů přebírají trh, to vypadá jako oboustranně výhodná situace.
Instalace a dokumentace
V době psaní článku PipeWire není snadno k dispozici pro instalaci na většině distribucí, ale můžete to obejít tak, že vezmete jeho zdrojový kód z GitHubu a zkompilujete ze zdroje nebo nainstalujete některý z balíčků vytvořených pro Fedoru 27 a Fedora Rawhide.
Ke klonování repozitáře z GitHubu použijte níže uvedený kód:
$ git clone https://github.com/PipeWire/pipewire.git
Dále pomocí systému sestavení Meson zadejte následující příkazy:
$ ./autogen.sh --prefix=$PREFIX $ make $ make install
$PREFIX
je běžně nastaven na /usr
nebo /usr/local
.
Nyní otestujte server PipeWire ze zdrojového adresáře pomocí příkazu:
$ make run
Pokud chcete otestovat zachycení a zobrazení videa pomocí SDL ze zdrojového adresáře, použijte:
$ SPA_PLUGIN_DIR=build/spa/plugins PIPEWIRE_MODULE_DIR=build build/src/examples/export-sink
Můžete si pohrát i s ostatními příklady.
Pamatujte, že pokud nenastavíte správné proměnné prostředí, jak je uvedeno výše, pluginy a moduly nebudou nalezeny.
Podívejte se na sbírku užitečných stránek na PipeWire na jeho stránce wiki a jeho dokumentaci API zde.
Je zřejmé, že získání PipeWire vyžaduje docela potíže běží na vašem systému, ale dříve nebo později již instalace nebude problémem.
Pokud jste schopni pokračovat v instalaci, nezapomeňte se s námi podělit o své zkušenosti s používáním v sekci komentářů níže.