客户端和服务器都

客户端和服务器都

我通过本地以太网进行 PulseAudio 流式传输。我从客户端(笔记本电脑)向连接到扬声器的 PulseAudio“服务器”播放声音。两者都运行 PulseAudio 版本 12.2。

当我将客户端从 LAN 上的有线连接切换到 WiFi 时,远程接收器会从可用接收器的下拉列表中消失。我没有找到任何错误消息,但我无法再通过网络播放声音。本地播放仍然可以在客户端上进行。

我的 PulseAudio 客户端和服务器都运行 Arch Linux。

这是我的设置:

客户端和服务器都

安装此软件包并启用 avahi-daemon:

pacman -S pulseaudio-zeroconf 
systemctl enable avahi-daemon.service
systemctl start avahi-daemon.service

服务器设置

/etc/pulse/default.pa并添加这些行:

load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/24
load-module module-zeroconf-publish

客户端设置

/etc/pulse/default.pa并添加这些行:

load-module module-native-protocol-tcp
load-module module-zeroconf-discover

我将 ~/.config/pulse/cookie 复制到所有设备

这似乎不是授权问题,因为如果我paprefs在终端中打开并选中允许匿名客户端,它不会解决问题。

通过有线电缆连接时的客户端 IP 地址为 192.168.0.5。在 WiFi 上,它是 192.168.0.6。

当客户端通过有线电缆连接时,它完全按照预期工作,但当客户端使用 WiFi 时,它不起作用。服务器(直接连接到扬声器的计算机)始终是有线的。

我不知道下一步该去哪里寻找有关解决此问题的信息。

答案1

当从一个网络接口切换到另一个网络接口时,我需要运行以下命令:

sudo systemctl restart avahi-daemon.service

这解决了我的问题。 (但是,我不确定这是否是一个错误或功能。我更喜欢 avahi-daemon.service 在新接口上自动加入 mDNS 多播组。)

更新:我发现在一段时间不活动后我必须运行相同的重新启动命令;这可能与网络组件的电源管理有关。

相关内容