Raspberry Pi – Musik auf der Stereoanlage wiedergeben

Einen Raspberry Pi kann man mit ein paar kleinen Handgriffen zu einem Musik-Streaming-Server konfigurieren und mit einem 3,5mm-Klinkenstecker an einer Stereoanlage anschließen. Für das Musikmanagement und das Abspielen wird MPD (= Music Player Daemon) verwendet. Bereits 2013 habe ich dazu einen ➡ Beitrag geschrieben, das ist nun ein Update.

  1. MPD und erforderliche Programme installieren
  2. Soundeinstellungen anpassen
  3. Musikverzeichnis anpassen
  4. Musikverzeichnis auf einen externen Speicher auslagern
  5. MPD Clients
  6. Auremo – ein grafischer Client für Windows
  7. npcm – Client für die Konsole
  8. Client für das iPhone
  9. Client für Android
  10. MPD und Spotify
  11. Soundausgabe über HDMI

Nach wie vor nutze ich ALSA, wie bereits 2013, da das bei mir nach wie vor ohne Probleme läuft und es nach den Updates des Betriebssystem Raspberry Pi OS zu keinen Komplikationen gekommen ist. Der Pi läuft und läuft und läuft und spielt natürlich Musik ab.

MPD und erforderlichen Programme installieren

Auf dem Raspberry Pi werden ein paar zusätzliche Programme benötigt, die sich aus Repositories sehr einfach installieren lassen.

sudo apt update && sudo apt dist-upgrade
sudo apt install mpd mpc alsa-utils


Nachdem mein Raspberry Pi nach wie vor über einen Klinkenstecker an meiner alten Stereoanlage hängt, benutze ich seit 2013 immer noch “alsamixer”. Nach wie vor funktioniert das mit den gleichen Einstellungen wie damals.

sudo modprobe snd_bcm2835
sudo alsamixer cset numid=3 1

Damit sollte der Sound ausgegeben werden.

sudo alsactl store

Die Lautstärke könnt ihr ganz einfach über die Konsole regeln, lauter und leiser lassen sich mit den Pfeiltasten einstellen.

alsamixer
alsamixer - Laustärke regeln
alsamixer – Laustärke regeln

Im nächsten Abschnitt gehts mit der Konfiguration des mpd weiter

MPD wird in der Datei /etc/mpd.conf konfiguriert. Bevor ihr Anpassungen an der Datei vornehmt, erstellt zur Sicherheit eine Kopie

sudo cp /etc/mpd.conf /etc/mpd.conf-bak

Nun kann der MPD angepasst werden.

sudo nano /etc/mpd.conf

Soundeinstellungen anpassen

Im Abschnitt “audio_output” ist alsa zu konfigurieren.

audio_output {
        type            "alsa"
        name            "My ALSA Device"
        device          "hw:0,0"        # optional
#       format          "44100:16:2"    # optional
#       mixer_device    "default"       # optional
#       mixer_control   "PCM"           # optional
#       mixer_index     "0"             # optional
} 

Musikverzeichnis anpassen

MPD sucht Musik- und Playlist-Dateien standardmäßig in den beiden Verzeichnissen:

  1. /var/lib/mpd/music/ nach Musik
  2. /var/lib/mpd/playlists/ nach Playlisten und Radio-Streams

Da die Verzeichnisse unter /var befinden hat der normale Benutzer keinen Schreibzugriff darauf. Es ist nur ein Schreibzugriff mit “sudo” zugelassen. Möchtet ihr die Musik öfters aktualisieren bzw. ändern ist das ggf. nicht ganz so komfortabel.

Wenn ihr nur als einziger Benutzer auf den Pi zugreift und es keine weiteren Sicherheitsrisiken gibt, könnt ihr die Verzeichnisse auch “umlegen” in das Home-Verzeichnis eures Benutzers. Dazu legen wir einfach zwei neue Ordner an.

mkdir /home/benutzer/Musik/dateien
mkdir /homebenutzer/Musik/playlists

Anschließend tragen passen wir /etc/mpd.conf und tragen die neuen Verzeichnisse ein.

sudo nano /etc/mpd.conf

Sucht in der Datei nach den zwei Zeilen und tragt die neuen Verzeichnisse dort ein.

music_directory "/home/benutzer/Musik/dateien"
playlist_directory "/homebenutzer/Musik/playlists"

Ihr könnt die Dateien und eure Playlists und Radiostreams in die beiden Verzeichnisse laden.

Zum Abschluss ist der MPD-Server neu zu starten und die Datenbank zu aktualisieren:

sudo systemctl restart mpd
mpc update

Dann könnt ihr schon Musik über den Raspberry Pi und eure Stereoanlage hören .

Den Status von “mpd” könnt ihr ganz einfach über die Konsole abfragen.

mpc

Musikverzeichnis auf einen externen Speicher auslagern

Ist eure Musikbibliothek zu groß für die SD-Karte oder möchtet ihr die Zugriffe auf diese nicht noch durch die Zugriffe auf eure MP3-Sammlung belasten, könnt ihr auch einen externen Speicher verwenden.

