通过 libqt5multimedia5 播放音频,无需 pulseaudio

通过 libqt5multimedia5 播放音频,无需 pulseaudio

我已经安装了 Ubuntu 18.04,并且想要使用https://gitlab.com/gillesdegottex/dfasma用于音频分析。dfasma 与 libQt5Multimedia.so.5 链接,用于音频播放。最初,我安装了 pulseaudio 声音系统,一切运行良好。不幸的是,特别是在使用 skype 时,pulseaudio 守护进程不时变得无响应,拒绝播放任何声音。这要求我重新启动 pulseeaudio 守护进程,有时甚至需要注销并再次登录。因此,我删除了 pulseeaudio 系统以直接使用 alsa。这在 skype 中运行良好,但启动 dfasma 时,我收到以下警告

pa_context_connect() failed: Connection refused

这是意料之中的,因为没有运行 pulseaudio 守护进程。不幸的是,libqt5multimedia 不会加载 alsa 插件,只是不会播放任何声音。我可以通过以下方式修复此问题

 sudo chmod 640 /usr/lib/x86_64-linux-gnu/qt5/plugins/audi/libqtmedia_pulse.so 

这会禁用 qt5 中的 pulseaudio 插件加载,然后加载并使用 alsa 插件。这里的问题是,我是否可以在不修改系统文件的情况下通过在某处设置环境变量或 qt 配置文件来获得相同的效果。

答案1

确认。我已移除脉冲 Qt 插件,并且仅在 Alsa 中可以正常操作输入和输出音频。我认为这是 Qt 的一个错误。

相关内容