In dieser kleinen Anleitung geht es darum, einen MPD-Server (Music Player Daemon-Server) auf dem kleinen Raspberry Pi zu installieren.
Der MPD-Server erlaubt es euch an einer zentralen Stelle Musik ab zu spielen oder auch über das Netzwerk zu streamen. Ihr könnt den Pi an eurer Stereoanlage anschließen und per Smartphone auswählen, welche Musik aus den Lautsprechern kommen soll.
Eine aktualisierte Version des Beitrags gibt es hier ➡ Raspberry Pi – Musik auf der Stereoanlage wiedergeben
Bei der Konfiguration meines Pis gab es ein paar kleiner Problemchen, vor allem mit der Soundwiedergabe über ALSA und den Klinkenstecker, aber nun mal von vorne.
MPD befindet sich in den Repositories und lässt sich deshalb ganz einfach über die Konsole installieren. Ich habe in diesem Schritt auch gleich noch die „alsa-utils“ für die Soundwiedergabe mit installiert.
sudo apt-get install mpd mpc alsa-utils
Nach der Installation gilt es ALSA zu konfigurieren. Das funktioniert mit den beiden Befehlen:
sudo modprobe snd_bcm2835 sudo amixer cset numid=3 1
Nach diesem Eingriff in die Konfiguration sollte die Soundwiedergabe funktionieren und wir können uns dem MPD-Server widmen. Zuvor sollte die ALSA-Einstellung aber gespeichert werden, da diese sonst bei jedem Neustart zurückgesetzt wird und damit wahrscheinlich kein Ton aus den Lautsprechern kommen würde. Der Befehl zum speichern lautet:
sudo alsactl store
Die Konfigurationsdatei für MPD ist hier zu finden /etc/mpd.conf. In dieser Datei gilt es ein paar kleiner Anpassung vorzunehmen. Die Datei ist am Besten via nano-Editor über die Konsole zu editieren
sudo nano /etc/mpd.conf
Erreichbarkeit über das Netzwerk
Damit der MPD-Server auch über das Netzwerk erreichbar ist, ist die Zeile „bind_to_address“ aus zu kommentieren:
Soundeinstellungen anpassen
Die folgenden Zeilen sind so anzupassen:
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 }

Steuern des MPD-Servers via Webbrowser
Der MPD-Server verfügt über die Möglichkeit zur Steuerung via Webbrowser. Diese Funktion muss man aber zuerst in der „mpd.conf“ freischalten:
Nach einem Neustart, kann über http://ip-adresse:8000 gesteuert werden.
Musikverzeichnis anpassen
Standardmäßig prüft MPD die beiden Verzeichnisse:
- /var/lib/mpd/music/ auf Musik
- /var/lib/mpd/playlists/ auf Playlisten
Man kann aber die beiden Verzeichnisse auch abändern, um die Musik im Home-Verzeichnis abzuspeichern. Dafür ist in der „mpd.conf“ der Eintrag entsprechend abzuändern.
Alternativ könnt ihr die Rechte für die Standardverzeichnisse anpassen:
sudo chmod g+w /var/lib/mpd/music/ /var/lib/mpd/playlists/ sudo chgrp audio /var/lib/mpd/music/ /var/lib/mpd/playlists/
Zum Abschluss ist der MPD-Server neu zu starten und die Datenbank zu aktualisieren:
sudo /etc/init.d/mpd restart sudo mpc update
Android
Zum Steuern des MPD mit meinem Smartphone verwende ich die APP MPDroid.
Als MPD-Client auf dem Android-Smartphone verwende ich nicht mehr MPDroid sondern Droid MPD Client
Windows
Zum Steuern von MPD von einem Windows Betriebssystems aus verwende ich das kleine Tool „Auremo MPD Client“ ➡ https://archive.codeplex.com/?p=auremo.
Die Entwicklung scheint ein wenig eingeschlafen zu sein, aber es funktioniert nach wie vor ohne Probleme.
Update
Während einer erneuten Installation von MPD bin ich etwas von der obigen Anleitung abgewichen.
Anstatt die Aktualisierung der Datenbank mit „sudo“ zu starten habe ich dies mit dem ganz normalen Benutzer durchgeführt.
mpc update
Gib mir gerne einen Kaffee ☕ aus!
Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.
bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj
Bildquelle: Gemeinfrei-ähnlich freigegeben durch unsplash.com Yomex Owo

