Динамик Bluetooth: предпочтительный режим «Высококачественное воспроизведение» (A2DP) не сохраняется

44

ОБНОВЛЕНИЕ Авг 2017: Решение, помеченное как принятое мной, похоже, работало до Ubuntu 15.10. Для 16.04+ выберите одно из последних решений.

Для 16.04+ файл конфигурации /etc/bluetooth/main.confНЕ /etc/bluetooth/audio.conf.

У меня есть Bluetooth-динамик Sony SRS-BTX300, который работает в linux / ubuntu 13.04, но только после некоторой возни. (Обновление в декабре 2013 года: те же проблемы остаются в 13.10)

Я должен установить предпочтительный режим полосы пропускания на «Высококачественное воспроизведение» (A2DP) каждый раз после включения компьютера и повторного подключения динамика.

Режим каждый раз сбрасывается до «телефония / дуплекс» (= низкая пропускная способность). Для сброса динамика требуется около 20 нажатий (щелкнуть по меню, отключиться, повторно подключиться, выбрать режим, проверить), и это определенно слишком много щелчков.

Как я могу сделать режим "A2DP" режимом по умолчанию, и сделать это на постоянной основе?

Несколько скриншотов проиллюстрируют.

После выбора этого меню, нажав на иконку Bluetooth в верхней панели в Unity ...

Значок Bluetooth на панели

После настройки этого ...

A2DP

... предпочтительный режим будет сброшен на этот после перезагрузки / приостановки компьютера

Телефония дуплекс

KNB
источник
Вы можете попробовать поиграть с настройками в /etc/bluetooth/audio.confфайле. Например, если вы не используете гарнитуру, измените MaxConnected=1настройку на 0.
сокольничий
@falconer Это сработало 15.04. Спасибо.
черный

Ответы:

26

Там же вариант в /etc/bluetooth/audio.confназывается AutoConnect=trueкоторый хэшированные.

sudo nano /etc/bluetooth/audio.conf

Удалите «#» в начале строки AutoConnect = true

Я обнаружил, что включил эту опцию, удалив #и правильно подключив вещи с моей гарнитурой Bluetooth

Перезапустите службу Bluetooth, чтобы изменения вступили в силу:

sudo service bluetooth restart
Джо
источник
Благодарность! - в этом конфигурационном файле текст комментария над этой опцией был довольно многословным и немного вводящим в заблуждение ( «поэтому установка по умолчанию в true обычно является хорошей идеей.», и он закомментирован :. #AutoConnect=true--- Удаление «#» теперь также, кажется, работает для меня, хотя я не перезагрузил да (только включил и выключил динамик)
knb
1
Сначала это работало, но теперь это не так. Еще идеи?
TIIUNDER
8
Нет такого файла в Ubuntu 15.10?
Тим
7
в 16.04 такого файла тоже нет ...
knocte
6
По состоянию на Ubuntu 17.04 такого файла тоже нет. main.confВместо этого я попытался изменить , добавив что- AutoConnect=trueто в файл, но это не решило мою проблему ...
Johannes Lemonde
25

Добавьте следующую строку в /etc/bluetooth/audio.conf:

[General]
Disable=Headset

и затем выполните эту команду:

sudo service bluetooth restart

Тема: (Natty) Подключите только профиль A2DP для Bluetooth-гарнитуры.

amagnoni
источник
Невероятно, это сработало. Большое спасибо!
Avio
1
Не забудьте, чтобы sudo restart bluetoothнастройки вступили в силу.
Avio
Для Ubuntu 14.04 с Upstart:sudo restart --system bluetooth
Дмитрий Сандалов
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 при подключении аудиоустройства Bluetooth.

N.AbdullaSunderland
источник
работает, но я также добавил Disable=Headsetи перезагрузил мой компьютер
слова для этого
Не знаю, что вы имеете в виду @cipricus. Я добавил Disable = Headset в мой файл /etc/bluetooth/main.conf, я думаю.
слова для этого
@wordsforhewise - я хотел выяснить, нужны ли обе строки или, если достаточно только одной, работают ли обе. - Пытаясь проверить, я обнаружил, что на самом деле у меня были оба. Комментируя Disable=Headsetи перезапуская блютуз, все нормально. Комментируя также AutoEnable=true и перезапуска Bluetooth: не удается подключить гарнитуру. Но после перезапуска системы я могу подключить его, и все в порядке, хотя обе строки сейчас прокомментированы. Странный.
Сиприкус
4

Я использую Gnome3 и через некоторое время моя гарнитура больше не подключается к A2DP. Мне пришлось прекратить Gnome создавать демон pulseaudio, создав файл /var/lib/gdm3/.config/pulse/client.conf(с правами root) и добавив в него следующие строки:

autospawn = no
daemon-binary = /bin/true

Затем установите для владельца gdm:

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

Затем выйдите из системы или включите ее или найдите процесс pulseaudio, работающий от имени gdmпользователя с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.

Наконец-то снова работает!

Dylan
источник
0

Чтобы автоматически переключать звук на устройство Bluetooth A2DP при подключении в Ubuntu 14.04, я следовал инструкциям с https://sandalov.org/blog/2146/, и он работал отлично.

Модифицируйте, /etc/pulse/default.paчтобы автоматически переключать импульсный приемник звука на 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

Caumons
источник
Не работает на 16.04. Этот ответ отключает все источники аудиовыхода (создает ошибку в PulseAudio).
stevenmc