Anzeige
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)

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.

Anzeige

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

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.

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.


eye home zur Startseite
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...

Kommentieren



Anzeige

  1. Mitarbeiter/in im Bereich IT Helpdesk für den 1st-Level-Support
    Bosch Communication Center Magdeburg GmbH, Berlin
  2. Professional IT Consultant Automotive Marketing und Sales (m/w)
    T-Systems International GmbH, Leinfelden-Echterdingen
  3. Trainee (m/w) IT-Anwendungen
    Süwag Energie AG, Frankfurt am Main
  4. Webentwickler/-in
    ALPLA Werke Alwin Lehner GmbH & Co KG, Hard (Österreich)

Detailsuche



Anzeige
Blu-ray-Angebote
  1. 3 Blu-rays für 18 EUR
    (u. a. Rache für Jesse James, Runaway, The Wanderers)
  2. TV-Serien Einstieg auf Blu-ray reduziert
    (u. a. Arrow, Hannibal, The Originals, Banshee, The Big Bang Theory, Silicon Valley)
  3. VORBESTELLBAR: X-Men Apocalypse [Blu-ray]
    19,99€ (Vorbesteller-Preisgarantie)

Weitere Angebote


Folgen Sie uns
       


  1. Section Control

    Bremsen vor Blitzern soll nicht mehr vor Bußgeld schützen

  2. Beam

    ISS-Modul erfolgreich aufgeblasen

  3. Arbeitsbedingungen

    Apple-Store-Mitarbeiterin gewährt Blick hinter die Kulissen

  4. Modulares Smartphone

    Project-Ara-Ideengeber hat von Google mehr erwartet

  5. Telekom-Konzernchef

    "Vectoring schafft Wettbewerb"

  6. Model S

    Teslas Autopilot verursacht Auffahrunfall

  7. Security

    Microsoft will Passwort 'Passwort' verbieten

  8. Boston Dynamics

    Google will Roboterfirma an Toyota verkaufen

  9. Oracle-Anwältin nach Niederlage

    "Google hat die GPL getötet"

  10. Selbstvermessung

    Jawbone steigt offenbar aus Fitnesstracker-Geschäft aus



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Xiaomi Mi5 im Test: Das fast perfekte Top-Smartphone
Xiaomi Mi5 im Test
Das fast perfekte Top-Smartphone
  1. Konkurrenz zu DJI Xiaomi mit Kampfpreis für Mi-Drohne
  2. YI 4K Xiaomi greift mit 4K-Actionkamera GoPro an

Hyperloop Global Challenge: Jeder will den Rohrpostzug
Hyperloop Global Challenge
Jeder will den Rohrpostzug
  1. Hyperloop HTT will seine Rohrpostzüge aus Marvel-Material bauen
  2. Hyperloop One Der Hyperloop fährt - wenn auch nur kurz
  3. Inductrack Hyperloop schwebt ohne Strom

Doom im Test: Die beste blöde Ballerorgie
Doom im Test
Die beste blöde Ballerorgie
  1. Doom im Technik-Test Im Nightmare-Mode erzittert die Grafikkarte
  2. id Software Doom wird Vulkan unterstützen
  3. Id Software PC-Spieler müssen 45 GByte von Steam laden

  1. Re: Ein weitreichendes Urteil möglicherweise.

    lear | 19:11

  2. Re: Hätte den Totalschaden meines Wagens verhindert

    EWCH | 19:09

  3. Re: Was ein Unsinn...

    crazypsycho | 19:09

  4. wo genau ist denn das problem?

    Der Rechthaber | 19:08

  5. Re: lowcarb funktioniert auch .. (ganz ohne Sport)

    opodeldox | 19:08


  1. 12:45

  2. 12:12

  3. 11:19

  4. 09:44

  5. 14:15

  6. 13:47

  7. 13:00

  8. 12:30


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel