Wifi-Display: "Miracast unter Linux ist schrecklich"

Fast vier Monate hat der Entwickler David Herrmann für eine freie Implementierung von Miracast gebraucht. Sein Fazit ist die klare Empfehlung, derartige Geräte nicht zu kaufen oder zu nutzen. Die Technik sei einfach zu schrecklich.

Artikel veröffentlicht am ,
Das Nexus 4 unterstützt Miracast, der Linux-Empfänger nur bedingt.
Das Nexus 4 unterstützt Miracast, der Linux-Empfänger nur bedingt. (Bild: Nina Sebayang/Golem.de)

Um eine freie Implementierung von Miracast zu beginnen, hatte David Herrmann zunächst das Problem, dass die Spezifikationen nur gegen Zahlung eines hohen Geldbetrages zur Verfügung stehen. Es folgte ein viermonatiges Entwicklungsprojekt, das ihn zu der Empfehlung führte, die Technik auf keinen Fall zu verwenden. Zwar zeigte Herrmann am Ende seines Vortrages bei der Open-Source-Konferenz Fosdem, dass sein Code funktioniert. Die Verwendung unter Linux ist aber keinesfalls für Endnutzer geeignet.

Hardwareunterstützung fehlt

Stellenmarkt
  1. Prüfingenieur (m/w/d) - Schwerpunkt LabVIEW Programmierung
    GRUNER AG, Wehingen
  2. IT Systems Engineer/IT User HelpDesk/IT-Support (m/w/d)
    Alpla-Werke Lehner GmbH & Co KG, Markdorf
Detailsuche

Miracast soll es im Grunde ermöglichen, ein HDMI-Signal via WLAN zu übertragen, um so einen Film vom Smartphone an das Fernsehgerät zu streamen. Doch unter Linux ist bereits das Finden von funktionierender Hardware sehr schwer. Denn einige der Kernel-Treiber unterstützen die notwendigen Funktionen in der Firmware schlicht nicht. Aber auch jene Treiber, die zumindest auf dem Papier die notwendigen Funktionen mitbringen, konnte Herrmann zunächst nicht verwenden.

Einige der Treiberentwickler verhielten sich gegenüber Herrmann auch wenig kooperativ, so dass deren Code nicht angepasst wurde. Die einzige funktionstüchtige Hardware sei derzeit Intels 7260-WLAN-Chip, der über den IWL-MVM-Treiber angesprochen wird, sagt der Programmierer, der an der Universität Tübingen studiert.

Kommunikation ist das schwierigste

Neben der Suche nach möglicher Hardware ist die Spezifikation selbst - also die Arbeitsweise von Miracast - die größte Hürde. Theoretisch ist der Aufbau einer Verbindung zwischen zwei Geräten vergleichsweise einfach. Denn es müssen nur eine Peer-to-Peer-Verbindung (P2P) aufgebaut und ein IP-Link aufgesetzt werden, die Audio-/Videodaten werden dann über TCP/UDP übertragen.

Golem Akademie
  1. Unity Basiswissen: virtueller Drei-Tage-Workshop
    7.–9. Februar 2022, Virtuell
  2. CEH Certified Ethical Hacker v11: virtueller Fünf-Tage-Workshop
    21.–25. Februar 2022, Virtuell
Weitere IT-Trainings

Zum Finden der Geräte wird das WLAN gescannt, was unter Linux problemlos funktioniert. Doch mit Miracast werden zusätzlich sogenannte Filter übertragen, die die Eigenschaften der Hardware wie etwa die möglichen Auflösungen mitsenden. Die Menge der versendeten Daten sei immens und erschwere das Auffinden des richtigen Gerätes, sagt Herrmann. Der eigentliche Verbindungsaufbau geschieht per WPS und wird dementsprechend mit WPA2 gesichert.

Für die IP-Verbindung wird darüber hinaus auch nicht IPv6 verwendet, was die Verbindung benachbarter Geräte deutlich vereinfacht. Stattdessen wird das alte IPv4 samt DHCP genutzt. Die Arbeit mit den DHCP-Servern unter Linux sei jedoch furchtbar, sagt Herrmann.

Audio und Video sind etwas einfacher

