Fedora-utvecklarna meddelade nyligen att en större förändring är planerad för nästa version av Fedora 34, där alla ljudströmmar från PulseAudio- och JACK-ljudservrarna byts till PipeWire.
Med PipeWire kan du erbjuda professionella ljudbehandlingsfunktioner i en typisk desktop publishing-miljö, eliminera fragmentering och förena din ljudinfrastruktur för olika applikationer.
För närvarande använder Fedora Workstation bakgrundsprocessen PulseAudio för ljudbehandling, och applikationer använder klientbiblioteket för att interagera med denna process, mixa och hantera ljudströmmar. Professionell ljudbehandling använder JACK-ljudservern och dess tillhörande klientbibliotek.
Istället för PulseAudio och JACK föreslås det att man använder nästa generations PipeWire-medieserver med ett interoperabilitetslager som kommer att hålla alla befintliga PulseAudio- och JACK-klienter och applikationer som levereras i Flatpak-format igång.
För äldre kunder som använder ALSA API på låg nivå kommer ett ALSA-plugin att installeras som dirigerar ljudströmmar direkt till PipeWire. Alla PulseAudio- och JACK-baserade applikationer kommer att kunna köras på PipeWire utan att PulseAudio och JACK behöver installeras.
Detta förslag är att ersätta PulseAudio-demon med en funktionell kompatibel PipeWire-baserad implementering. Detta innebär att alla befintliga klienter som använder PulseAudio Client Library fortsätter att arbeta som tidigare, liksom applikationer som levereras som Flatpak.
Allt PRO-ljud hanteras av JACK-klientbiblioteket, som pratar med JACK-servern. Detta förslag installerar en JACK-klientbiblioteksersättning som talar direkt till PipeWire. Alla befintliga applikationer för PRO-ljuduttag fungerar sedan över PipeWire.
Som en påminnelse utökar PipeWire PulseAudios möjligheter med videostreaming, ljudbehandling med låg latens och en ny säkerhetsmodell för streaming och åtkomstkontroll av enheter.
PipeWire erbjuder även funktioner för att styra videokällor som videoinspelningsenheter, webbkameror eller skärminnehåll från program. Projektet är kompatibelt med GNOME och används redan flitigt på Fedora Linux för screencasting och skärmdelning i Wayland-baserade miljöer.
PipeWire kan också fungera som en ljudserver med låg latens med funktionalitet som kombinerar PulseAudio och JACKs funktioner, även för behoven hos professionella ljudbehandlingssystem som PulseAudio inte kunde göra anspråk på.
Dessutom erbjuder PipeWire en förbättrad säkerhetsmodell som möjliggör enhetsspecifik och flödesspecifik åtkomstkontroll och underlättar ljud- och videorouting till och från isolerade containrar.
Nyckelfunktioner:
- Fånga och spela upp ljud och video med minimal fördröjning.
- Verktyg för video- och ljudbehandling i realtid.
- En arkitektur med flera trådar som gör att innehåll kan delas mellan flera applikationer. Hantering och bearbetning av multimedia-grafik sker i olika processer.
- En grafbaserad behandlingsmodell för multimedia-noder med stöd för återkopplingsslingor och uppdateringar av atomdiagram.
- Det är tillåtet att ansluta drivrutiner både på servern och externa plugins.
- Effektivt gränssnitt för åtkomst till videoströmmar genom överföring av filbeskrivare och åtkomst till ljud via delade buffertar.
- Möjligheten att bearbeta multimedia-data från vilken process som helst.
- Förekomsten av ett plugin för GStreamer för att förenkla integrationen med befintliga applikationer.
- Stöd för sandlåda och Flatpak-miljöer.
- Stöd för plugins i SPA-format (Simple Plugin API) och möjligheten att skapa plugins som fungerar i realtid.
- Flexibelt system för att samordna de multimediaformat som används och fördela buffertar.
Använda en enda bakgrundsprocess för att dirigera ljud och video. Möjlighet att arbeta som en ljudserver, ett nav för att tillhandahålla video till applikationer (till exempel för gnome-shell screencast API) och en server för att kontrollera åtkomst till hårdvaruvideoinspelningsenheter.
Slutligen har förändringen ännu inte granskats av Fedora Engineering Steering Committee (FESCo), som ansvarar för den tekniska utvecklingen av Fedora-distributionen.
Källa: https://www.mail-archive.com