Raspberry Pi als Internetradio und Musikplayer einrichten

Wozu diese Anleitung?

Mit wenigen Schritten lässt sich anhand der Anleitung ein Raspberry Pi (Einplatinencomputer im Scheckkartenformat) in einen Musikserver verwandeln, der sich an Lautsprecher oder eure Stereoanlage anschließen lässt und Musik in nahezu allen Formaten von einem USB-Stick, aus einem Netzwerk oder direkt aus dem Internet abspielen lässt. Wer zu diesem Zweck bisher oft seinen PC oder Laptop laufen ließ, ist mit einem Raspberry Pi bestens bedient. Er ist extrem stromsparend, lautlos und klein, benötigt keinen eigenen Bildschirm oder Tastatur sodass er unauffällig an jedem Ort seinen Dienst verrichten kann. Klar gibt es mittlerweile natürlich Bluetooth-Lautsprecher in Hülle und Fülle, welche ein ähnliches Problem lösen. Aber spielt eure Bluetooth-Box auch Internetradio oder speichert eure gesamte Musiksammlung und funktioniert nebenbei auch noch als NAS? Eher nicht.

Was man dazu benötigt

  • (WLAN)Router eures Internet-Zugangsanbieters
  • Raspberry Pi & Stromversorgung
  • Eine SD-Karte (bzw. MicroSD falls ein Pi 2 verwendet wird, mindestens 2GB)
  • Netzwerverbindung in der Nähe eurer Stereoanlage. (Alternativ kann das Gerät mit einem WLAN-Stick ausgerüstet werden, sodass ihr es überall aufstellen könnt)
  • USB-Soundkarte (empfohlen)
  • USB-WLAN Adapter (optional)

Empfohlene und optionale Hardware

Das Raspberry Pi verfügt bereits im Auslieferungszustand über einen on-board Soundadapter und die Möglichkeit Lautsprecher oder Kopfhörer anzuschließen. Die Qualität der Ausgabe ist allerdings sehr bescheiden und lässt sich ganz bedeutend verbessern, wenn eine Soundkarte zusätzlich an einem der freien USB-Anschlüsse gesteckt wird. Die oben verlinkte Soundkarte wurde getestet und funktioniert unmittelbar ohne weitere Einrichtung. Einfach einstecken und los geht’s.

Der verlinkte WLAN-Adapter ist wie die Soundkarte bereits getestet, funktioniert plug & play tadellos und sehr günstig in der Anschaffung. Solltet ihr diese Möglichkeit nutzen habt ihr allerdings beide USB-Anschlüsse belegt und könnt die Anzahl der Anschlüsse noch mit einem USB-Hub erweitern, wenn ihr noch externe Speicher dazu stecken möchtet. Es ist eure Entscheidung.
Die beiden oben verlinkten USB-Karten passen außerdem gut nebeneinander in die USB-Slots. Neben der Soundkarte könnte es allerdings eng werden, wenn ihr einen sehr breiten USB-Stick anschließen möchtet. In diesem Fall würde auch ein Verlängerungskabel oder USB-Hub helfen.

Einrichtung

SD-Karte und Betriebssystem einrichten

Ladet euch als Betriebssystem „Raspbian“ herunter. Es ist eine Anpassung der Linux-Distribution Debian für das Raspberry Pi.

http://downloads.raspberrypi.org/raspbian_latest

Danach entpackt die zip-Datei in ein Verzeichnis eurer Wahl.
Die entpackte *.img Datei könnt ihr mit folgendem Befehl auf die SD-Karte kopieren. Dazu ist es notwendig, daß ihr die Karte mit eurem Computer verbindet. Die meisten Geräte haben SD-Kartenslots bereits integriert, externe Kartenleser können für weniger als 5€ nachgekauft werden und sind wegen Digitalkameras in vielen Haushalten bereits vorhanden.
Mit der Linux-Kommandozeile findet ihr mit folgendem Befehl heraus, an welcher Stelle eure SD-Karte eingebunden ist:

df

Danach gebt ein:

sudo dd if=2014-01-07-wheezy-raspbian.img bs=1M of=/dev/sdZ

Der Dateiname hinter „if=“ kann sich natürlich mit neuerem Erscheinungsdatum geändert haben. Es ist der Name der eben entpackten Datei. Hinter „of=“ gebt ihr den Mount-Punkt der SD-Karte ein, der durch den vorangegangenen Befehl ausgegeben wurde.

