Por que o servidor mpd não produz nenhum som?

2

Estou tentando executar o servidor MPD no Ubuntu 12.04.3. Todos trabalharam com o Ubuntu 11.10 e até com os anteriores 12.04. Estou usando o Sonata como front-end e fico conectado, há listas de reprodução disponíveis, posso escolher uma música, reproduzi-la - exceto a saída de áudio. O sistema de som é baseado em áudio de pulso.

O MPD tem uma boa wiki e a configuração de áudio por pulso também é abordada. Eu tentei depurar meus problemas, mas ainda não consegui trabalhar.

O que eu tenho? Eu tenho:

  • daemon mpd trabalhando com o pulso-áudio iniciado, em

    $ ps aux | grep -i mpd
    mpd      13770  3.9  5.4 144500 13636 ?        Ssl  Sep13 331:18 /usr/bin/mpd /etc/mpd.conf
    mpd      13778  1.4  1.0  88516  2532 ?        Sl   Sep13 119:21 /usr/bin/pulseaudio --start --log-target=syslog
    
  • No /etc/mpd.conf eu tenho

    audio_output {
            type            "pulse"
            name            "MPD PulseAudio Output"
            # sink      your-sink-name-here"
    }
    
  • para saquê em /etc/pulse/client.conf i habilitado autospawn (já padrão?):

    autospawn = yes
    
  • em /var/log/mpd/mpd.log vejo as músicas reproduzidas

  • no usuário "mpd" posso tocar música com o mplayer e funciona bem com o áudio de pulso

Eu não posso obter

  • lista de coletores sob o usuário normal ou mpd:

    $ pacmd list-sinks
    No PulseAudio daemon running, or not running as session daemon.
    
  • qualquer som do servidor mpd

No syslog eu vejo, esse pulso não pode se conectar ao d-bus, como:

    Sep 19 20:43:23 musa pulseaudio[787]: [pulseaudio] module-always-sink.c: Unable to load module-null-sink
    Sep 19 20:43:54 musa pulseaudio[1098]: [pulseaudio] server-lookup.c: Unable to contact D-Bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
    Sep 19 20:43:54 musa pulseaudio[1098]: [pulseaudio] main.c: Unable to contact D-Bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11

Como fazer com que o mpd funcione novamente?

    
por wk. 19.09.2013 / 19:47

1 resposta

1

Estou usando o Archlinux, não o Ubuntu, mas tive o mesmo problema. Aparentemente, o motivo pelo qual pacmd list-sinks não funcionou é que aparentemente o ambiente DISPLAY precisa ser configurado ( discussão no fórum ). Depois de definir isso para o usuário, consegui uma lista de pias. Eu reconfigurei o systemd mpd.service para iniciar o mpd como meu usuário e configure Environment="DISPLAY =: 0".

Infelizmente, isso implica que o usuário tenha que estar logado em uma sessão X, e o sistema tenha o xorg instalado. Acho que você pode reconfigurar o PulseAudio para ser executado como um daemon para todo o sistema, mas com possíveis problemas de segurança ( além deste Eu não sei especificamente o que eles são

    
por 31.10.2015 / 01:07

Tags