Samstag, 18. Mai 2013

Dreiteiliges Tutorial: RaspberryPi als Radio und Streaming-Client

In diesem dreiteiligem Tutorial werde ich zeigen, wie man einen Raspberry Pi in ein erstklassiges Radio verwandeln kann. Jedoch kein herkömmliches UKW-Radio, sondern ein funktionales kleines Medienradio was sich nahtlos in die heimische digitale Infrastruktur ingeriert und Konnektivität für nahezu jedes Device und OS bietet.

Das Tutorial wird an dieser Stelle in drei Posts aufgeteilt. Nachdem diese befolgt wurden sollte der Pi folgendes bieten:
  • TEIL 1: Apple Airplay Streaming um Musik direkt aus iTunes auf den Raspberry Pi zu streamen. Ich benutze dafür ein Paket namens Shairport, was leicht zu konfigurieren ist und seinen Dienst mehr oder minder gut leistet.
  • TEIL 2: Music Player Daemon (MPD) um auf dem Raspi abgespeicherte Musik abzuspielen. MPD lässt sich wunderbar per Smartphone steuern und beherrscht neben der Wiedergabe lokaler Musikdateien auch die Wiedergabe von Streams, das Anlegen von Playlists, eine einfache Bedienung über das Terminal und noch vieles weitere.
  • TEIL 3: Musik-Streaming per Bluetooth A2DP-Protokoll um bspw. Musik von Android oder iOs auf das Gerät zu streamen. Der große Vorteil besteht darin, dass nahezu jedes Smartphone mit Bluetoothmodul von Haus aus dieses Protokoll spricht und somit ohne zusätzliche App Musik streamen kann. Zusätzlich kann der Pairing-Vorgang mittels eines NFC-Tags vereinfacht und automatisiert werden.
Bevor eine dieser Anleitungen befolgt wird, muss jedoch eingangs die Quelle angegeben werden, aus der der gestreamte Sound aus dem Pi kommen soll. Dies kann über HDMI oder Analog-Klinke erfolgen. Standardmäßig ist der Pi so eingestellt, dass er automatisch erkennt an welchem der beiden Anschlüsse ein entsprechender Stecker eingesetzt wurde. Probleme gibt es jedoch wenn man den Sound altmodisch über den 3,5mm-Klinkenport nutzen möchte aber gleichzeitig einen Monitor über HDMI angeschlossen hat. Dann bleibt der Pi stumm, da er denkt dass das Audiosignal über HDMI übertragen werden soll. In meinem Fall habe ich den Pi so eingestellt, dass alles Audio über den Klinkenport ausgegeben wird. Dies geht folgendermaßen:
sudo amixer cset numid=3 1
Dabei steht die letzte Zahl "1" für den Klinkenport. Soll der Sound über HDMI ausgegeben werden muss hier eine "2" stehen. Steht dort eine "0" ist der bereits erwähnte automatische Modus aktiviert.




3 Kommentare :

  1. Hallo
    dein tut ist das erste was wirklich bei mir funktioniert hat. Leider noch nicht ganz. ich habe folgendes vor.

    2 Rpis und auf beiden ist ein Bluetooth dongle. Auf beiden ist ebenfalls nach deiner Anleitung Bluetooth installiert und A2DP konfiguriert worden.

    So was ich vorhabe ist das der RPi1 ein Signal über Hdmi audio Empfängt und über Bluetooth an den RPi2 Sendet. RPi2 soll dann das Signal auf Klinke ausgeben. Aktuell sind zwar beide miteinander Verbunden aber ich bekomme in keinster weise Ton aus einem der beiden.

    Falls du noch die Muße hast wäre ich sehr erfreut wenn du mir helfen könntest.

    Vielen dank schonmal
    Gruß Vin

    AntwortenLöschen
    Antworten
    1. Hallo Vin,
      vielen Dank für dein Feedback. Es freut mich, dass meine Anleitung dir helfen konnte.

      Zu deinem Problem:
      Ich muss ehrlich sagen, dass ich dir da nicht helfen kann. Zudem finde ich die Art, dass du dein Audio über Bluetooth von einem Pi zum nächsten streamen möchtest nicht so geeignet. Bluetooth ist zu störanfällig (zumindest an meinem Pi). Ich würde dir empfehlen, dass ganze über Netzwerk zu streamen. Versuch dich mal an dem Paket ncmpcpp, dass ich im Teil 2 des Tutorials vorgestellt habe. Wenn du es schaffst, dass dein HDMI-Audiosignal von ncmpcpp abgegriffen wirst, kannst du es direkt weiter an einen Stream ausleiten und dem zweiten Pi übergeben. Nachteil ist, sobald der Stream abbricht hört dein Pi auch auf zu spielen.
      Eine Frage aus eigenes Interesse: Was genau hast du vor mit deiner Konfiguration? Von welchem Gerät kommt das HDMI-Signal? Kann das Gerät, das den Stream aussendet evtl selber streamen?

      Lg J

      Löschen
  2. Hallo
    Super Tut,
    Allerdings kommt kein ton aus meinem Raspi!
    Verbindung usw. Funktioniert super!
    Lieder werden auch via Bluetooth abgespielt, aber es kommt kein Ton
    Hab es auch schon über HMDI versucht^^

    AntwortenLöschen