Fre*_*ton 7 sound pulseaudio mpd
当我尝试通过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 进程,作为我自己的用户,它失败了,因为它已经在运行。我不明白为什么它不能只使用现有的pulseaudio 实例,而不尝试生成一个新实例。
感谢这篇文章,我明白了。
MPD 无法找到已经运行的pulseaudio 实例,因为环境变量 XDG_RUNTIME_DIR 没有设置,这是pulseaudio 存储其文件(套接字、进程pid 等)的地方。
我尝试了他的解决方案:
创建一个新文件 /etc/systemd/system/mpd.service.d/fixenv.conf 包含:
[服务]环境=XDG_RUNTIME_DIR=/run/user/1000
(将 1000 替换为您用户的 UNIX id。)
我重新启动并正确设置了 XDG_RUNTIME_DIR,并将其 pid 文件放在 /run/user/1000/pulse/ 目录中(我的用户 ID 是 1000),但我仍然从 mpd 得到相同的错误:
脉冲输出:无法启用“ROCKI”[脉冲]:pa_context_connect()失败:连接被拒绝
我每天都在学习更多关于 linux 的知识,但是套接字、进程 pid、systemd(Ubuntu 不是应该使用 upstart 吗?systemd 似乎正在运行和启动一些东西)等等现在都高于我的工资等级 - 我'我在树林里迷路了。
最后,比pulseaudio守护进程模式更好的是,最好的解决方案是:它是作为你自己(而不是mpd用户)运行mpd,所以你可以毫无问题地使用你自己的会话pulseaudio。
一个不同的答案,但经过测试并且也有效:
配置pulseaudio以“守护程序模式”而不是标准“用户模式”运行
sudo gedit /etc/init/pulseaudio.conf#以获取:start on runlevel [2345]sudo usermod -aG pulse,pulse-access mpdsudo usermod -aG pulse,pulse-access your-login现在重新启动:希望它能起作用。
注意:作为信息,本页列出了必须避免使用pulseaudio守护进程模式的原因,但我发现它在单用户电脑上没问题(特别是我没有看到比用户模式更多的CPU/内存使用量)。
| 归档时间: |
|
| 查看次数: |
10953 次 |
| 最近记录: |