在升级到 22.04 之前,我能够将手机与电脑配对,并将音乐传输到耳机。现在,当我尝试连接手机时,它会立即断开连接。如果我尝试连接 Blueman-Manager,它会给我这个错误:
blueman-manager 22.07.07 WARNING ManagerDeviceMenu:141 fail : fail g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.Failed: blueman.bluez.errors.DBusFailedError: br-connection-profile-unavailable (0)
我发现这个拱门线程讨论了该问题,一些用户认为该问题发生在 PulseAudio 停止时。
所以我尝试用 启动它systemctl start --user pulseaudio
。这样做之后,我就可以正常连接手机,并且它将我的电脑视为蓝牙扬声器,但我听不到任何音频。
每当我尝试播放声音时,我都可以在 PulseAudio 的日志中看到它显示:
Aug 23 22:09:03 Tiles-PC pulseaudio[12311]: Failed to create sink input: sink is suspended.
Aug 23 22:09:03 Tiles-PC pulseaudio[12311]: Failed to create sink input: sink is suspended.
Aug 23 22:09:03 Tiles-PC pulseaudio[12311]: Failed to create sink input: sink is suspended.
如果我重新启动,我可以看到htop
PulseAudio 根本没有运行,但我可以正常听到音频。我相信 22.04 Ubuntu 在某种程度上集成了 PipeWire,但我不确定 PulseAudio 是否仍在使用中。
我的问题是:
- 如何修复 Ubuntu 22.04 中的 A2DP/蓝牙,以便我可以再次将音频流式传输到我的电脑?
- 如果这需要使用 PulseAudio,我该如何在运行时使声音正常工作?我是否需要从 PipeWire 切换回 PulseAudio?我该怎么做?
答案1
经过一番折腾,我禁用了 Pipewire 和 Pipewire-pulse,然后重新启用了 PulseAudio,这样我的音频就可以在 PulseAudio 运行时正常工作,我猜它们是冲突的。不确定为什么蓝牙音频不能与 Pipewire 配合使用,但也许这只是一个错误:
禁用 Pipewire 服务:
systemctl --user disable pipewire
systemctl --user disable pipewire-pulse
systemctl --user mask pipewire
systemctl --user mask pipewire-pulse
启用 Pulseaudio:
systemctl --user start pulseaudio
systemctl --user enable pulseaudio
对我来说,这似乎只是接通了所有音频设备并继续正常运行,但现在我的手机将通过蓝牙连接,我可以再次将音频传输到我的电脑。不确定禁用 Pipewire 的其他后果是什么,但我会在这里列出我遇到的任何后果:
似乎 Pipewire 是使用内置的 gnome 截图程序进行屏幕录制的,所以它不再起作用了。
Pulse Audio 无法在启动时启动,每次我都必须手动启动它,音频才能工作。
systemctl --user start pulseaudio