我正在尝试将 Pulseaudio 服务配置为免提蓝牙设备。有了这个功能,我应该能够使用计算机的耳机和麦克风拨打电话。
https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Bluetooth/#bluetooth
A2DP 配置文件工作正常,智能手机上的音乐播放没有任何问题。但我无法切换到 HSP/HFP 配置文件。
Gentoo Linux, 5.10.61-gentoo
GNOME: 40.3.0
pulseaudio: 13.0
bluetoothctl: 5.61
# lsusb | grep Bluetooth
Bus 001 Device 005: ID 0b05:17cb ASUSTek Computer, Inc. Broadcom BCM20702A0 Bluetooth
答案1
我将尝试在这里总结一下为了在 Gentoo 上工作而必须经历的所有事情,但对于使用 PulseAudio 的所有其他发行版来说,这将非常相似。
1.蓝牙适配器型号
并非每个适配器都支持 HSP/HFP 配置文件。找到您的蓝牙适配器的型号,lsusb
并在互联网上搜索它支持的配置文件。如果您的蓝牙适配器很旧,它很可能不支持 HSP/HFP。
2.内核配置和蓝牙服务
这是 Gentoo 甚至 Arch 特有的。这些东西通常已经配置好并且在常见发行版上运行良好。
经历一个蓝牙篇在 Gentoo 维基上。
3.管材线材?
我花了一会儿才意识到这里发生了什么。我的蓝牙设备与计算机配对并连接得很好,但音频共享不起作用。甚至连基本的 A2DP 配置文件都没有。然后我发现某些未配置且不需要的 PipeWire 实例正在运行,并且可能从 PulseAudio 窃取蓝牙设备。在这种情况下,要么完全禁用 PipeWire,要么正确配置它以完全替换 PulseAudio 服务器并跳过下一步。
4.脉冲音频和奥福诺
如果没有 ofono,只有 A2DP 配置文件可以工作。 HSP/HFP 配置文件可能会出现,但在pavucontrol
.
在其他发行版上,请确保您已安装 ofono 软件包并且脉冲音频蓝牙模块。
在 Gentoo 上使用ofono-headset
use-flag 编译 PulseAudio。它将安装net-misc/ofono
包作为依赖项。然后你必须启动ofono服务。
使用 OpenRC:rc-service ofono start
为了使其持久化:rc-update add ofono default
确保您的 PulseAudio default.pa 配置包含蓝牙模块的加载:
.ifexists module-bluetooth-policy.so
load-module module-bluetooth-policy
.endif
.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif
然后重新启动 PulseAudio:pulseaudio -k
5. 蓝牙固件
这也是我的情况。我的适配器看起来工作正常,因为我可以将它与手机配对、播放手机中的音乐等。但是当我切换到 HSP/HFP 配置文件时,两个音频流都保持沉默。然后我遇到了本文档并注意到那里提到了我的适配器模型。
我必须按照中所述安装固件博通蓝牙文章在 Gentoo 维基上。