除非我重新启动pulseaudio或切换设备,否则音频不会播放

除非我重新启动pulseaudio或切换设备,否则音频不会播放

我正在使用/尝试paprefs将音频流式传输到远程设备,但是,在那之后,我的系统将停止播放音频,除非我进入设置并将设备切换到另一个设备并返回(或使用终端中的选项重新启动pulseaudio-k。只要几秒钟没有播放声音,就会发生这种情况。

我尝试过的:

  • 消除paprefs
  • 删除~/.config/pulse(并重新启动)。
  • 将默认接收器设置为我想要的输出设备。

它也阻止播放任何视频(即 YouTube),直到它可以使用如上所述的音频输出,然后,当视频停止时,我必须通过开关重复或重新启动pulseaudio

我的系统:

  • 软呢帽 36
  • GNome 42.4
  • 脉冲音频15.0
  • 内核 5.19.16-200
  • 板载声音设备(华硕 X99-A 主板)

我认为这与设备无关,因为我有一个 USB 耳机,并且存在相同的问题。

答案1

辛克马努 :

...我们的解决方案是删除 Pulseaudio 并配置 PipeWire(有一个过渡)。或许在Fedora中,你可以找到类似的情况和解决方案。

基于此,在 Fedora 39 KDE spin 上,我遵循了中提到的步骤r/Fefdora:从 F34 中删除 PulseAudio?经过gjack905:

  1. 运行sudo dnf swap pulseaudio pipewire-pulseaudio --allowerasing即可正常升级
  2. 根据 Fedora 的文档,运行sudo dnf reinstall pipewire pipewire-pulseaudio,以消除可能(或可能没有)遗留下来的任何配置文件怪异。我在升级之前没有安装 Pipewire,但无论如何,为什么不呢,作为预防措施。
  3. 运行systemctl --user stop pulseaudio以停止仍在运行的旧 PulseAudio 服务。还记得那个--user标志吗,一开始它让我有点困惑,想知道为什么什么也没有出现。 (另外,不要在这里使用 sudo,它需要像你一样运行。)
  4. 运行,systemctl --user daemon-reload因为它告诉我在第 3 步之后运行。
  5. 运行systemctl --user restart pipewire-pulse.service pipewire-pulse.socket pipewire.service pipewire.socket以刷新所有内容并使其在 Pipewire 上运行。我玩了一下,这是我发现的 4 个重要的。这更新了我在 GNOME 设置中的设备列表,并使一切开始工作。将重新启动替换为状态以确认一切都处于活动状态并正在运行。
  6. 运行systemctl --user enable pipewire-pulse.service pipewire-pulse.socket pipewire.service pipewire.socket(与步骤 5 相同,但将重新启动替换为启用)。这应该确保重启后一切都能重新启动。我还没有尝试重新启动我的整个机器,但我没有预见到任何问题。

就我而言,步骤 1、3、4、5(按顺序)足以使音频恢复正常。

我不需要重新启动或注销,它可以当场工作,我通过测试多个视频和音频文件、停止和恢复进行检查。即使浏览器中的视频再次正常工作,此问题也会导致播放问题,导致它们无法启动或播放。

然而,我确实重新启动来检查,这个解决方案似乎成立。

相关内容