Windows-Benutzer können alternativ zur Kommandozeile auch die kostenlose Software Win32 DiskImager verwenden.

Raspberry Pi mit dem Netzwerk verbinden

Wenn ihr das mit eurem Netzwerk, in vielen Fällen einem WLAN-Router eures Internet-Zugangsanbieters, mit einem Kabel verbindet, ist es zunächst noch nicht bekannt unter welcher IP-Adresse das neue Gerät angemeldet ist.
Steckt also die präparierte SD-Karte an euren Raspberry Pi, verbindet diesen mit einem Netzwerkkabel an den Router und verbindet ihn mit dem Strom um ihn erstmalig einzuschalten. Per DHCP bezieht sich das Gerät automatisch eine IP-Adresse. Am einfachsten findet ihr diese heraus, wenn ihr euch mit eurem Heimrouter verbindet und einloggt. Auf jedem Gerät gibt es eine Übersicht der verbundenen Geräte. Das neue Gerät, üblicherweise mit dem Namen „raspberrypi“ ist das, was wir suchen. Notiert euch die IP-Adresse.

Alle weiteren Schritte werden nun mittels SSH vorgenommen. Unter Linux wäre dies:

ssh pi@192.168.2.104

Die IP-Adresse hinter dem @ ersetzt ihr mit der bereits notierten Adresse.
Windows Benutzer können anstatt der Kommandozeile am besten den SSH-Client Putty benutzen.

Erste Einrichtung des Raspberry Pi

Nachdem die Verbindung über SSH geglückt ist, gebt zur Einrichtung des Betriebssystems ein:

sudo raspi-config

Bei Nachfrage eines Passworts bei Eingabe gilt im Folgenden immer: Standarbenutzer ist „pi“, das Passwort lautet bei Einrichtung immer „raspberry“.

Ansicht Raspi-Config Seite 1

Wählt aus „Expand Filesystem“. Dadurch wird der gesamte freie Speicherplatz der SD-Karte für Raspbian genutzt. Außerdem könnt ihr noch unter „Internationalisation Options“ eure bevorzugte Sprache und Zeitzone auswählen. Dann geht es weiter unter „Advanced Options“.

Ansicht Raspi-Config Seite 2

Wählt die „Memory Split“ Option aus. Hier kann man auswählen, welcher Teil des RAM für die Grafik verwendet werden soll. Da wir nur Musik hören wollen, der Raspberry Pi über keinen Bildschirm verfügt und wir keine grafische Oberfläche benutzen, kann man hier den niedrigsten Wert „16“ angeben. Dies lässt sich auf dem gleichen Weg später wieder ändern.
Beendet den Einstellungsdialog und speichert die Änderungen.

Statische IP-Adresse für den Musik Server vergeben

Unser Gerät sucht sich per DHCP automatisch eine IP-Adresse und wir haben diese zur ersten Einrichtung herausgefunden. Nun wollen wir aber eine statische Adresse für den Raspberry Pi, damit sich die Adresse nicht willkürlich ändert.
Hier ist es am einfachsten wieder das Menü eures WLAN-Routers zu verwenden. Meldet euch dort an und schaut auf die Übersicht der verbundenen Geräte und schreibt euch die MAC-Adresse eures Raspberry Pi auf. Alternativ findet ihr auch die MAC-Adresse direkt wenn ihr per SSH mit dem Pi verbunden seid und eingebt:

ifconfig

Die erste Zeile hinter „eth0“ und Ethernet Hardware Adresse, ist die MAC-Adresse.
Sucht bei euren Routereinstellungen etwas wie „Statisches DHCP“. Dort könnt ihr der MAC-Adresse eures Geräts eine IP-Adresse zuordnen, die dieses Gerät fortan immer benutzen wird.

Installation des Musikservers

Als Musikserver benutzen wir eine Software namens MPD. Diese und einige weitere Programme müssen mit installiert werden.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install mpd nano alsa-utils usbmount

Die Installation schließt vermutlich mit einigen Fehlern ab, die nur für IPv6 relevant sind. Dies stört uns im Augenblick nicht.

sudo nano /etc/mpd.conf

Öffnet eine Textdatei in der alle Einstellungen unseres Musikservers gespeichert sind. Folgende Zeilen müssen angepasst werden:

