刚刚将我的一些计算机升级到 Ubuntu 20.04,也尝试了全新安装,在所有情况下,pulseaudio rtp 接收模块给我的声音都很差。使用 vlc 作为客户端打开 RTP 流进行了一些测试,然后运行良好。
在 journalctl 中加载 module-rtp-recv 时我看到:
pulseaudio[2514]: Failed to set scheduler settings: Permission denied
在单台机器上轻松重现:
pacmd load-module module-null-sink sink_name=MyNullSink
pacmd load-module module-rtp-send source=MyNullSink.monitor loop=true
pacmd load-module module-rtp-recv
然后在空接收器中播放某些内容,环回声音将会非常糟糕。
有什么想法吗?(它之前在一些 Ubuntu 18 和 Ubuntu 19 客户端上运行良好,在我没有升级的客户端上仍然可以运行)。
“无法设置调度程序设置”让我想到了实时的东西,但是 Ubuntu 20 有什么变化?
更新:Ubuntu 20 使用 PulseAudio 13.99,又名 PulseAudio 14,它通过 gstreamer 实现 RTP,随后……
更新:使用 gst-launch 读取 RTP 流时工作正常:
gst-launch-1.0 udpsrc address=224.0.0.56 port=46586 caps="application/x-rtp, media=audio, payload=10, clock-rate=44100" ! .recv_rtp_sink_0 rtpbin ! rtpL16depay ! audioconvert ! audioresample ! pulsesink
那么 pulseaudio 没有正确执行什么操作?
谢谢;莱昂内尔