Ich habe meine Musik auf einen kleinen USB-Stick (*) mit viel Speicherplatz ausgelagert, da

  • der nicht viel Platz benötig
  • da keine spezielle Stromversorgung notwendig ist
  • die Lese- und auch die Schreibgeschwindigkeit mehr als ausreichend sind.

Anzeige/Werbung

Wie man einen externen Datenträger mountet habe ich im Beitrag ➡ Nextcloud auf dem Raspberry Pi beschrieben.

Der USB-Stick soll über den Mount Point “/mnt/usb” eingebunden werden. Dieser wird erstellt mit:

sudo mkdir /mnt/usb

Der Eintrag in der “etc/fstab” sieht dann so aus.

#USB-Stick
UUID=123456 /mnt/usb ntfs defaults,auto,umask=000,users,rw 0 0

Je nach dem wie ihr die Ordner für Musik und Playlists/Streams einrichtet, müsst ihr die Einträge in der /etc/mpd.conf anpassen.

Eine weitere Möglichkeit für die Ablage eurer Musikbibliothek ist ein NAS, z.B. das FRITZ!Box NAS. Die Möglichkeit beschreibe ich in diesem Blogeintrag AVM NAS als Festplatte bei Raspberry Pi als Festplatte mounten

Wenn ihr ein paar Radio-Streams braucht, habe ich hier ein paar Beispieldateien für euch zum Herunterladen.

Radiostreams dem MPD-Server hinzufügen

MPD Clients

Auremo – ein grafischer Client für Windows

Der MPD lässt sich sehr einfach mit “Auremo” steuern. Das letzte Update gab es im Februar 2016, jedoch funktioniert es nach wie vor.

https://archive.codeplex.com/?p=auremo

npcm – Client für die Konsole

Ihr könnt MPD auch sehr einfach mit einem PuTTY direkt über die Konsole steuern. Dazu ist auf dem Raspberry Pi das kleine Tool “ncmpc” zu installieren.

sudo apt install ncmpc

Danach könnt ihr das kleine Tool per SSH von jedem Client z.B. via PuTTY aufrufen und den MPD steuern.

Client für das iPhone

Auf dem iPhone habe ich mal den Client Rigelian ausprobiert. Der hat ganz gut funktioniert und der MPD lässt sich vernünftig damit steuern.

‎Rigelian
‎Rigelian
Entwickler: Katoemba
Preis: Kostenlos+

Client für Android

In Googles Play Store gibt es nach wie vor den gleichen Client, den ich bereits 2013 auf meinem damaligen Android-Gerät genutzt habe. Getestet habe ich die Client aber seit einigen Jahren nicht mehr.

MPDroid
MPDroid
Entwickler: namelessDev
Preis: Kostenlos

Weitere MPD-Clients habe ich nicht ausprobiert.
Ein Übersicht von Clients gibt es auf der offiziellen Website des Projekts.

MPD und Spotify

Ihr könnt dieses Setup auch verwenden, um über den gleichen Raspberry Pi euren Spotify Stream abzuspielen. Ihr könnt dann entweder MPD abspielen oder Spotify. Die Ausgabe erfolgt dabei über den Klinkenkstecker.

Eine Anleitung für die Konfiguration findet ihr ebenfalls hier im Blog
Spotify über den Raspberry Pi abspielen

Für Besitzer einer Apple Watch gibt es dabei auch noch ein nettes Feature in Verbindung mit der Uhr. Die Wiedergabe lässt sich ganz bequem vom Handgelenk aus steuern ohne jedesmal das Smartphone zu Hand nehmen zu müssen.

Spotify-Wiedergabe mit der Apple Watch steuern
Spotify-Wiedergabe mit der Apple Watch steuern

Soundausgabe über HDMI

Ihr könnt den Sound des Raspberry Pis auch über “HDMI” ausgeben und dann über andere Wege an eure Stereoanlage übergeben. Mit einem Converter könnt ihr Audio von HDMI z.B. über S/PDIF übertragen. Diesen Weg habe ich mit MPD noch nicht ausprobiert und es gibt wahrscheinlich auch elegantere Lösungen.

Ich nutze so einen ähnlichen Converter an einem Amazon Fire-TV-Stick. Das Audio-Signal wird vom HDMI entnommen und per S/PDIF an die Stereoanlage übergeben, das Bildsignal wird dabei weiterhin über HDMI an den Fernseher übertragen.

Angebot

Bildquelle: Gemeinfrei-ähnlich freigegeben durch unsplash.com Nikolai Chernichenko

(**) Produktpreise und -verfügbarkeit sind zum angegebenen Datum / Uhrzeit korrekt und können sich ändern. Alle Preis- und Verfügbarkeitsinformationen auf https://www.amazon.de/ zum Zeitpunkt des Kaufs gelten für den Kauf dieses Produkts.

2 Antworten auf „Raspberry Pi – Musik auf der Stereoanlage wiedergeben“

  1. Hm, die Eingabe von
    sudo amixer cset numid=3 1

    ergibt bei mir
    amixer: Cannot find the given element from control default

Schreibe einen Kommentar

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