升级Ubuntu 23.04后Broadcom蓝牙耳机仅支持CSVD模式,无法使用mSBC模式
升级Ubuntu 23.04后Broadcom蓝牙耳机仅支持CSVD模式,无法使用mSBC模式
我完全理解你遇到的这个蓝牙音频问题有多闹心——升级到Ubuntu 23.04后,原本在22.10能正常使用mSBC高清编码的蓝牙耳机,现在只能降级用CSVD模式,而且手动强制切换到mSBC还会导致麦克风直接切回电脑内置设备,不管是带Broadcom内置芯片的笔记本,还是外接Broadcom蓝牙适配器的台式机,都出现了同样的问题。
先帮你梳理下问题的核心细节:
- 22.10版本下蓝牙耳机可正常使用mSBC模式,音频表现正常
- 升级到23.04后,默认仅支持CSVD模式,强制切换mSBC会触发麦克风 fallback到内置设备
- 问题覆盖多台设备:两台内置Broadcom芯片的笔记本、一台使用Broadcom蓝牙dongle的台式机
结合你提供的dmesg日志来看,蓝牙模块的核心加载是正常的——BCM4350C5芯片的补丁固件成功加载,蓝牙服务也正常初始化;日志里的几个固件加载失败提示属于无线网卡(brcmfmac)的非关键文件,和蓝牙音频编码问题无关;BIOS相关的固件bug提示也不会影响蓝牙编码协商。
下面给你几个可以尝试的解决方向:
1. 重置蓝牙服务与配对信息
有时候蓝牙服务的临时异常会导致编码协商失败,先试试基础重置:
- 重启蓝牙服务:
sudo systemctl restart bluetooth - 重置蓝牙模块并重新配对耳机:
然后删除耳机的旧配对记录,重新搜索配对。bluetoothctl power off bluetoothctl power on
2. 调整PipeWire音频服务的蓝牙编码配置
Ubuntu 23.04默认使用PipeWire替代了PulseAudio,可能是音频服务的编码优先级配置出了问题:
- 打开PipeWire的蓝牙监控配置文件:
sudo nano /usr/share/pipewire/media-session.d/bluez-monitor.conf - 找到
bluez5.codecs相关的配置项,确保msbc被包含在列表中,并且优先级高于csvd,类似这样:bluez5.codecs = [ "msbc" "csvd" ... ] - 保存修改后,重启PipeWire服务:
sudo systemctl restart pipewire pipewire-pulse
3. 检查并更新蓝牙相关软件包
23.04更新的蓝牙栈(bluez)可能和Broadcom芯片存在兼容性问题:
- 先尝试全量更新系统,看看是否有官方修复补丁:
sudo apt update && sudo apt upgrade -y - 如果更新后问题依旧,可以尝试暂时回退到22.10版本的bluez包(注意:操作前建议备份系统,避免依赖冲突)。
4. 提交官方Bug报告
如果以上方法都无法解决,这大概率是Ubuntu 23.04与Broadcom蓝牙芯片之间的兼容性Bug,建议向Ubuntu官方提交报告:
- 运行以下命令自动生成并提交bug报告,记得附上你的
dmesg日志和设备信息:ubuntu-bug bluetooth
备注:内容来源于stack exchange,提问作者paulb




