蓝牙扬声器:首选模式“高保真播放”(A2DP)未保存


43

2017年8月更新:标记为被我接受的解决方案适用于Ubuntu 15.10。对于16.04+,请选择较新的解决方案之一。

对于16.04+,配置文件/etc/bluetooth/main.conf不是/etc/bluetooth/audio.conf。

我有一个蓝牙扬声器,Sony SRS-BTX300,它可以在linux / ubuntu 13.04中工作,但必须经过一些摆弄。(2013年12月更新:13.10中仍然存在相同的问题)

每次打开计算机并重新连接扬声器后,我都必须将首选带宽模式设置为“高保真播放”(A2DP)。

每次该模式都会将自身重置为“电话/双工”(=低带宽)。重置扬声器大约需要20次点击(单击菜单,断开连接,重新连接,选择模式,测试),这些点击肯定太多。

如何将“ A2DP”模式设置为默认模式,并以持续的方式进行设置?

一些屏幕截图将说明。

通过单击Unity顶部面板中的蓝牙图标选择此菜单后,...

面板上的蓝牙图标

设置完之后...

A2DP

...重新启动/挂起计算机后,首选模式将重置为此

电话双工


您可以尝试使用/etc/bluetooth/audio.conf文件中的设置。例如,如果您不使用任何耳机,请将MaxConnected=1设置更改为0
falconer 2013年

@falconer这适用于15.04。谢谢。
黑色:

Answers:


26

哈希中有一个/etc/bluetooth/audio.conf称为的选项AutoConnect=true

sudo nano /etc/bluetooth/audio.conf

在AutoConnect = true行的开头删除“#”

我发现通过删除启用了此选项,#并使事物与我的蓝牙耳机正确连接

重新启动蓝牙服务以使更改生效:

sudo service bluetooth restart

谢谢!-在该配置文件中,该选项上方的注释文本非常冗长,并且有点误导(“因此,默认设置为true通常是个好主意。”注释掉#AutoConnect=true。--删除“#”现在似乎也为我工作,尽管我还没有重新启动(只是打开和关闭扬声器)
knb 2014年

1
首先它起作用了,但是现在不再起作用了。还有更多想法吗?
TIIUNDER

8
Ubuntu 15.10中没有这样的文件?
2016年

7
在16.04中也没有这样的文件……
knocte

6
从Ubuntu 17.04开始,也没有此类文件。我试着修改main.confAutoConnect=true在文件中添加了一个地方,但是并不能解决我的问题……
Johannes Lemonde

25

将以下行添加到/etc/bluetooth/audio.conf

[General]
Disable=Headset

然后运行以下命令:

sudo service bluetooth restart

线程:(Natty)仅连接蓝牙耳机的A2DP配置文件。


令人难以置信的是,这行之有效。非常感谢你!
Avio 2014年

1
嗯,别忘了sudo restart bluetooth让设置生效。
Avio 2014年

对于具有Upstart的Ubuntu 14.04:sudo restart --system bluetooth
DmitrySandalov,2015年

5
适用于ubuntu 16.04,但文件为/etc/bluetooth/main.conf
ncasas

1
是! 适用于Ubuntu 16.04-> /etc/bluetooth/main.conf。
user584583

8

对于那些好奇的人,我在Ubuntu 16.04中发现答案略有不同:

sudo gedit /etc/bluetooth/main.conf

并更新以下行

#AutoEnable=false

AutoEnable=true

其次是

sudo service bluetooth restart

对我而言,这在连接蓝牙音频设备时将音频配置文件默认为A2DP Sink。


可以,但是我还添加Disable=Headset并重新启动了计算机
wordforthewise

邓诺你的意思是@cipricus。我在我的/etc/bluetooth/main.conf文件中添加了Disable = Headset。
wordsforthewise

@wordsforthewise-我想查找是否需要这两行,或者如果仅一行就足够了,那么这两行是否都能工作。-尝试测试时,我发现实际上我两者都有。评论Disable=Headset并重新启动蓝牙,一切都很好。同时评论 AutoEnable=true重新启动蓝牙:无法连接耳机。但是重新启动系统后,我可以连接它了,尽管现在两行都已注释,但一切都很好。奇。
cipricus

4

我正在使用Gnome3,过了一段时间后,我的耳机不再与A2DP连接。我必须通过创建文件/var/lib/gdm3/.config/pulse/client.conf(作为根用户)并向其中添加以下几行来停止Gnome创建Pulseaudio守护程序:

autospawn = no
daemon-binary = /bin/true

然后将所有者设置为gdm:

sudo chown gdm:gdm /var/lib/gdm3/.config/pulse/client.conf

然后注销/登录或寻找以gdm用户身份运行的pulseaudio进程ps aux | grep pulse

(已整理)输出如下所示:

gdm       2943  10616 ?        S<l  Sep01   0:00 /usr/bin/pulseaudio..

然后杀死kill <pid>对我来说是2943

bluetoothctl再次运行并连接,然后我可以运行pacmd list-cards并找到我的设备,index: 2并使用更改为a2dp_sink pacmd set-card-profile 2 a2dp_sink

最后再次工作!


0

为了在Ubuntu 14.04中连接时将音频自动切换到A2DP蓝牙设备,我遵循了https://sandalov.org/blog/2146/上的说明,它可以正常工作。

修改/etc/pulse/default.pa以自动将PulseAudio Sink切换到Bluez:

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
load-module module-switch-on-connect  # Add this
.endif

修改/etc/bluetooth/audio.conf以自动选择A2DP配置文件(而不是HSP / HFP):

[General]
Disable=Headset # Add this

应用更改:

pulseaudio -k # Restarts pulseaudio
sudo service bluetooth restart # Restarts BT

有关更多信息,访问:https : //wiki.archlinux.org/index.php/Bluetooth_headset


不适用于16.04。此答案将禁用所有音频输出源(在PulseAudio中创建故障)。
stevenmc
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.