ist absolut technik-begeistert und großer Fan von Linux und Open Source. Raspberry Pi Bastler der ersten Stunde und nach wie vor begeistert von dem kleinen Stück Hardware, auf dem er tolle Projekte umsetzt. Teilt hier seine Erfahrungen mit Nextcloud, Pi-hole, YubiKey, Synology und openmediavault und anderen spannenden IT-Themen. Nutzt Markdown und LaTeX zum Dokumentieren seiner Projekte und Gitea zum Versionieren. Sitzt vor einem 49“ Monitor, nutzt Windows und MacOS zum Arbeiten, Linux auf seinen Servern und virtuellen Maschinen und hört dabei Spotify und MP3s und Radio-Streams über seinen RadioPi.
Wenn ich sudo mpc update eingebe kommt:connection refused
Hallo,kannst du wirklich den MPD per Webbrowser steuern? Wenn ich den httpd Block in der Config aktiviere, dann kann ich z.B. per VLC erfolgreich den abgespielten Track per HTTP-Stream empfangen, so wie es der Name auch suggeriert. Allerdings gibt es kein Webinterface, mit dem man den MPD unter diesem Port steuern kann. Hast du es mal selbst ausprobiert?GrüßeThomas
Hallo Thomas,
natürlich habe ich es ausprobiert, ob man den MPD-Server via Webbrowser steuern kann.
Das funktioniert bei mir nach wie vor noch wunderbar und ohne Probleme.
Hey,ich wollte mal fragen, wie sieht es damit aus, diesen Stream an andere Pis oder sonstige Endgeräte zu „senden“ also kann ich z.B. mit meinem zweiten Pi diesen Stream auch empfangen und am zweiten Pi wiedergeben lassen?Michael
Hallo Michael,
das ist eine gute Frage. Damit habe ich mich aber noch nicht befasst.
Wenn du eine Lösung gefunden hast, wäre es sehr nett, wenn du eine kurze Info hier postest.
Grüße
Stefan
Hallo Stefan,
ich bedanke mich für deine grandiose Anleitung. Es hat bei mir alles ohne Probleme sofort funktioniert und bin sehr glücklich darüber.
Danke sehr.
Gruß
Michael F.
Hallo Stefan,
alles soweit Gut,nur das der Empfang nach einer gewiessen Zeit so 10 Stunden abreisst und ich den Raspi neu start muss. Egal welche Uhrzeit ich ihn an mache immer genau 10 Stunden 8 Minuten und 40 Sekunden ist ende.
Wisst Du da eine Rat wo ran es liegen könnte?
Danke schon mal lm vorraus.
mfg Bolle
Hallo Bolle,
keine Ahnung an was das liegen könnte.
Du könntest als Quickfix den mpd daemon oder gar den ganzen Pi mit Hilfe eines Cron Jobs nach einer definierten Zeit neustarten lassen.
Grüße
Stefan
Stefan
Hallo Stefan,
wollte zuerst nicht glauben, dass der HTTP-Stream auch direkt im Brower über den unter audio_output(
….
} definierten Port steuerbar ist. Das hatte ich nie ausprobiert, da es ein http-Protokoll ist liegt es allerdings nahe, das ein Browser damit etwas anfangen kann. Allerdings kann nur der laufende Titel/Playlist pausiert / gestartet die Lautstärke verändert werden. Eigentliches Zeil des Http-Stream-Outputs ist es aber, wie von Michael bereits angedeutet, darüber einen Stream z.b. auf einem Internetradio wiederzugeben. Ich habe eine solche Lösung mit mehreren parallel laufenden MPD-Instanzen (jeder in der Familie hat ’nen eigenen Stream per eigener mpd-instanz mit eigener *.conf) auf einem AMD64-Debian-Server laufen. Als Frontend nutzen wir hautsächlich das Smartphone und die M.A.L.P-App unter Android, das kann dann die verschiedenen Ports per umschaltbarem Profil bedienen.
Grüße
Joe