如果 mpd 正在播放并且声音尝试通过另一个应用程序x播放,则不会输出来自x 的声音。
如果来自另一个应用程序x 的声音正在播放并且 mpd 然后尝试播放,则 mpd 不会输出任何声音,而来自x 的声音继续播放。
我首先注意到 Flash 的这个问题,这仍然是最常见的情况。在意识到这与 Flash 并不严格相关,而是与 mpd有关之前,我发布了一个关于此的问题。
我最大的挫折来自试图让 mpd 再次工作,因为我似乎无法确定任何方法。有时pulseaudio -k
似乎有帮助,有时sudo /etc/init.d/mpd restart
,其他人使用SIGTERM
. 大多数时候它是上述的组合。
我认为这可能是因为我以另一个用户身份运行 mpd 并使用了pulseaudio。它不是作为 root 或当前用户运行的。此外,mpd 是在脉冲支持下编译的。
我尝试了很多东西,但老实说我无法背诵什么,因为已经有一段时间了。我宁愿在没有方向的情况下四处闲逛,但我真的很乐意一劳永逸地解决这个问题。
通过删除注释/空行来简化。
music_directory "/var/lib/mpd/music"
playlist_directory "/var/lib/mpd/playlists"
db_file "/var/lib/mpd/tag_cache"
log_file "/var/log/mpd/mpd.log"
pid_file "/var/run/mpd/pid"
state_file "/var/lib/mpd/state"
user "mpd"
bind_to_address "wilson"
input {
plugin "curl"
}
audio_output {
type "pulse"
name "My …
Run Code Online (Sandbox Code Playgroud) 当我尝试通过pulseaudio播放mpd时,mpd.log报告:
脉冲输出:无法启用“粉红摇滚”[脉冲]:pa_context_connect() 失败:连接被拒绝
我的 mpd.conf 文件是普通的;脉冲部分是通用的:
audio_output {
type "pulse"
name "General Pulse"
}
Run Code Online (Sandbox Code Playgroud)
虽然正如 laugeo 在下面建议的那样,我也尝试过指定一个单独的接收器,两个都按名称:
audio_output {
type "pulse"
name "ROCKI"
sink "raop_output.ASAP1826T.local"
}
Run Code Online (Sandbox Code Playgroud)
并通过索引#:
audio_output {
type "pulse"
name "ROCKI"
sink "4"
}
Run Code Online (Sandbox Code Playgroud)
我接下来应该尝试什么?将pulseaudio配置为作为系统服务运行是否有帮助?
这是在 Ubuntu 14.04、pulseaudio 4.0(和 5.0)、音乐播放器守护进程 0.18.7 上
更新: 我找到了这个博客,其中博主 Louiz 似乎解决了相同(或非常相似)的问题:
MPD 显然试图生成一个新的pulseaudio …
我最近全新安装了 Ubuntu 14.10,但再次遇到 MPD 问题。我想我上次已经设法修复它,但我不确定如何。
我的问题是能够使用带有 MPD 的外部蓝牙扬声器。更好的是,我希望能够同时使用插入式和蓝牙扬声器。
不幸的是,MPD 不会在 Gnome 音频设置下产生音频的应用程序下显示,因此它忽略了我使用蓝牙扬声器的指令。我认为这是因为 MPD 使用的是 Alsa 而不是 Pulseaudio。
现在,在我的 mpd.conf 中,我有几行
audio_output {
type "pulse"
name "MPD"
# server "localhost"
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过对服务器行进行注释,但在这种情况下,MPD 甚至没有启动。
澄清一下,MPD 是在 user 下运行的,而 usermpd
是在组pulse
and 下pulse-access
,但这似乎还不够。
现在,我相信我可以在我自己的用户下运行 MPD,这可以解决一些问题,但我宁愿不这样做,因为这台 PC 的其他用户可能也想听音乐。
让 MPD 使用 Pulseaudio 的正确方法是什么(或者做任何必要的事情将它连接到其他扬声器而不是默认扬声器?)
我在我的 Ubuntu 12.04.3 LTS 无头、无 X 服务器上运行了 mpd/mpc。我决定换掉歌曲;我把老歌移出/Music目录,把新歌移进去,然后运行mpc update
,但是无法继续播放。
自然地,根据我在 Google 上可以找到的内容,我开始更改内容,但似乎没有任何效果。
当我运行 mpc 命令时,例如mpc status
,我收到错误消息Failed to read mixer for 'My ALSA Device': no such mixer control: PCM
。
我可以在使用 commandsudo aplay piano.wav
和类似命令时播放音乐。
这是一些诊断信息:http : //pastebin.com/1CzbeYBC。它包含了
我将不胜感激任何指针!谢谢你。
我已经设置了一个脚本,它执行一个 mplayer 命令,以便在 crontab 中播放音频。它将在特定的设置时间内执行,但是当 ncmpcpp(mpd 的前端,又名音乐播放器守护程序)正在播放音乐时,此脚本无法播放音频。但是当我从终端执行它时,这个脚本可以播放音频,如下所示:
sh bin/alarm.sh
Run Code Online (Sandbox Code Playgroud)
我尝试从 crontab 或脚本获取输出,但无济于事。我猜 ncmpcpp 或 mplayer 中的某些设置是错误的,或者 mpd 正在使用与 crontab 的守护程序相同的守护程序。
每当我使用mpc next
或任何其他播放器(ncmpcpp) MPD
将播放下一首歌曲并将从播放列表中删除上一首歌曲(由 生成mpc add /
)。
我的mpd.conf位于/etc/mpd.conf
而且我没有发现任何与这种烦人行为相关的指令。我更喜欢 MPD 跳到下一首歌曲,但不删除任何以前的歌曲。
欢迎任何帮助。