Benutzer:Runiq: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Keine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
[[Category:Anwendungen]]
[[Category:Multimedia]]
[[Category:Server]]
[[Category:Sound]]
{{unvollständig}}
{{unvollständig}}
{{righttoc}}
{{righttoc}}
Zeile 26: Zeile 30:


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 {{ic|.mpdconf}} speichern.
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 {{ic|.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"
=== Dolby Digital / DTS ===
{{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. Zudem wird hierfür spezielle Hardware benötigt. Diejenigen die sie haben, wissen es …}}
Möchte man, dass der MPD die Musik als Dolby-Digital-Stream (AC-3) abspielt, muss man wie folgt vorgehen:
pacman -S alsa-plugins
Dies installiert das notwendige a52 Alsa-Plugin um einen AC-3-Stream zu erstellen.
{{hc|~/.asoundrc oder /etc/asound.conf|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).
Dann 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.
Dann mpd neu starten
systemctl restart mpd
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 ==
Um mpd mit Systemd (aktueller ArchLinux-Standard) zu starten, kann der Befehl systemctl verwendet werden:
systemctl start mpd
Bei dem ersten Start von mpd wird eine Datenbank mit Informationen über die Musik im Musikverzeichnis, das in der Konfigurationsdatei angegeben wurde.
Um mpd automatisch beim Systemstart zu laden, muss man den entsprechenden Service aktivieren:
systemctl enable mpd
== Datenbankaktualisierung ==
Die Datenbankaktualisierung funtkioniert beispielsweise über die Eingabe von {{ic|mpc update}} oder bei laufendem ncmpc standardmäßig über {{taste|Strg}} + {{taste|U}}. Der Befehl {{ic|mpd --update-db}} existiert seit 0.12 nicht mehr.
== Dateien/Ordner außerhalb des Musikverzeichnis hinzufügen ==
Standardmäßig spielt mpd keine Dateien außerhalb des konfigurierten Pfades ab. Allerdings kann mpd Symlinks folgen. Dazu muss die Option {{ic|follow_outside_symlinks}} in der Konfigurationsdatei auf {{ic|yes}} gesetzt sein. Nun kann können beispielsweise externe Medien hinzugefügt werden:
   
ln -s /media /pfad/zu/meinem/musikordner/media
Es existieren [http://mpd.wikia.com/wiki/Hack:Mpc-play mehrere] {{sprache|en}} [https://github.com/Mic92/mpdtools Skripte] {{sprache|en}} um dies zu automatisieren.
== Probleme ==
'''Problem''': Der Client überspringt Titel aus der Playlist
'''Lösung''': MPD das Charset des Dateisystem mitteilen. Dazu in die {{ic|/etc/mpd.conf}} (beispielsweise für UTF8 und damit Umlaute) {{ic|filesystem_charset "UTF-8"}} eintragen.
'''Problem''': Der Server startet nicht, wenn er als anderer User als {{ic|mpd}} laufen soll.
'''Lösung''': pid-file für den User schreibbar machen. Dazu wahlweise in der {{ic|/etc/mpd.conf}} den Wert {{ic|pid_file}} auf eine Datei setzen für die der User Schreibrechte besitzt oder in {{ic|/etc/rc.d/mpd}} die Zeile {{ic|<nowiki>[[ -d /run/mpd ]] || install -d -o mpd -g mpd /run/mpd</nowiki>}}
wie folgt anpassen: {{ic|<nowiki>[[ -d /run/mpd ]] || install -d -o ''Username'' -g ''Gruppenname'' /run/mpd</nowiki>}} Das Ändern der Rechte oder des Besitzers von {{ic|/var/run/mpd/}} ist keine dauerhafte Lösung, da diese Änderungen bei einem Reboot verloren gehen.
'''Problem''': Bei der Verwendung von Pulseaudio kann entweder der als eigener Server laufende MPD '''oder''' vom User verwendete Programme Sound erzeugen, aber niemals beide gleichzeitig.
'''Lösung''': MPD unter dem selben User laufen lassen, der auch den Rechner selbst verwendet. Alternativ soll auch eine Möglichkeit bestehen, Pulseaudio so zu konfigurieren, dass mehrere Benutzer gleichzeitig Sound erzeugen können. Diese ist dem Autor jedoch nicht bekannt.
== Clients ==
{| {{prettytable}}
!Name
!Art
!Verfügbarkeit
!Website
|-
|mpc
|Konsole
|{{Paket|mpc|extra/mpc}}
|http://www.musicpd.org/mpc.shtml {{sprache|en}}
|-
|ncmpc
|Konsole
|{{Paket|mpc|extra/ncmpc}}
|http://hem.bredband.net/kaw/ncmpc/ {{sprache|en}}
|-
|ncmpcpp
|Konsole
|{{Paket|mpc|community/ncmpcpp}}
|http://unkart.ovh.org/ncmpcpp/ {{sprache|en}}
|-
|pms
|Konsole
|{{AUR|pms|pms}} im AUR
|http://pms.sourceforge.net/ {{sprache|en}}
|-
|gmpc
|Gnome-Client
|{{Paket|gmpc|community/gmpc}}
|http://sarine.nl/gmpc/ {{sprache|en}}
|-
|Ario
|GTK
|{{Paket|ario|community/ario}}
|http://ario-player.sourceforge.net/ {{sprache|en}}
|-
|pympd
|Python-Client
|{{Paket|pympd|community/pympd}}
|http://pympd.sourceforge.net/ {{sprache|en}}
|-
|Sonata
|GTK
|{{Paket|sonata|extra/sonata}}
|http://sonata.berlios.de/ {{sprache|en}}
|}
Eine Liste mit mehr Clienten findet man unter http://www.musicpd.org/clients.shtml {{sprache|en}}
== Weblinks ==
* [http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki MPD Wiki] {{sprache|en}}
[[Kategorie:Multimedia]]
[[Kategorie:Services]]
[[en:Music Player Daemon]]
[[pl:Music Player Daemon]]
[[fr:MPD]]

Version vom 6. Januar 2014, 12:03 Uhr

Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


MPD ist ein Audio-Player mit einer Server-Struktur. Er läuft im Hintergrund als Daemon, besitzt eine Playlistverwaltung und eine Musik-Datenbank.

Installation

Das Programm ist als mpd in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S mpd

Konfiguration

MPD kann mit Systemrechten (Einstellungen betreffen alle Nutzer) oder mit Userrechten (Einstellungen werden vom jeweiligen Nutzer übernommen) gestartet werden. Es ist also auch möglich, mehrere Instanzen des Daemons laufen zu haben. Je nach Einsatzgebiet bietet sich die eine oder die andere Variante an. Auf einem Desktop-System macht sich die Nutzer-Version besser.

Damit MPD Ton ausgeben kann, muss entweder ALSA oder OSS installiert und funktionsfähig sein, wahlweise auch Pulseaudio.

MPD wird über die Datei mpd.conf konfiguriert (man 5 mpd.conf). Der Speicherort dieser Datei hängt ebenfalls davon ab, ob MPD mit System- oder mit Nutzerrechten konfiguriert wird (mehr dazu unten). Die wichtigsten Einstellungen in dieser Datei sind:

  • pid_file – Datei, in der MPD seine Prozess-ID speichert
  • db_file – MPDs Musikdatenbank
  • log_file – Logdatei des Daemons
  • state_file – "Zustand" von MPD (Playlist, Lied, Position im Lied, etc.)
  • playlist_directory – Speicherordner für Playlists
  • music_directory - Speicherordner für Musikdateien
  • sticker_file - "Sticker"-Datenbank (wo Clients Informationen über Lieder speichern)

Hinweis: Die Dateien müssen bereits existieren und die korrekten Rechte haben, wenn MPD gestartet wird. Fehler in der Konfiguration wird MPD mit einem Abbruch und einer Fehlermeldung quittieren.

Bevor man mpd startet, muss man die Konfiguration bearbeiten. Diese befindet sich unter /usr/share/mpd/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.