MPD

Aus CodicaTipps
Zur Navigation springen Zur Suche springen

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

Mopidy Server

Ein zum Protokoll von MPD kompatibler Server ist Mopidy, der unter der Apache Lizenz 2.0 steht.

BPD Plugin für Beet

Das BPD Plugin für Beet 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