我一直在插入立体声音响的文件服务器上无头运行音乐播放器 (Clementine)。我通过 ssh X11 转发 ( ssh -f -X me@fileserver 'clementine'
) 在工作站上打开播放器,它以前可以通过立体声音响的扬声器正常播放。
我今晚在工作站上启用了 pulseaudio,但现在无法从 Clementine 获得任何声音,因为它正在拾取工作站上的 PA 驱动程序并尝试通过该驱动程序播放。我该如何告诉文件服务器上的 PA 库始终使用本地声音系统而不是网络声音系统?我仍然可以通过使用 VNC 登录文件服务器并从那里启动 Clementine 来听音乐,但这很麻烦。
答案1
将环境变量设置并导出PULSE_SERVER
为文件服务器上运行的服务器的 Unix 域套接字的路径pulseaudio
。例如,我使用:
export PULSE_SERVER=/run/user/1000/pulse/native
具体路径取决于pulseaudio
文件服务器上的配置方式。
导出后PULSE_SERVER
,运行 Clementine。
文档PULSE_SERVER
是在 freedesktop.org 上。
对于另一种可能的解决方案(我尚未验证)请参阅以下答案:
如何使用 ssh 远程启动/配置 pulseaudio?
答案2
对于遇到此问题的其他人来说,这算是个解决办法。我写了一个快速脚本,删除了 pulseaudio xprops,然后启动了 Clementine。它在下面,以防其他人需要它,尽管我更喜欢“不要这样做!”复选框...
#!/bin/bash
for p in PULSE_COOKIE PULSE_SERVER PULSE_SESSION_ID PULSE_ID; do
xprop -root -remove $p
done
clementine