iTunes Airplay Streaming – Linux Rechner mit Shairport oder doch lieber Apple TV?


  Die Idee: Audio Streaming selber machen oder AppleTV?

  AirPlay ist die schnurlose Übertragung von Audio (und Video) von iTunes (oder kompatibler Software) zu AirPlay fähigen Endgeräten wie Lautsprecher, Receiver, AppleTV, AirPort Express und so weiter.
Vorteil: Man kann von seinem iTunes Rechner direkt auf die Endgeräte streamen, überbrückt somit größere Entfernungen und kann damit sein Haus oder mehrere Räumlichkeiten gleichzeitig beschallen. Und das, ohne Kabel verlegen zu müssen. Schnurlos per WLAN.
Zusätzlich kann von einem iPhone mit der Remote App der iTunes Dienst gesteuert werden. Also hat man die Fernbedienung per WLAN im gesamten Haus verfügbar, kann die Titel, Lautstärke und so weiter ändern….

Nachteil: Die Geräte müssen die AirPlay Funktion unterstützen. Lautsprecherhersteller und Receiverhersteller lassen sich diese Funktion zum Teil einen deutlichen Aufpreis kosten. Man muss zudem seine Technik (wieder einmal?) ersetzen.
Schön ist natürlich das Streamen von Audio und Film über iTunes zu Endgeräten wie einem Apple TV. Ohne viel Aufwand und Konfiguration ist der Apple TV im Netz verfügbar und wird von iTunes angezeigt. Zwei Mausklicks weiter ist der als Lautsprechner aktiv und gibt das Audio wieder. Schön. Aber auch mit 109 Euro („der neue Apple TV mit FullHD 1080p“) für eine schnurlose Audioübertragung recht teuer. Zumindest, wenn man nur diese Funktion nutzen wollen würde…
Überlegt hatte ich schon länger, mir einfach den Apple TV zu kaufen. Den Audio-Ausgang an mein iTeufel angeschlossen sollte für ausreichend Beschallung mit gutem Druck sorgen. Abgehalten hat mich lange Zeit die nur 720p Wiedergabefähigkeit des kleinen Kästchens. Wenn man sich schon einen Apple TV kaufen sollte, dann soll der doch auch 1080p wiedergeben können. Nun ist der neue Apple TV endlich raus, braucht aber noch einige Tage, um auf dem Markt in ausreichender Stückzahl und zu den „normalen“ Apple Preisen verfügbar ist. Also auch noch keine wirkliche Lösung…

Hat man seinen Linux-Rechner sowieso schon in sein Heim-Audiosystem integriert und nutzt diesen zur Medienwiedergabe böte es sich ja an, über eine kleine Software diese Funktion nachzurüsten. Hier kommt die Software Shairport (und sicher viele andere) ins Spiel. Diese meldet sich über den Apple Bonjour-Dienst als AirPlay fähiges Endgerät im Netz und können von iTunes als „Lautsprecher“ angesprochen und gesteuert werden.
Leider ist die Entwicklung von Shairport nicht mehr so aktiv. Die Version 0.05 ist derzeit aktuell und hat das letzte Update im April 2011 erfahren. Nach ersten Tests ist der Dienst relativ stabil, könnte aber gerne noch mehr Funktionen vertragen.


  Voraussetzungen

  Zur „Installation“ und Nutzung von Shairport müssen ein paar Pakete auf dem Linux installiert sein. Ich gehe hier von einem debianartigen Ubuntu Linux aus, derzeit (noch) aktuell in Version 11.10.
Grundkenntnisse setze ich ebenso voraus, versuche aber einfach und deutlich zu schreiben.

1. Avahi muss laufen:

  In anderen Posts habe ich schon erklärt, wie man avahi auf einem Linux installiert. Dieser Dienst ist Voraussetzung für die Nutzung von Shairport und emuliert die Bonjour-Identifikation von Geräten. Einfach mal die alten Blogposts ansehen, sofern noch nicht instaliert…

2. Installation der nötigen Pakete aus dem Repository

  Nötige Pakete müssen installiert sein. Oder man installiert diese auf der Kommandozeile per apt:

Shell $>: sudo apt-get install libssl-dev libcrypt-openssl-rsa-perl libao4 libao-dev libio-socket-inet6-perl libwww-perl avahi-utils

(installiert die nötigen Pakete; hat man Perl noch nicht installiert, muss dieses mit installiert werden)

Nun müssen noch einige CPAN Perl Module installiert werden. Diese Module (Crypt::OpenSSL::RSA, IO::Socket::INET6 und HTTP::Message) sind nötig für Shairport und können von http://www.cpan.org/ heruntergeladen und installiert werden. Oder einfach auf der Konsole:

  Shell $>: sudo perl -MCPAN -e ‚install Crypt::OpenSSL::RSA‘
  Shell $>: sudo perl -MCPAN -e ‚install IO::Socket::INET6‘
  Shell $>: sudo perl -MCPAN -e ‚install HTTP::Message‘


  „Installation“ von Shairport

  Nun kann beispielsweise per git von https://github.com/albertz/shairport oder als tar.gz Datei von http://mafipulation.org/static/shairport-0.05.tar.gz der Source heruntergeladen werden. Entpacken, ins Verzeichnis wechseln, make und fertig.

  Shell $>: wget -c http://mafipulation.org/static/shairport-0.05.tar.gz
  Shell $>: tar -xvzf shairport-0.05.tar.gz
  Shell $>: cd shairport-0.05
  Shell $>: make
  Shell $>: perl shairport.pl

Der Shairport-Dienst startet nun und gibt auf der Konsole ein paar Meldungen aus. Das sollte es gewesen sein. Nun kann man von iTunes (rechts unten erscheint das AirPlay Symbol) aus diesen „Lautsprecher“ mit ansteuern:

