You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

升级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

火山引擎 最新活动