访问PulseAudio服务器

And*_*nek 5 pulseaudio 13.04

我已经在我的 Ubuntu 服务器上设置了pulseaudio 来接收脉冲音频文档和许多教程中建议的 tcp 流。我/etc/pulse/default.pa现在包含这些行:

load-module module-esound-protocol-tcp auth-anonymous=1
load-module module-native-protocol-tcp
load-module module-zeroconf-publish
Run Code Online (Sandbox Code Playgroud)

我已经使用重新启动了守护进程

pulseaudio -k
pulseaudio -D
Run Code Online (Sandbox Code Playgroud)

根据我的理解,我现在应该可以将服务器用作客户端的接收器。理想情况下,我想选择带有 PulseAudio Volume Control 的输出设备,但要让它工作。我尝试设置PULSE_SERVER为指向我的服务器,但出现播放错误。

谁能告诉我我的服务器配置是否正确以及如何配置客户端(13.04)?

更新

我终于发现我必须module-zeroconf-discover在客户端加载模块。如果我现在重新启动客户端上的守护程序,则会发现服务器但无法创建接收器。/var/log/syslog说这个:

pulseaudio[4877]: [pulseaudio] module-tunnel.c: Failed to create sink.
pulseaudio[4877]: [pulseaudio] module.c: Failed to load module "module-tunnel-sink" (argument: "server=[192.168.1.2]:4713 sink=auto_null format=s16le channels=2 rate=44100 sink_name=tunnel.myserver.local.auto_null channel_map=front-left,front-right"): initialization failed.
pulseaudio[4877]: [pulseaudio] module-tunnel.c: Failed to authenticate
Run Code Online (Sandbox Code Playgroud)

我不太明白如果允许匿名登录,它是如何无法进行身份验证的。

更新

身份验证失败似乎是随机发生的。如果没有出现,相关的日志条目是

[pulseaudio] module-tunnel.c: Stream died.
Run Code Online (Sandbox Code Playgroud)

反而。其他两个条目看起来相同。

小智 4

和这里一样。但就我而言,pulseaudio 发现了远程源,但没有发现接收器。但是,日志中都有它们的典型错误消息。

另一件需要提及的是失败消息 aboutmodule-tunnel-source与 about 的消息不同module-tunnel-sink

第二个具有以 IPv4 形式 ( 192.168.0.x) 编写的服务器地址参数,而第一个提到了 IPv6 形式的地址。不知道为什么会有这种差异,但它始终存在,并且以某种方式module-tunnel-source加载了 IPv6 地址,但接收器却没有。

也许这只是一个错误,我们应该考虑如何正确地提交错误报告。

编辑

我想我已经找到了解决方案:

http://lists.freedesktop.org/archives/pulseaudio-bugs/2009-October/003348.html

根据它,您应该禁用 IPv6avahi-daemon并重新启动它。这对我有用。