klink0v (klink0v) wrote,
klink0v
klink0v

Трудности с Bluetooth

Чё-то я внезапно решил попробовать поговорить по Skype с применением своей беспроводной Bluetooth-гарнитурки Plantronics M165. И после наступания на грабли внезапно выяснил, что в этой технологии всё как-то совсем не просто.

Насколько я могу понимать, там используется многуровневый сетевой стек, чем-то отдалённо похожий на TCP/IP. И на вершине этого стека находятся протоколы прикладного уровня, которые в данном контексте называются "профилями".

Если говорить конкретно про Bluetooth-гарнитуры для сотовых телефонов, то в современных моделях используются профили A2DP (аудио высокого качества), HFP (гарнитура плюс некоторые фичи), HSP (гарнитура). В частности, конкретно моя Plantronics M165 умеет все три.

Как всегда, везде есть нюансы. Во-первых, Bluetooth по определению работает в полудуплескном режиме. Для достижения двусторонней передачи данных используется TDM (Time Division Multiplexing). Во-вторых, не все профили одинаково полезны. Например, A2DP позволяет передавать звук только в одну сторону. С другой стороны, HFP и HSP умеют двустороннюю передачу, но зато только один канал (моно) и с гораздо худшим качеством (битрейтом). В-третьих, в каждый момент времени активным может быть только один профиль. То есть, если вы, например, слушаете музыку через Bluetooth-наушники с телефона, и тут вам пришёл входящий звонок, то гарнитура автоматически переключит профиль с A2DP в HFP или HSP для того чтобы ответить на звонок. А после завершения разговора переключит профиль обратно в A2DP и продолжит воспроизведение музыки.

Таким образом, для себя я понял следующее.


  • Бесполезно ожидать от Bluetooth-наушников качества воспроизведения, сопоставимого с проводными. Потому что между источником и приёмником будет происходить как минимум один цикл lossy кодирования-декодирования, дабы уместить поток данных в пропускную способность протокола Bluetooth.

  • Bluetooth-гарнитуры не подходят для игрушек с необходимостью вести голосовой чат. Потому что любое включение микрофона тут же повлечёт за собой резкое ухудшение качества звука из игры.

  • Если какое-нибудь запущенное приложение а-ля Skype и иже с ним "захватывает" устройство записи, коим является Bluetooth-гарнитура, то вряд ли при этом удастся нормально слушать музыку. Всё из-за того же пресловутого переключения профиля.

  • Поддержка профиля A2DP в маленьких легковесных моногарнитурах является не более чем бесполезным понтом. Вряд ли кто-то будет в такой гарнитуре смотреть видео или всерьёз слушать музыку. А вот невозможность принудительно отключить этот профиль средствами самой гарнитуры весьма часто выбешивает, ибо далеко не всякий софт для компа позволяет быстро и корректно согласовывать профили и выбирать из них желаемый.

Короче говоря, классная технология, но слишком сложная и пока ещё довольно костыльная. Отдельно меня впечатлил отчёт чувака с хабрахабра, который самостоятельно отладил BT-стек в поисках проблемы с воспроизведением аудио. Интересующимся рекомендую к прочтению.
Tags: вопрос, технологии
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 6 comments