Music Player Daemon: Unterschied zwischen den Versionen
Die nötigen Einstellungen in der mpd.conf zur Ausgabe über Alsa und die Optionen zum Mischen meherer Soundquellen mit dmix hab ich geändert, so funktionierts bei mir, Quelle ist das englische ArchWiki |
Weltio (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 125: | Zeile 125: | ||
Der Befehl ''mpd --update-db'' existiert seit 0.12 nicht mehr! | Der Befehl ''mpd --update-db'' existiert seit 0.12 nicht mehr! | ||
== Probleme == | |||
'''Problem''': Der Client überspringt Titel aus der Playlist | |||
'''Lösung''': MPD das Charset des Dateisystem mitteilen. Dazu in die '''/etc/mpd.conf''' (beispielsweise für UTF8 und damit Umlaute) folgendes Eintragen: | |||
filesystem_charset "UTF-8" | |||
== GUI/Client == | == GUI/Client == |
Version vom 23. März 2009, 12:52 Uhr
MPD ist ein Audio-Player mit einer Server-Struktur. Er läuft im Hintergrund als Daemon, besitzt eine Playlistverwaltung und eine Musik-Datenbank.
Installation
Um mpd zu installieren, muss man das folgenden Befehl ausführen:
pacman -Sy mpd
Anschließend erstellt man ~/.mpd und ~/.mpd/playlists
mkdir ~/.mpd/ mkdir ~/.mpd/playlists
Konfiguration
Bevor man mpd startet, muss man die Konfiguration bearbeiten. Diese befindet sich unter
/etc/mpd.conf.example
Dies ist die Beispielkonfiguration, die man für systemweit gültige Einstellungen als /etc/mpd.conf speichern muss. Sollen die Einstellungen nur für einen bestimmten User gelten, muss man die Datei in seinem home-Verzeichnis als .mpdconf speichern.
Tipps
Empfehlenswert ist es, mpd als User laufen zu lassen. Hierfür setzt man einfach seinen Benutzernamen in die User-Variable:
user "username"
Je nach Konfiguration ist es allerdings besser den MPD unter dem MPD-User "mpd" laufen zu lassen. Auf diese Weise umgeht man Berechtigungsprobleme bei einem MPD-Update.
Ratsam ist es in diesem Fall allerdings auch, das Musikverzeichnis für den Benutzer "mpd" und die Gruppe "audio" zu "chown'en". Auf diese Weise kann der User "mpd", sowie jeder User der Gruppe "audio" (sofern die Gruppenrechte auf mindestens "lesen" gesetzt wurden), auf das Verzeichnis zugreifen.
Benutzt man Alsa, und will mpd auch über Alsa betreiben, kann man die Konfigurationsdatei so belassen wie sie momentan ist. Wenn man noch esd oder einen anderen Soundserver installiert hat, verkompliziert sich die Sache. Dann sollte Alsa als Ausgabegerät angeben. Die nötigen Einstellungen sind:
audio_output { type "alsa" name "My ALSA Device" options "dev=dmixer" # optional zum Mischen mehrerer Soundquellen mit dmix device "plug:dmix" # #format "44100:16:2" # optional }
mixer_type "alsa" mixer_device "dmix" mixer_control "PCM"
Mehr Infos über dmix (bei Alsa für das Mischen mehrerer Soundquellen zuständig) findet man im Gentoo-Wiki
Dolby Digital / DTS
Hierfür benötigt man spezielle Hardware. Diejenigen die sie haben, wissen es.
Hinweis: Diese Konfigurationsmöglichkeit besitzt keine Soundmixingeigenschaften, was an ALSA liegt. Dem Autor ist keine Möglichkeit bekannt ALSA diese Eigenschaft bei dem AC-3-Output "beizubringen". Das Programm, welches einen AC-3 Stream erzeugt (z.B. MPD in diesem Fall), erzeugt/benötigt einen exklusiven Zugriff auf das Audio-Device.
Möchte man, dass der MPD die Musik als Dolby-Digital-Stream (AC-3) abspielt, muss man wie folgt vorgehen:
1.
pacman -S alsa-plugins
Dies installiert das notwendige a52 Alsa-Plugin um einen AC-3-Stream zu erstellen.
2. ~/.asoundrc oder /etc/asound.conf setzen
pcm.a52encode { type a52 } pcm.stereoupmix { type upmix slave.pcm "a52encode" channels 6 }
Dies stellt einmal die AC-3-Schnittstelle, und einmal ein Upmix-Device auf 6 Kanäle (5.1) bereit. Wer keine 5.1-Anlage hat (und AC-3 trotzdem nutzen will/kann) kann den stereoupmix weglassen (nicht getestet).
3. In der MPD-Konfigurationsdatei den Audio-Output auskommentieren und
audio_output { type "ao" driver "alsa" options "dev=stereoupmix" name "AC3 Output" format "48000:16:2" }
hinzufügen.
4. Den MPD neustarten.
/etc/rc.d/mpd restart
Funktioniert hier etwas nicht, so kann es daran liegen, dass irgendein Programm die Soundkarte nutzt. Ist dies der Fall, funktioniert AC-3 nicht (siehe Hinweis), und umgekehrt.
Inbetriebnahme
Als erstes erzeugt man eine Datenbank. Hierbei sammelt mpd Informationen über die Musik im Musikverzeichnis, dass in der Konfigurationsdatei angegeben wurde.
/etc/rc.d/mpd create-db
Anschließend startet man mpd.
/etc/rc.d/mpd start
Wenn man will, dass mpd beim Systemstart geladen wird trägt man einfach mpd, in das Daemons Array, seiner /etc/rc.conf ein
Datenbankaktualisierung
Die Datenbankaktualisierung funtkioniert beispielsweise so:
MPC:
mpc update
und bei laufendem ncmpc standardmäßig über:
Strg+U
Der Befehl mpd --update-db existiert seit 0.12 nicht mehr!
Probleme
Problem: Der Client überspringt Titel aus der Playlist Lösung: MPD das Charset des Dateisystem mitteilen. Dazu in die /etc/mpd.conf (beispielsweise für UTF8 und damit Umlaute) folgendes Eintragen:
filesystem_charset "UTF-8"
GUI/Client
Natürlich gibt es auch GUIs, bzw. Clienten für mpd. Einige sind z.B.
- mpc - Konsole
- ncmpc - Konsole
- gmpc - Gnome-Client
- Ario - GTK
- pympd - Ein Python-Client. Unter http://pympd.sourceforge.net/ ,oder im AUR, findet man ein PKGBUILD
- Sonata - Ein in Python geschriebener GTK+-Client. Zu finden im Community-Repo.
- Music Player Minion - Ein umfangreiches Firefox-Addon
Eine Liste mit mehr Clienten findet man unter http://www.musicpd.org/clients.shtml