Shairport in iTunes


Möchte man alle Lautsprecher (oder besser: Streaming-Ausgabegeräte) gemeinsam nutzen, einfach „Mehrere Lautsprecher“ auswählen und die gewünschten Lautsprecher anhaken. Zusätzlich kann die Lautstärke der einzelnen Lautsprecher variabel gesetzt werden:

Shairport mit mehreren Lautsprechern in iTunes


Leider setzt die Ausgabe von Audio kurz aus, wenn man Lautsprecher hinzu- oder abwählt. Hoffentlich fixt Apple das noch mal. Ist halt unschön, wenn dann der Audiostream kurz ausgesetzt wird, nur weil ein Lautsprecher hinzugefügt wird…. Das passt nicht zu Apple und stört den Genuss ;-(


  Einfacher?

  Wie schon erwähnt sind die fertigen Geräte (allen voran Apple TV) sicher die bessere, schnellere und stylischere Variante. Zumal mit dem Apple TV auch noch Video ausgegeben werden kann.
Aber: Kostengünstiger ist die Shairport Variante allemal. Wenn nun demnächst endlich die RaspberryPi Mini-Rechner in ausreichender Stückzahl verfügbar sind kann man für wenig Geld (~35Euro plus SD Karte) einen Airplay Empfänger bauen. Diesen an LAN, Strom und (brauchbare) aktive Audio-Lautsprecher angeschlossen und fertig ist. Somit kann man für wenig Geld eine brauchbare Mehrraum-Beschallung bauen und seine bisherigen Lautsprecher weiter nutzen. Da bastelt man sich gerne die nötige Software zurecht 😉


  Fazit

  Schnell und einfach erledigt. Leider muss man darauf hoffen, dass Apple nichts an dem Protokoll ändert oder den Public-Key ändert. Nur so ist es derzeit möglich, dieses Konstrukt zu betreiben. Die Wahrscheinlichkeit einer Änderung halte ich allerdings derzeit für gering. Die Hersteller, die auf dem Markt sind und Lautsprecher mit Airplay Unterstützung anbieten sind sicherlich nicht so einfach in der Lage, eine Änderung durchzusetzen. Zu viele Kunden würden danach ohne Audio vor den Lautsprechern stehen.

Weiteres Problem: Interessanterweise ist (zumindest bei mir) die Ausgabe per Airplay zu meinem Linux Rechner schneller als der direkt angeschlossene, 3,5mm Klinken-Audioausgang der wiederum an meinem Receiver angschlossen ist. Beide Geräte in einem Raum stören dann schon den „Audiogenuss“.


  Links

  http://mafipulation.org/blagoblig/2011/04/08
  http://www.mafipulation.org/
  http://mafipulation.org/static/shairport-0.05.tar.gz
  http://www.raspberrypi.org/


Dieser Beitrag wurde unter Apple Mac & Co., Dokus und Tipps, iPhone, Linux/ UNIX, Technikspielkram abgelegt und mit , , , , , , , , , , , , , , , , , , , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

9 Antworten zu iTunes Airplay Streaming – Linux Rechner mit Shairport oder doch lieber Apple TV?

  1. Marco sagt:

    Ich warte auch schon sehnsüchtig auf den Rasbery, genau für diesen zweck.
    Einfach ein günstiger Airplay Empfänger.

    Gruß Marco

  2. Web Designer sagt:

    Bitte um Info wenn es geklappt hat. Möchte genau das selbe bauen. Auch mit einem Rasberry. 🙂
    Danke

    • rotzoll sagt:

      Ich glaube, da werden mehr den RaspberryPI für nutzen wollen.
      So ist auch mein Plan. Leider ist es ja nicht soooo wahrscheinlich, zeitig einen zu bekommen.

      Und wenn, dann gibt’s auch ’nen Blogpost dazu 😉

      lg,
      malte

  3. ape sagt:

    Hi, danke. Läuft unter 10.04 (ubu) perfekt – libao2 (+dev) und ein paar perl Pakete fehlten .. aber null rpoblemo. Danke danke

  4. Enrico Zero sagt:

    Ein Jailbreak ist jetzt garnicht mehr unbedingt nötig. Man kann Fremdformate auch mit einer kleinen App namens Beamer.app, die auf dem Mac installiert werden muss, auf das AppleTV stremmen. Smarte Lösung: http://www.sonoya.com/apple-tv-trick-mac-osx-mit-beamer-app-alle-filme-und-beliebige-video-dateien-formate-vom-mac-abspielen-wiedergeben-ohne-jailbreak.html

  5. Adrian sagt:

    Perfect on RaspberryPi and MacOS , THANK YOU !

  6. Mathes sagt:

    Ich wollte es eben auf dem Pi probieren, leider mit Fehler beim Start des Videos am iPhone: „Avahi publishing failed! Do you have avahi-publish-service on your PATH? at shairport.pl line 65.“ -> ansich sagt die Meldung alles, ich bekomm es trotzdem nicht hin, weis jemand was dazu? {bin kein Linux Profi, bitte Nachsicht :)}

  7. Aaron sagt:

    Bei mir (xubuntu 12.04) hat noch ein Paket gefehlt:
    sudo perl -MCPAN -e ‚install Net::SDP‘
    Aber sonst super Beitrag

  8. Daniel Moritz sagt:

    Klappt hier (Debian Lenny) super. Leider taucht die Linuxkiste noch nicht in der Gesamtübersicht auf, aber das krieg ich auch noch in den Griff.
    Die Latenz von einer halben Sekunde ist nur störend wenn beide Geräte im selben Raum sind. Sonst klasse.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert