FOSDEM: Linux-Soundserver Pipewire mit LC3-Codec

Nicht nur Bugfixing: In der Entwicklung von Pipewire rücken Videostreams wieder in den Mittelpunkt. Zudem gibt es mit Audio LE den neuen Bluetooth-Codec LC3.

In Pocket speichern vorlesen Druckansicht 18 Kommentare lesen

(Bild: FOSDEM/Collage)

Lesezeit: 4 Min.
Von
  • David Wolski

Zwei der Entwickler hinter Pipewire haben zur FOSDEM 2023 in verschiedenen Talks gezeigt, welche nächsten Schritte jetzt für den Soundserver und seinen angehängten Sessionmanager Wireplumber anstehen. Auf dem Linux-Desktop ist Pipewire die Überraschung der vergangenen Jahre, denn als Soundserver löst es viele Probleme der bisherigen Audiokomponenten: Geringere Latenzen als Pulseadio, die mit JACK konkurrieren können und ein ressourcenschonender Fußabdruck markieren eine qualitative Verbesserung, die vergleichsweise flott in den Linux-Distributionen ankamen. Fedora Linux 34 nahm Pipewire vor zwei Jahren als Ersatz für Pulseaudio auf, Arch Linux und Ubuntu folgten, nachdem die Vorteile evident waren.

Wim Taymans machte als Hauptentwickler in seinem Talk die unmittelbare Zukunft von Pipewire zum Thema. Taymans war zuvor schon mit dem Media-Framework Gstreamer beschäftigt und konzipierte Pipewire zunächst ab 2015 als Prozessor für Videostreams auf dem Linux-Desktop. Denn dort verlangte der Sprung auf Wayland zunächst unter Gnome eine Behandlung von Videodaten aus Wayland-Anwendungen, um Screensharing und Videomitschnitte möglich zu machen. Aus dem Vorhaben wurde ein eigenständiger Soundserver als Drop-In-Ersatz für Pulseaudio. Nachdem jetzt eine Parität zu den Fähigkeiten von Pulseaudio, aber auch zum Soundserver JACK für professionellere Ansprüche hergestellt ist, bekommen Videostreams wieder mehr Aufmerksamkeit: Wireplumber soll als Sessionmanager das Routing von Videostreams übernehmen.

Videoeffekte für Pipewire: Pipewire soll Videostreams, hier bei einer Demo des Entwicklers, zur Verfremdung oder zur Verbesserung der Bildqualität in nahezu Echtzeit durch Vulkan-Videofilter lotsen.

(Bild: Wim Taymans (http://pipewire.org))

Eine Hürde ist der Zugriff auf den Stream von Webcams über die Spezifikation "org.freedesktop.portal.Camera", damit Wireplumber auch mit App-Containern wie Flatpak zusammenspielt. Dabei sieht Wim Taymans auch schon zwischengeschaltete Video-Filter mit kurzer Latenz vor. Die soll die Schnittstelle Vulkan realisieren, weil diese auf Multiprozessorsystemen die dafür benötigte Performance liefert. Die dritte schon angepackte Herausforderung ist WebRTC in Webbrowsern, wichtig für Videokonferenzen und Telefonie. In Firefox und Chrome-basierten Browser, funktioniert WebRTC mit Pipewire schon ansatzweise. Laut Taymans sind aber noch einiges Patches an deren WebRTC-Implementierungen nötig, bevor diese Sache mit Pipewire unter Linux als stabil gelten kann. Hier ist also durchaus noch Geduld gefragt, weil auch Browser-Entwickler mitspielen müssen.

Einen weiteren Vortrag zu Pipewire übernahm Frédéric Danis von Collabora und zeigte, welche Fortschritte bei dessen Bluetooth-Unterstützung zu erwarten sind. Auf einer niedrigen, hardwarenahen Ebene hat Pipewire mit Version 0.3.59 noch letztes Jahr erstmals Unterstützung für Audio LE erhalten. Unter diesem Label sind eine ganze Reihe an Bluetooth-Audiogeräten der nächsten Generation zusammengefasst. Diese nutzten den Low Complexity Communication Codec (LC3) statt den bisherigen SBC und können damit ein digitales Audiosignal mit Bitraten zwischen 345 kbps und 160 kbps ohne merklichen Qualitätsverlust übertragen – klar, Qualität ist dabei subjektiv.

Hörprobe des Fraunhofer Instituts zu LC3: Der neue Codec für Bluetooth-Audio geht bis auf 160 Kbps herunter (80 Kbps pro Stereokanal) und soll laut standardisierten Hörtests deutlich besser klingen als der heute gebräuchliche SBC.

(Bild: Nico Jurran (c't))

Collabora sieht deshalb die überzeugenden Vorteile von Audio LE in Pipewire bei der Unterstützung mehrerer gleichzeitiger, synchroner Verbindungen. Damit ist der Weg frei für Multilautsprecher-Setups mit sehr niedrigem Aufwand, die von der Bluetooth-Arbeitsgruppe vor Kurzem den Marketingnamen "Auracast" bekommen hat. Auch die Ansteuerung besonders stromsparender In-Ear-Kopfhörern und die Anbindung von Hörgeräten ist möglich. Die weitere Entwicklung von Pipewire, die mit einem recht schnellen Tempo voranschreitet, lässt sich über das Git Repository des Projekts gut verfolgen. Die erste Integration von LC3 in Pipewire wird unter Distributionen wie Fedora Linux oder Arch Linux also nicht lange auf sich warten lassen, zumal LC3 als freier Codec unter der Apache-2.0-Lizenz steht.

(tiw)