Bedeutender Projektrelease , der eine Multimedia-Server der neuen Generation entwickelt, der PulseAudio ersetzen soll. PipeWire erweitert die Möglichkeiten von PulseAudio mit Funktionen zur Verarbeitung von Video-Streams, der Fähigkeit zur latenzarmen Audioverarbeitung und einem neuen Sicherheitsmodell zur Verwaltung des Zugriffs auf Geräte- und Stream-Ebene. Das Projekt wird von GNOME unterstützt und wird bereits aktiv in Fedora Linux für die Bildschirmaufnahme (Screencasting) und zum Teilen von Bildschirmen in Wayland-basierten Umgebungen verwendet. Der Code des Projekts ist in C geschrieben und unter der LGPLv2.1-lizenz.
Haupt in PipeWire 0.3:
- Der Scheduler für die Stream-Verarbeitung wurde vollständig überarbeitet. Die Änderungen ermöglichen die Ausführung einer Schicht zur Gewährleistung der Kompatibilität mit dem Audioserver JACK, dessen Leistung mit JACK2 vergleichbar ist.
- Überarbeitet und für stabil erklärt . Weitere Änderungen an der API werden geplant, ohne die Rückwärtskompatibilität mit bestehenden Anwendungen zu beeinträchtigen.
- Ein Sitzungsmanager wurde integriert, der die Verwaltung des Graphen der Multimedia-Knoten in PipeWire ermöglicht und das Hinzufügen neuer Streams erleichtert. Der Manager bietet derzeit nur einen einfachen Satz grundlegender Funktionen und wird in Zukunft erweitert oder durch eine funktionellere und flexiblere Variante ersetzt, wie z.B. .
- Die in der Bibliothek enthaltenen Komponenten wurden verbessert, um die Kompatibilität mit PulseAudio, JACK und ALSA zu gewährleisten, was die Nutzung von PipeWire mit bestehenden Anwendungen, die für andere Audiosysteme entwickelt wurden, ermöglicht. Die Bibliothek für ALSA ist bereits fast bereit, während die Bibliotheken für JACK und PulseAudio noch überarbeitet werden müssen. PipeWire ist derzeit noch nicht bereit, PulseAudio und JACK vollständig zu ersetzen, aber zukünftige Versionen werden sich vor allem mit Fragen der Kompatibilität befassen.
- Einige GStreamer-Plugins zur Interaktion mit PipeWire wurden integriert. Das Plugin pipewiresrc, das PipeWire als Audioquelle verwendet, funktioniert in den meisten Situationen einwandfrei. Das Plugin pipewiresink für die Audioausgabe über PipeWire hat noch einige bekannte Probleme.
- Die Unterstützung von PipeWire 0.3 in den Fenstermanager Mutter, das von GNOME entwickelt wird, integriert.
PipeWire erweitert die Anwendungen von PulseAudio, indem es alle Arten von Multimedia-Streams verarbeitet und in der Lage ist, Streams mit Video zu mischen und weiterzuleiten. PipeWire bietet auch Funktionen zur Verwaltung von Videoquellen wie Videoaufnahmegeräte, Webcams oder von Anwendungen ausgegebenen Bildschirm-Inhalten. Beispielsweise ermöglicht PipeWire die gleichzeitige Nutzung mehrerer Anwendungen mit einer Webcam und löst Probleme mit dem sicheren Capturing von Bildschirm-Inhalten sowie dem Remote-Zugriff auf den Bildschirm in einer Wayland-Umgebung.
PipeWire kann auch als Audioserver fungieren, der minimale Latenzen gewährleistet und Funktionalität bietet, die die Bedürfnisse professioneller Audioverarbeitung berücksichtigt, die PulseAudio nicht erfüllen konnte. Darüber hinaus bietet PipeWire ein erweitertes Sicherheitsmodell, das den Zugriff auf Geräte- und Stream-Ebene verwaltet und die Organisation der Audio- und Video-Durchleitung zwischen isolierten Containern vereinfacht. Eines der Hauptziele ist die Unterstützung von autarken Anwendungen im Flatpak-Format und die Arbeit in einem grafischen Stack auf Basis von Wayland. und Unterstützung für Plugins im
:
- Erfassung und Wiedergabe von Audio und Video mit minimalen Latenzen;
- Werkzeuge für die Echtzeitverarbeitung von Video und Audio;
- Multiprozessor-Architektur, die den gemeinsamen Zugriff auf Inhalte mehrerer Anwendungen ermöglicht;
- Modell zur Verarbeitung multimediabasierten Knotengraphen mit Unterstützung für Feedback-Schleifen und atomare Graphaktualisierungen. Verbindungsoptionen für sowohl interne Server- als auch externe Plugin-Handler sind verfügbar;
- Effiziente Zugriffsoberfläche für Videostreams über die Übertragung von Dateideskriptoren und Zugriff auf Audio über gemeinsam genutzte Ringpuffer;
- Fähigkeit zur Verarbeitung von Mediendaten aus beliebigen Prozessen;
- Verfügbarkeit eines GStreamer-Plugins zur Vereinfachung der Integration mit bestehenden Anwendungen;
- Unterstützung von isolierten Umgebungen und Flatpak;
- (Simple Plugin API) Format und die Möglichkeit, Plugins zu erstellen, die im Echtzeitbetrieb arbeiten; Eine bedeutende Veröffentlichung des PipeWire-Projekts 0.3.0 wurde veröffentlicht, das einen Multimedia-Server der neuen Generation entwickelt, der PulseAudio ersetzen soll. PipeWire erweitert die Möglichkeiten von PulseAudio mit Funktionen zur Verarbeitung von Video-Streams, der Fähigkeit zur latenzarmen Audioverarbeitung und einem neuen Sicherheitsmodell zur Verwaltung des Zugriffs auf Geräte- und Stream-Ebene. Das Projekt wird von GNOME unterstützt und wird bereits aktiv in Fedora Linux
- Flexible Systeme zur Abstimmung der verwendeten Multimediaformate und Pufferzuweisung;
- Einsatz eines einzigen Hintergrundprozesses zur Routen von Audio und Video. Möglichkeit, als Audio-Server zu agieren, Hub für die Bereitstellung von Videoanwendungen (zum Beispiel für die gnome-shell screencast API) und Server zur Verwaltung des Zugriffs auf Hardware-Geräte zur Videoaufnahme.
Quelle: opennet.ru
