如何使 HSP/HFP 蓝牙配置文件与 PulseAudio 配合使用?

如何使 HSP/HFP 蓝牙配置文件与 PulseAudio 配合使用?

我正在尝试将 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-headsetuse-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 维基上。

相关内容