• IT-Karriere:
  • Services:

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. ekom21 - KGRZ Hessen, Darmstadt, Gießen, Kassel
  2. SAXOVENT Ökologische Investments GmbH & Co. KG, Berlin Charlottenburg

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. Einführung in die Programmierung mit Rust
    21.-24. September 2021, online
  2. Elastic Stack Fundamentals - Elasticsearch, Logstash, Kibana, Beats
    26. - 28. Oktober 2021, online
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


Anzeige
Top-Angebote
  1. 39,99€ + 2,99€ Versand oder kostenlose Marktabholung
  2. 79,49€ inkl. Direktabzug
  3. (u. a. be quiet! Pure Rock Slim für 17,99€ inkl. Versand und be quiet! Pure Base 600 für 59...
  4. (u. a. Northgard für 7,99€, No Man's Sky für 14,99€, PSN Card 20 Euro [DE] - Playstation...

YBoyka 05. Feb 2014

Linux halt.....

smurfy 05. Feb 2014

Kommt ganz auf die Bedürfnisse drauf an. Ich als Entwickler zum Beispiel, als jemand...

LH 03. Feb 2014

http://www.freedesktop.org/wiki/Software/openwfd/

blackout23 03. Feb 2014

Ich finde es gut, dass du dich um VTs und das Session Management kümmerst. Nutze hier...

lear 03. Feb 2014

Postest Du den Scheiß jetzt in jedem Thread? Der TRSMRCY Fehler *liegt* in den...


Folgen Sie uns
       


Satelliteninternet Starlink ausprobiert

Trotz der schwankenden Datenrate konnten wir das Netz aus dem All problemlos für Arbeit und Freizeit nutzen.

Satelliteninternet Starlink ausprobiert Video aufrufen
Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme

      •  /