我正在努力奔跑多普勒服务器在 Ubuntu 12.04.3 上。所有功能均可在 Ubuntu 11.10 甚至更早的 12.04 上运行。我使用 Sonata 作为前端,并且已连接,播放列表可用,我可以选择一首歌曲,播放它 — — 除了输出音频。声音系统基于脉冲音频。
MPD 有非常好的 Wiki,脉冲音频配置也包括在内。我尝试调试我的问题,但仍然无法正常工作。
我有什么?我有:
mpd 守护进程与启动的 pulse-audio 一起工作,
$ 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
在 /etc/mpd.conf 中我有
audio_output { type "pulse" name "MPD PulseAudio Output" # sink your-sink-name-here" }
为了 /etc/pulse/client.conf 我启用了自动生成(已经是默认的了?):
autospawn = yes
在 /var/log/mpd/mpd.log 中我看到播放的歌曲
在用户“mpd”下我可以用 mplayer 播放音乐并且它与脉冲音频配合得很好
我不能得到
普通用户或 mpd 下的接收器列表:
$ pacmd list-sinks No PulseAudio daemon running, or not running as session daemon.
来自 mpd-server 的任何声音
在系统日志中我看到,该脉冲无法连接到 d-bus,例如:
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
如何让 mpd 再次工作?
答案1
我使用的是 Archlinux,而不是 Ubuntu,但我遇到了同样的问题。显然,pacmd list-sinks 不起作用的原因是因为显然需要设置环境 DISPLAY(论坛讨论)。为用户设置此项后,我可以获得接收器列表。我重新配置了 systemd mpd.service 以作为我的用户启动 mpd,并设置 Environment="DISPLAY=:0"。
不幸的是,这意味着用户必须登录到 X 会话,并且系统已安装 xorg。我认为您可以重新配置 PulseAudio 以作为整个系统的守护进程运行,但可能会出现安全问题(除了这个简介,我不知道它们具体是什么)