music_directory "/home/pi/music
bind_to_address         "any"
audio_output [ device „hw:1,0“ (für die USB-Soundkarte hier eingeben, sonst bleibt es bei 0,0)
mixer_type „software“ (# am Zeilenanfang entfernen)
replaygain „album“ (für Lautstärkenanpassung)
volume_normalization „no“ (Audiophile schalten das lieber aus)
follow_inside_symlinks          "yes"
auto_update "yes"

Beendet nano dann mit Strg + X und speichert die Einstellungsdatei.
Da wir oben ein anderes Musikverzeichnis angegeben haben, müssen wir dieses nun auch noch erstellen. Wechselt in das Heimverzeichnis des Benutzers „pi“ und erstellt ein neues Verzeichnis.

cd /home/pi
mkdir music

Anschließend wechseln wir in das neu erstellte Verzeichnis und setzen einen Symlink.

cd /home/pi/music
sudo ln -s /media/usb0 usb0

Bei der Installation von mpd haben wir weiter oben bereits ein Tool namens „usbmount“ mitinstalliert. Dieses erkennt automatisch eingesteckte USB-Sticks und bindet diese unter /media/usb0 bis 9 ein. Da das neueste Modell des Raspberry Pi vier USB-Anschlüsse besitzt, macht es durchaus Sinn hier gleich mehrere Verknüpfungen anzulegen, falls mehrere Datenspeicher angeschlossen werden:

sudo ln -s /media/usb1 usb1
sudo ln -s /media/usb2 usb2

Der erste USB-Stick ist dann also unter usb0 eingebunden, der Zweite unter usb1 usw. Mit dem letzten Befehl haben wir eine Verknüpfung in unserem Musikverzeichnis erstellt, die auf einen USB-Stick verweist, sofern einer eingesteckt ist. Durch die weiter oben gewählte Option „Auto-Update“ aktualisiert MPD automatisch die Musikbibliothek mit allen erkannten Musikdateien, die sich auf eingesteckten USB-Speichern befinden.

Anschließend setzen wir zur Sicherheit nochmal die Berechtigungen auf unser Musikverzeichnis:

chmod -R 755 /home/pi/music/

Jetzt könnt ihr euren Raspberry Pi einmal neu booten und euer Musikserver ist betriebsbereit.

sudo reboot

 Den Musikserver steuern

Die Einrichtung von MPD hat soweit geklappt, doch wie steuert man nun das Gerät, nachdem der Raspberry Pi über keine Tastatur und Bildschirm verfügt? Über euren Heimrouter habt ihr glücklicherweise eine Reihe von Möglichkeiten:

  • qmpdclient – (Linux) ein weiterer Player den ihr wie Gnome Music Player auch einfach über eure Paketverwaltung installieren könnt
  • MPD Remote – (Android) für die Steuerung mit eurem Smartphone über das WLAN eures Heimrouters
  • Für eine Liste weiterer Clients siehe Webseite des MPD Projekts.

Wie bekomme ich Musik auf den Raspberry Pi?

  • Am einfachsten indem ihr einen USB-Stick anschließt. Die Musik mit der oben genannten Einstellung automatisch erkannt und kann vom Stick aus abgespielt werden. Ihr könnt die Dateien natürlich auch normal kopieren wenn ihr euch mit Kommandozeile etwas auskennt (wenn nicht probiert mal „sudo apt-get install mc“ und startet mit „mc“ für einen einfachen Dateiexplorer der über SSH funktioniert).
  • Mit vielen Dateiexplorer-Programmen könnt ihr auch eine Verbindung zum Dateisystem eures Raspberry Pi über SSH herstellen und dann Dateien dorthin kopieren. Dies wären unter Linux zum Beispiel „Krusader“ für KDE, oder „Gigolo“ für Gnome oder XFCE.

Was sonst kann ich mit dem Raspberry Pi Musikserver nun machen?

  • Einen WLAN-Stick anschließen. Insbesondere dann, wenn eure Stereoanlage weit von eurem Router entfernt liegt. Zur  Einrichtung von WLAN auf dem Raspberry Pi gibt es ebenfalls gute Anleitungen im Internet. Ich werde demnächst eine Anleitung hier veröffentlichen, mit der ich beste Erfahrungen gemacht habe.
  • Weitere Dienste einrichten. Mit MPD alleine ist euer Raspberry Pi noch lange nicht ausgelastet. Auf dem gleichen Gerät könnte man beispielsweise noch gut andere Dienste unterbringen wie: Netzwerkspeicher, NAS- und Backupserver, Owncloud, selbst ein kompletter Medienserver mit Internet-TV ist möglich.

Nachtrag vom 06.12.2014

Seit der Einführung des Modells Raspberry Pi B+ und 2 ist es nun nicht mehr notwendig einen externen USB-Hub zu benutzen. Das Modell verfügt neuerdings über vier USB-Anschlüsse und bedeutet für dieses Setup konkret, daß neben der externen Soundkarte und WLAN-Stick zwei externe Speichermedien angeschlossen werden können.
Siehe dazu auch den Beitrag „Was ist neu beim Raspberry Pi B+„.

Nachtrag vom 27.10.2020

Mittlerweile hat die vierte Edition des Raspberry Pi den Markt erreicht und ist den Vorgängermodellen an Leistung deutlich überlegen. Selbst die abgespeckte Basisversion des Raspberry Pi Zero reicht für den oben beschriebenen Einsatzzweck aus. Nur bezüglich der Konnektivität mittels MicroUSB müsste man den Einsatz einer externen Soundkarte neu überlegen. Diese würde ich für den ungetrübten Musikgenuß aber nach wie vor sehr empfehlen.

Quellen:


Weitere Artikel zu Raspberry Pi

23 Gedanken zu „Raspberry Pi als Internetradio und Musikplayer einrichten“

  1. hallo,
    bin seit Stunden daran, mit dem win32 Images das Images auf die SD Karte zu installieren.
    Er schreibt zwar und schließt da Programm als fertig ab. aber nichts auf der SD Karte.
    Habe mehrere SD Karten verwendet, kein Erfolg.
    Grüße Günter

    Antworten
    • Hallo,
      können Sie versuchen win32 Images mit Administratorrechten auszuführen?
      Dazu sollte man beachten, daß Windows nicht in der Lage ist, die unter Linux gebräuchlichen Dateisystemformate zu lesen. Daher sieht man mit Windows nichts.

      Antworten
  2. Hallo,
    die Anleitung kam mir sehr verständlich vor, darum habe ich versucht, sie umzusetzen.
    Leider stimmen die beiden Links zu „Gnome Music Player“ und „qmpdclient“ nicht mehr.
    Was mich ebenfalls irritiert hat: wenn ich auf meinem Raspi das Programm starten will, finde ich nichts im „Startmenü“. Habe ich etwas in der Beschreibung übersehen?
    Auch nach Installation von „MPD Remote“ kann ich dort keine Dateien finden. Was habe ich evtl. falsch gemacht?

    Antworten
    • Vielen Dank für den Hinweis auf die mittlerweile ungültig gewordenen Links. Diese wurden sogleich aktualisiert.

      Das mittlerweile recht üppig ausgestattete Raspberry Pi macht es natürlich möglich eine graphische Oberfläche und Windows Manager darauf zu installieren. Bei dem in der Anleitung verwendeten MPD (music player daemon) handelt es sich aber um einen im Hintergrund ablaufenden Systemdienst. In der Anleitung wird davon ausgegangen, daß das Raspberry Pi „headless“ d.h. ohne graphische Oberfläche betrieben wird. Dafür gibt es keinen Eintrag im Startmenü. Das Programm oder Frontend, mit welchem der Dienst gesteuert wird, dafür gibt es etwas im Startmenü. Üblicherweise wird dieser allerdings von einem anderem Gerät ausgeführt und es müssen die Verbindungsdaten des laufenden MPD eingegeben werden (die IP-Adresse des Raspberry Pi).

      Antworten
    • Mit der Android App MPD Remote soll das auch per Bluetooth funktionieren. Leider konnte ich das bisher noch nicht testen. Falls du da Erfahrung damit machen konntest wäre ich aber sehr interessiert.

      Antworten
    • Es kommt auf deine Anforderungen an. Diese heißt hier: Internetradio und nicht Heimkinosystem. Kodi spielt nebenbei auch Musik, keine Frage. Aber als Hifi- und Musikserver, eventuell gekoppelt mit einem NAS, ist mpd einfach die komfortablere Variante und besser erweiterbar.

      Antworten
    • Hallo,

      das wurde schon einmal weiter unten gefragt. Als Output kann mit mpd nicht nur die Soundkarte, sondern auch ein Stream eingestellt werden. Anleitungen dafür findest du hier und hier

      Antworten
  3. Hallo, gibt es eine Möglichkeit, dass der RPi auch von einer externen HDD Musik einliest? Auf meiner externen Festplatte befinden sich neben der gewünschten Musik noch andere Ordner und Dateitypen. Hättest du auch hierzu einen Lösungsansatz?

    Danke im voraus.

    PS ich nutze den Raspberry Pi 3b

    Antworten
    • Hallo Aron,

      selbstverständlich geht das. Es steht sogar in diesem Artikel wie. Sieh mal weiter oben. In der Konfiguration wird angegeben wo sich auf dem Pi das Musikverzeichnis befindet. Später wird im Musikverzeichnis ein Symlink für „usb0“ hinzugefügt. usb0 ist das erste USB-Gerät, das angeschlossen wird, dann usb1, usb2 und so weiter. Falls nötig müsstest du nach obenstehender Methoden einfach weitere Symlinks hinzufügen. Deine USB-Festplatte wird dann automatisch in eines der Verzeichnisse eingehängt. Hoffe damit klappt es!

      Antworten
  4. Also mein Raspberry geht mit nem Webserver ganz bestimmt nicht in die Knie. Ich habe den B+ 😉

    Distribution ist Raspbian

    Software-Setup :

    Webserver Apache
    FTP-Server ProFTPd
    PHP5
    MySQL
    Python
    Perl …
    etc.

    Zumindest die neueren Raspberries ( B, B+ ) dürften mit nem Webserver so oder so nicht in die Knie gehen, weil die GPIO-Geschichte sich auch über eine Weboberfläche mit PHP steuern lässt – für die Weboberfläche ist ein Server von großer Bedeutung. 😉

    Antworten
  5. Hallo,
    ich versteh nicht wie ich von einem anderen PC (z.B. in Holland) auf den Raspberry zugreifen kann um auch Musik zuhören … Wie geht das?

    LG

    Antworten
    • Hallo Tim,
      in der hier aufgeführten Konfiguration wird die Musik ja nur an den Audioausgang gesendet. Für deine Zwecke mußt du /etc/mpd.conf modifizieren um das Audiosignal zusätzlich über das Internet zu streamen.
      Hier hat das jemand mit einem Stream via Icecast gelöst: http://news.softpedia.com/news/Streaming-Audio-Using-MPD-and-Icecast-52181.shtml
      Außerdem relevante Wiki-Seite: http://www.musicpd.org/doc/user/output_plugins.html#shout_output
      Ersterer Link empfiehlt sogar den Einsatz eine webbasierten Players. Das kann man sich auch sparen wenn man eines der Programme oder Apps benutzt, die der Artikel auflistet. Mit einem Webserver könnte der Raspberry schon in die Knie gehen.
      Als zweites ist es erforderlich, daß man den Zugang von außen auch ermöglicht, zum Beispiel durch Port-forwarding falls der Raspberry Pi hinter einem Router zuhause hängt. Das ist etwas Arbeit aber MPD macht es möglich.

      Antworten
  6. Hallo,
    die Anleitung erklährt sehr uumfangreich die einrichtung des Raspberry Pi. Leider habe ich keine mir nützlichen Infos zum Webradio finden können. Ich wünsche mir eine anleitung, die mir sagt, wie Ich der raspberry Pi ohne bildschirm , usw. als webradio nutzen kann. Wie baut man ein funktionierendes Radio auf, das zum Beispiel über zwei an den GPIO-Ports angeschlossenen Taster gesteuert werden kann.
    Viele Grüßen Paul

    Antworten
    • Hallo Paul,
      danke für dein Kommentar und ich hoffe die Anleitung hat ein wenig geholfen, auch wenn du nicht alles gefunden hast was du suchtest. Wünsche kannst du natürlich gerne äußern, aber ich denke über die Ansteuerung von GPIO-Ports findest du an anderer Stelle im Netz mit Sicherheit etwas. Wie das Radio sonst gesteuert wird steht ja im Artikel – zum Beispiel mittels einer App.

      Antworten

Schreibe einen Kommentar