MPD
MPD ist ein OpenSource-Music Player Daemon, der mit einem einfachen Netzwerkprotokoll fernsteuerbar ist und auf dem Server MP3s u.ä. abspielt und die MP3-Datenbank verwaltet.
MPD Server
Basiskonfiguration
Konfiguriert wird der Server über die /etc/mpd.conf
.
Siehe auch
man mpd.conf
Will man über andere Computer auf den MPD zugreifen sollte
bind_to_address "any"
gesetzt werden. Für die Fehlersuche bietet sich an
log_level "verbose"
Arbeitet man mit symbolischen Verknüpfungen im Dateisystem bietet sich an,
follow_outside_symlinks "yes" follow_inside_symlinks "yes"
zu setzen.
Um bei großen Sammlungen den Zugriff von Clients wie Cantata, die den Protokollbefehl listallinfo
verwenden, zu ermöglichen, sollte der Ausgabepuffer hochgesetzt werden:[1]
max_output_buffer_size "819200"
Berechtigungen für Zugriff auf Song-Dateien
Wichtig ist, dass das in /etc/mpd.conf
als music_directory
angegebene Verzeichnis (im Normalfall /var/lib/mpd/music
) vom als user
angegebenen Benutzer (im Normalfall mpd
) gelesen werden kann (Dateien mindestens Read-Berechtigung, Verzeichnisse zusätzlich noch Ausführberechtigung).
Evtl. muss auch noch der Benutzer mpd
der Gruppe audio
hinzugefügt werden:
sudo usermod -aG audio mpd
und der Gruppe plugdev
bei Zugriff auf eingehängten Geräten oder Ubuntu:[2]
sudo usermod -aG audio mpd
Serverstart
Der Server wird so gestartet:
sudo service mpd start
Beim ersten Aufruf muss die Datenbank angelegt werden
sudo service mpd start-create-db
Um das Neuerzeugen der Datenbank zu forcieren, entfernt man die Datenbankdatei (siehe /etc/mpd.conf
):
rm /var/lib/mpd/tag_cache
Die Alternative dazu ist die Installation des Kommandozeilen-Clients mpc
und Ausführen des Befehls update
:
sudo aptitude install mpc mpc update
Beendet wird er so:
sudo service mpd stop
Ausgabe auf andere Soundkarte
Mittels des ALSA-Soundsystems verwendbare Soundkarten kann man sich folgendermaßen auflisten lassen:
aplay -L
Soll der MPD die Ausgabe auf eine andere Soundkarte ausgeben, ersetzt man im audio_output
-Block in der /etc/mpd.conf
das
device "hw:0,0"
durch die entsprechende Soundkarte, die mit aplay -L
ermittelt wurde, z.B.:
device "plughw:CARD=Device,DEV=0"
(Bei mir ist das eine Terratec AureonDualUSB-Soundkarte, die auch einen Digitalen Ausgang hat).
MPD als Userdienst auf Desktop-System
MPD funktioniert mit PulseAudio am besten als vom Desktop-Benutzer gestarteter Dienst.
Dazu muss in der /etc/default/mpd
dafür gesorgt werden, dass MPD nicht als Systemdienst gestartet wird:
START_MPD=false
Der Benutzer muss der Gruppe audio
hinzugefügt werden:
sudo adduser BENUTZER audio
Die Gruppe audio muss das PID-File schreiben können:
sudo mkdir /run/mpd sudo chgrp audio /run/mpd sudo chmod 775 /run/mpd
Die Gruppe audio muss in das Log-File schreiben können:
sudo mkdir /var/log/mpd sudo chgrp audio /var/log/mpd sudo chmod -R g+rwX /var/log/mpd
Schließlich muss auch noch auf die MPD-Datenbank und den Status zugegriffen werden können:
sudo chmod -R g+rwX /var/lib/mpd
Erweiterungen
mpd-sima
MPD-SIMA ermöglicht das Ergänzen der aktuellen Playlist mit ähnlichen Songs. Die Ähnlichkeit wird durch Abfragen bei Last.fm abgefragt.
Falls sich in /var/log/mpd-sima/mpd-sima.log
der folgende Fehler findet:
last.fm module error: 'XML not UTF-8 encoded!'
hilft wohl der Patch am Ende des einschlägigen Bugreports.
Mopidy Server
Ein zum Protokoll von MPD kompatibler Server ist Mopidy, der unter der Apache Lizenz 2.0 steht.
BPD Plugin für Beets
Das BPD Plugin für Beets emuliert einen Music Player Daemon.
Clients
Konsole
Der Standard-Client für die Konsole ist mpc.
Ncurses-basiert gibt es
- ncmpcpp
- ncmpc (weitgehend konfigurierbar)
Gnome
Der Gnome Music Player Client gmpc
unterstützt auch das Ändern von Playlists.
Android
- Der Droid MPD Client sieht gut aus, stürzt unter Android 2.1 auf einem ZTE Blade noch häufig ab.
- PMix läuft schon stabil, hat aber eine weniger hübsche GUI als Droid MPD Client.
Web
RompR
RompR ist ein WebClient für MPD/Mopidy, der angeblich auch auf dem Smartphone ansehnlich sei.
PhpMpReloaded =
PhpMpReloaded ist eine Zusammenfassung verschiedener WebClients für MPD.
Fookebox
Fookebox ist eine einfache Web-GUI für MPD.
Es lässt sich installieren mit
sudo aptitude install fookebox sudo a2enconf fookebox
Darauf zugreifen lässt sich über
http://localhost/fookebox
Eine zweite Anzeige (ohne Bedienmöglichkeiten) lässt sich über folgenden Link erreichen:
http://localhost/fookebox/program
Ampache
- Ampache ist ein Web-Frontend (nicht nur) für MPD.
- Installation des Pakets
ampache
- Basiskonfiguration via http://localhost/ampache
- Abspeichern der herunterzuladenden Datei unter
/etc/ampache/ampache.cfg.php
J2ME
Der Adapter Remuco für verschiedene Music Player stellt eine Verbindung über Bluetooth zu J2ME-Geräten her.
iOS
MPod ist kostenlos über Apples AppStore erhältlich.
Weiterführendes
Siehe Audio