Um die Inhalte zu übertragen, ist es notwendig, Ziel und Quelle der beiden beteiligten Geräte festzulegen, was wohl nicht immer gezielt forciert werden kann. Manchmal geschehe die Zuweisung auch spontan, so Herrmann. Es gebe dann keine Möglichkeit, dies gezielt zu verändern.

Initiiert und kontrolliert wird das Versenden der Streams per RTSP, was aber einen entscheidenden Nachteil hat: Es ist nicht möglich, einfach mit dem Senden der Daten an der Quelle zu beginnen. Der Empfänger muss das Senden eigens anfordern. Wenn dies alles geschehen ist, werden die Daten wie RTP versendet.

Dabei werden Audio und Video getrennt gesendet, um theoretisch den Sound an Lautsprecher und das Bild an einen Monitor zu übertragen. Dazu ist auch die Synchronisation der Geräte möglich. Doch in Herrmanns Implementation funktioniert dies noch nicht. Für das Video sind H.264-codierte Inhalte notwendig, für Audio kann AAC verwendet werden. Zum Bereitstellen der Daten und zum Versenden nutzt Herrmann GStreamer, dessen Integration in den Code nur etwa zwei Stunden dauerte.

Verwendung nicht empfehlenswert

Nach einigen Anläufen gelang es Herrmann zum Ende seines Vortrages, die Oberfläche seines Android-Smartphones an seinen Laptop zu übertragen und ein Rennspiel zu streamen. Die Verzögerungen waren verhältnismäßig gering, es treten aber einige Artefakte auf. Ebenso kann es vorkommen, dass der Stream kurzzeitig einfriert.

Endnutzerfreundlich ist der Code von Herrmann auf keinen Fall, da allein zum Starten der Übertragung bisher etwa zehn Shell-Skripte ausgeführt werden müssen. Darüber hinaus wird direkt auf die Konfiguration von WPA-Supplicant zugegriffen und diese verändert, da ein verwendbares API im Network-Manager für den P2P-Teil fehlt.

Wohl deshalb rät Herrmann davon ab, Geräte für die Benutzung mit Miracast zu kaufen. Denn zumindest unter Linux-Systemen ist es fast unmöglich, davon Gebrauch zu machen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Framework Laptop im Hardware-Test
Schrauber aller Länder, vereinigt euch!

Der modulare Framework Laptop ist ein wahrgewordener Basteltraum. Und unsere Begeisterung für das, was damit alles möglich ist, lässt sich nur schwer bändigen.
Ein Test von Oliver Nickel und Sebastian Grüner

Framework Laptop im Hardware-Test: Schrauber aller Länder, vereinigt euch!
Artikel
  1. Neues deutsches Mobilfunknetz: 1&1 Mobilfunk hat noch immer keine Antenne installiert
    Neues deutsches Mobilfunknetz
    1&1 Mobilfunk hat noch immer keine Antenne installiert

    Nach neuesten Angaben von 1&1 Mobilfunk soll sich die Ausbaugeschwindigkeit beschleunigen: von null auf mindestens 1.000 in diesem Jahr.

  2. Hauptuntersuchung: Tesla Model S beim TÜV nur knapp vor Verbrennern von Dacia
    Hauptuntersuchung
    Tesla Model S beim TÜV nur knapp vor Verbrennern von Dacia

    Bei den TÜV-Prüfungen schneidet das Model S nicht viel besser ab als sehr günstige Verbrenner. Andere E-Autos sind da besser.

  3. Japan: Sega steigt aus Spielhallen-Geschäft aus
    Japan
    Sega steigt aus Spielhallen-Geschäft aus

    Nach über 55 Jahren wird Sega sich aus dem Arcade-Geschäft zurückziehen. Wegen der Coronapandemie hatte das Geschäft stark gelitten.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • RTX 3080 12GB 1.499€ • iPhone 13 Pro 512GB 1.349€ • DXRacer Gaming-Stuhl 159€ • LG OLED 55 Zoll 1.149€ • PS5 Digital mit o2-Vertrag bestellbar • Prime-Filme für je 0,99€ leihen • One Plus Nord 2 335€ • Intel i7 3,6Ghz 399€ • Alternate: u.a. Sennheiser Gaming-Headset 169,90€ [Werbung]
    •  /