蓝牙耳机在连接时初始化为 Audio Profile = Off,可能是因为“Profile a2dp_sink 没有传输”问题

蓝牙耳机在连接时初始化为 Audio Profile = Off,可能是因为“Profile a2dp_sink 没有传输”问题

这是完全更新的 Ubuntu 18.04,带有blueman。每当我连接配对的耳机时,连接都会可靠地进行,除非 被Audio Profile初始化为Off。这意味着耳机不会输出任何声音,直到我手动将 设置Audio Profile为GUIHigh Fidelity Playback (A2DP Sink)中的blueman-manager,之后耳机才能正常工作。

有没有办法在连接时自动切换Audio Profile到?High Fidelity Playback (A2DP Sink)

我怀疑这可能是默认的操作模式,并且它的失败可能与pulseaudio我连接耳机时出现的以下警告输出有关:

W: [pulseaudio] module-bluez5-device.c: Profile a2dp_sink has no transport

提醒一下:当我连接后手动切换并看到此警告时,声音输出完美运行,我不再看到任何警告。

我还可以从命令行设置音频配置文件:

pacmd set-card-profile 2 a2dp_sink

这与从 GUI 切换配置文件实现了相同的结果blueman-manager:耳机可以正常工作。

答案1

这似乎是从未修复的众多错误之一(阻止所有非技术人士使用 Ubuntu)

我为此编写了一个小脚本,并为其创建了一个桌面符号,这样我就不需要每天摆弄蓝牙设置十次了。这仅在您连接了一台设备时才有效。

# Find the index no. of the bluetooth device
bt_dev_index=`pacmd list-cards | grep bluez_card -B1 | grep index | awk '{print $2}'`
echo -e index = $bt_dev_index\\n
# Set desired bluetooth audio profile for the found index.
pacmd set-card-profile $bt_dev_index a2dp_sink

答案2

这也让我抓狂。基于这个问题和答案,我做了以下事情:

首先,我pacmd list-cards找到了 bluez_card 的名称。相关输出为:

index: 16
    name: <bluez_card.00_1B_66_B4_4A_D4>
    driver: <module-bluez5-device.c>
    owner module: 43
    properties:
        device.description = "PXC 550-II"

然后我为该命令创建了一个键盘快捷键:

pacmd set-card-profile 'bluez_card.00_1B_66_B4_4A_D4' a2dp_sink

现在,当我连接耳机时,只需按下键盘快捷键就可以工作。

相关内容