web-dev-qa-db-fra.com

mpd: impossible de lire le mélangeur pour 'Mon appareil ALSA': pas de contrôle du mélangeur: PCM

J'avais mpd/mpc sur mon serveur Ubuntu 12.04.3 LTS sans tête, sans X. J'ai décidé de changer les chansons. J'ai déplacé les anciennes chansons du répertoire/Music, les nouvelles chansons à l'intérieur et exécuté mpc update, mais la lecture n'a pas pu reprendre.

Naturellement, j'ai commencé à changer les choses, selon ce que j'ai pu trouver sur Google, mais rien ne semble fonctionner.

Lorsque j'exécute des commandes mpc, comme mpc status, le message d'erreur Failed to read mixer for 'My ALSA Device': no such mixer control: PCM s'affiche.

Je peux jouer de la musique lorsque j'utilise la commande Sudo aplay piano.wav et des commandes similaires.

Voici quelques informations de diagnostic: http://Pastebin.com/1CzbeYBC . Il contient

  • /etc/mpd.conf
  • aplay -L
  • aplay -l
  • mPD verbose à partir de la ligne de commande
  • contenu d'amixer et d'amixer

J'apprécierais tous les indicateurs! Je vous remercie.

4
user220227

@CL avait raison; alsa travaillait mais mpd ne l’était pas.

J'ai découvert que si je passais dans le dossier personnel de l'utilisateur mpd (export HOME=/var/log/mpd), les commandes aplay (par exemple Sudo -u mpd aplay /usr/share/sounds/alsa/Front_Center.wav) ne fonctionneraient plus.

Plus de Google jusqu'à ce que j'ai trouvé http://ubuntuforums.org/showthread.php?t=1138454

La solution était Sudo apt-get remove pulseaudio. Une fois cela fait, tout fonctionnait à nouveau.

4
user220227

Depuis que vous utilisez MPD avec pulseaudio, vous pouvez modifier la sortie audio en conséquence:

Sudo nano /etc/mpd.conf

Commentez cette section:

#audio_output {
#   type       "alsa"
#   name       "My ALSA Device"
#   device      "hw:0,0"    # optional
#   mixer_type      "hardware"      # optional
#   mixer_device    "default"   # optional
#   mixer_control   "PCM"       # optional
#   mixer_index "0"     # optional
#}

Ne commentez pas cette

audio_output {
    type        "Pulse"
    name        "My Pulse Output"
#   server      "remote_server"     # optional
#   sink        "remote_server_sink"    # optional
}

Vous devrez peut-être ajouter des droits sur l'utilisateur mpd également:

Sudo adduser mpd Pulse
Sudo adduser mpd Pulse-access

Redémarrez votre MPD:

Sudo systemctl restart mpd
1