Unter Einem Hut

Unter Einem Hut

Netz&System Pipewire © Anna Denisova, 123RF © Anna Denisova, Das neue Framework Pipewire verbindet Audio und Video Unter einem Hut Mit dem Framework Pipewire Audio und Video gehören heute zu den aus den Labors von Red Hat respektive wichtigen Anwendungsbereichen so- dessen Community-Version Fedora – da, möchten dessen Entwickler wohl beim privaten Desktop-Computing wo auch Wayland und Flatpak her- wie im professionellen Bereich. Aktuelle kommen. Hauptentwickler von Pipewire alte wie neue Probleme bei Trends und der wachsende Fokus auf ist der bei Red Hat beschäftige Wim Tay- Sicherheit bei Rechnern, Betriebssyste- mans , ein Veteran aus der Gstreamer- Audio und Video lösen. men und Anwendungen stellen das Entwicklung. Der Name Pipewire bezieht Segment Multimedia aber vor neue sich auf die Pipelines in Gstreamer, die Ferdinand Thommes He rausforderungen. unterschiedliche Systeme zum Verarbei- Mit Wayland gelingt es standardmäßig ten von Medien zu komplexen Ketten nicht mehr, Vorgänge auf dem Bildschirm verknüpfen 1. Das Framework basiert README mit Screen-Rekordern wie Record my- auf einer neuen API namens Simple desk top oder Vokoscreen aufzuzeichnen: Plugin API oder kurz SPA. Mit Pipewire steht ein gemeinsames Frame- Das Anzeigeprotokoll verzichtet aus Pipewire erblickte im September 2017 work für Audio und Video ins Haus, und es Gründen der Sicherheit auf Netzwerk- das Licht der Öffentlichkeit , hat seit- peilt außerdem den professionellen Audio- transparenz. Auch die Ausgabe von dem aber eine rasante Entwicklung Bereich an. Mit ihm suchen die Entwickler Audio- und Video-Dateien in Containern durchlaufen. Zwar enthält Fedora 27 die einen Ausweg aus Problemen, die durch wie Flatpak erfordert neue Techniken. Software bereits, doch diese hat noch Hier kommt Pipewire ins Spiel, ein ein gutes Stück Weg vor sich. Unter Wayland und Flatpak entstehen. neues Multimedia-Framework für Linux Fedora 27 zeigt ein Terminal die installier- 74 www.linux-user.de 05.2018 Pipewire Netz&System 1 Der Name Pipewire geht auf die Pipelines zurück, über die das schon bestehende Framework Gstreamer unterschiedliche Aktionen auf Multimediadaten zu Ketten zusammenfügt. (ScotXW, CCO 1.0, commons.wikimedia.org) ten Pakete von Pipewire 2. Per pipe­ positor über ein D-Bus-API oder ein Flat- wire­cli gelangen Sie auf der Komman- pak-Portal abgestimmt und die Erlaub- dozeile in einen Modus, in dem diese nis eingeholt hat. direkt Befehle entgegennimmt. Nach Eingabe von help sehen Sie die Optio- Jack implementiert nen, die die Software akzeptiert 3. Für den Audio-Bereich integrierten die Hardware teilen Developer mittlerweile das Jack-Proto- koll in Pipewire. Das ermöglicht, ent- Pipewire verfolgt mehrere Ziele. Primär sprechende Anwendungen ohne Jack dient es sich als Framework für Audio auszuführen. Später könnte Pipewire und Video an, auch für den professio- dann den jetzigen Standard-Sound- nellen Bereich. Dabei gibt es drei große server Pulseaudio ablösen. Schon jetzt Herausforderungen im Video-Bereich zu dürfen alle Anwendungen Pipewire im lösen. Die erste davon stellt das Teilen Hintergrund einsetzen, die Gstreamer von Geräten dar, das es ermöglicht, dass oder Alsa nutzen. Ein Blick auf die sche- mehrere Anwendungen dieselbe Video- matische Darstellung zeigt, dass das Hardware gemeinsam nutzen, wie bei- neue Framework als verbindende spielsweise eine Webcam. Schicht zwischen Kernel-Modulen und Das will Pipewire zweitens auf sichere Anwendungen fungiert 4. Art und Weise ermöglichen, um zu ver- Lediglich solche Anwendungen blei- hindern, dass unberechtigte Prozesse ben derzeit noch außen vor, die auf die die Daten abgreifen. Als drittes Ziel peilt Netzwerktransparenz von Pulseaudio Pipewire den effizienten Austausch von angewiesen sind – dabei geht es haupt- Multimediadaten zwischen Anwendun- sächlich um Netzwerk-Streaming. Ein gen an – etwa Fullscreen-Captures von weiterer Anwendungsbereich für den einem Compositor wie der Gnome Shell zu einer Browseranwendung für Video- konferenzen wie Google Hangouts oder Nextcloud Talk. Da die Sicherheit einer der treibenden Kräfte für den Umstieg vom X-Window- System auf Wayland war, legten die Ent- wickler viel Wert darauf, die problema- tischen Stellen nicht im Wayland-Com- positor nachzubilden. Beispielsweise erlaubt Pipewire nur dann, dass eine Applikation ein Capture vom Vollbild 2 Die derzeit unter Fedora verfügbaren fünf Pakete zum neuen Audio-Video- macht, wenn diese sich mit dem Com- Framework Pipewire weisen die Anwendung als Media Sharing Server aus. 05.2018 www.linux-user.de 75 Netz&System Pipewire Newcomer im Bereich Multimedia stellt die Webcam zugreifen. Beide nutzen das Verbinden von Geräten via Blue- dazu das Gstreamer-Framework und ha- tooth dar, wobei er sich über ein ent- ben somit über das Pipewire-Gstreamer- sprechendes Modul direkt ins BlueZ- Plugin automatisch die Unterstützung Framework unter Linux einklinkt. für Pipewire an Bord. Das gilt für alle auf Ende Januar hat der Desktop-Mana- Gstreamer basierenden Anwendungen, ger von Red Hat, Christian Schaller, ohne dass Anpassungen an der Software Wim Taymans auf der DevConf 2018 im notwendig wären 5. tschechischen Brno getroffen und sich über den aktuellen Stand des Projekts Pipewire und Plasma informiert . Der Schwerpunkt der Ar- beit liegt derzeit auf den Methoden, die Jan Grulich, ein weiterer Mitarbeiter von das Screen-Sharing und Recording Red Hat, der hauptsächlich an Qt und unter Wayland ermöglichen. KDE arbeitet, griff das neue Framework Somit hat derzeit Video die Präferenz. auf, um in einer Plasma-Wayland-Sitzung Es soll einerseits Anwendungs- und das Aufnehmen und Teilen des Desktops Desktop-Entwicklern eine neue Metho- zu implementieren . Solche Szenarien de für die Freigabe des Bildschirms bie- lassen sich aus Sicherheitsgründen nicht ten und andererseits für Anwendungen mit Bordmitteln von Wayland abwickeln. innerhalb eines Desktop-Containers wie Die benötigte API haben die Entwick- Flatpak einen sicheren Weg für den Zu- ler kürzlich in XDG-desktop-portal ein- griff auf Audio- und Videogeräte ermög- gefügt. Mithilfe dieser API können An- lichen. Dabei sorgt D-Bus dafür, dass die wendungen nun auf Bildschirminhalte in Clients sich sicher authentifizieren, wäh- Wayland-Sitzungen oder einer Sandbox rend Pipewire transparent Inhalte und wie Flatpak zugreifen. Anwendungen innerhalb und außerhalb Bei Portalen handelt es sich um weit der Sandbox verbindet. oben angesiedelte Session-Bus-APIs, die Neben seinem Vortrag auf der Konfe- einen trennscharfen Zugriff auf Ressour- renz gab Taymans Schaller einen prak- cen für Sandbox-Anwendungen ermög- tischen Einblick, was Pipewire im Bereich lichen. Die Verantwortung, ob er einer Video bereits erlaubt. So können schon Anfrage aus einem Portal den Zugriff er- jetzt zwei Anwendungen gleichzeitig auf teilt oder verweigert, liegt dabei immer 3 Das Tool pipewire­cli zeigt auf der Kommandozeile mit dem Parameter help die verfügbaren Befehle an. 76 www.linux-user.de 05.2018 Pipewire Netz&System App Gstreamer VLC App1 App2 Pipewire V4L2 Bluetooth Alsa Va-api DRM Kernel 4 Pipewire knüpft Verbindungen zwischen Kernel und Multimedia-Anwendungen. (Quelle: Wim Taymans) beim Benutzer. Daher führen die meis- Plasma-Wayland-Sitzung mit Screen- ten Portal-APIs zu einer Interaktion in Recording, Screen-Sharing sowie Re- Form eines Dialogs, um Berechtigungen mote-Zugriff für Anwendungen mit oder temporär oder dauerhaft zu erteilen ohne Sandbox auf. oder zu verweigern. Dem gleichen Unterfangen hat sich Mit verschiedenen Backend-Implemen- der Red-Hat-Mitarbeiter Jonas Ådahl für tierungen wie XDG-desktop-portal-kde den Gnome-Desktop gewidmet. Hier oder XDG-desktop-portal-gtk brauchen fehlte ebenfalls ab Fedora 25 mit dem die Entwickler nur eine API zu unterstüt- Umstieg auf Wayland die Möglichkeit zen, um alle Desktops anzusprechen. Das zum Screencasting und für Sitzungen Screencast-Portal etwa funktioniert so, auf entfernten Rechnern. Für Anwen- dass der Client zunächst eine Sitzung mit der Backend-Implementation von XDG- desktop-portal (XDP) erstellt und dann die Freigabe für den Bildschirm über ei- nen Dialog startet 6. Daraufhin erstellt die XDG-Backend- Implementation einen Pipewire-Stream und sendet die Antwort samt Stream-ID an den Client zurück. Der wiederum ist in der Lage, sich mit der entsprechenden ID mit dem Stream verbinden und des- sen Inhalt abrufen 6. Plasma und Gnome Klappt alles wie gedacht, dann bringt bereits das für den 12. Juni zum Release anstehende Plasma 5.13 eine Pipewire- 5 Zwei Anwendungen greifen per Pipewire gleichzeitig auf eine Webcam zu. Implementation mit und wertet so die (Bild: Christian F. K. Schaller) 05.2018 www.linux-user.de 77 Netz&System Pipewire dungen wie VNC oder RDP mussten mehr zu tun. Canonical plant Pipewire Anwender über ein Jahr lang eigens eine für Ubuntu 18.10 ein – falls die Distribu- X11-Session starten. tion im Oktober zu Wayland zurückkehrt. Ådahl fügte dem Gnome-Fenster- Bei Debian gibt es ebenfalls bereits ein manager und Compositor Mutter die Repository für den Neuzugang. zwei D-Bus-APIs org.gnome.Mutter. RemoteDesktop und org.gnome.Mutter. Fazit ScreenCast hinzu. Sie stellen einen Pipewire-Stream bereit, der den Inhalt Die vollständige Implementation und der Bildschirme des Systems enthält. Integration von Pipewire ist ein großes Die neuen APIs ermöglichen, Vollbild- Unterfangen, das sicher noch eine Weile Streams oder Streams für einzelne Fens- braucht. Dann verfügt Linux hoffentlich ter lokal oder remote zu erstellen 7. über ein Multimedia-Framework,

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    5 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us