Bluetooth с низким энергопотреблением

Bluetooth Low Energy Audio (LEA) гарантирует, что пользователи смогут получать высококачественный звук, не жертвуя временем автономной работы, и позволяет им плавно переключаться между различными вариантами использования. Android 13 (уровень API 33) включает встроенную поддержку LEA.

Большинство гарнитур LEA будут работать в двухрежимном режиме до тех пор, пока доля рынка исходных устройств LEA не вырастет. Пользователи должны иметь возможность подключать и настраивать оба транспорта на своих двухрежимных гарнитурах.

Варианты использования

Вы можете интегрировать LEA для следующих случаев использования:

  • Совместное использование аудио: пользователи могут одновременно передавать несколько аудиопотоков на одно или несколько устройств-приемников звука. Звук синхронизируется между исходным устройством и подключенными устройствами.

  • Трансляция аудио: пользователи могут транслировать аудио друзьям и родственникам, а также подключаться к общественным трансляциям для получения информации, развлечений или доступности.

  • Поддержка аудиокодека LC3: это аудиокодек по умолчанию, который заменяет кодек SBC, используемый для A2DP (медиа) и mSBC в HFP (голос). LC3 более эффективен, реконфигурируем и имеет более высокое качество.

  • Улучшения выборки звука: гарнитуры могут поддерживать высокое качество звука при использовании микрофонов. Bluetooth Classic снижает качество звука при использовании микрофонов Bluetooth. При использовании BLE Audio частота входной и выходной дискретизации может достигать 32 кГц.

  • Стереомикрофон: наушники могут записывать звук с помощью стереомикрофонов для улучшения пространственного звука.

  • Поддержка профиля слухового аппарата (HAP): HAP предлагает пользователям большую доступность и удобство использования, чем предыдущие протоколы ASHA. Пользователи могут использовать свои слуховые аппараты для телефонных звонков и приложений VoIP.

  • Поддержка протокола расширенных атрибутов (EATT): EATT позволяет разработчикам отправлять несколько команд одновременно на парные наушники.

Ключевые сценарии

Существует четыре основные категории вариантов использования:

  1. Разговор: приложения для набора номера и VoIP, которым требуется маршрутизация связи с малой задержкой, обеспечивают высокое качество звука и меньшее потребление батареи.

  2. Игры: одновременный микрофон и воспроизведение с высокой точностью позволяют играм передавать высококачественный звук на наушники. Игровое приложение может получить доступ к аудиовходу BLE, когда игра активирует микрофон Bluetooth как готовый к использованию. Затем, когда игрок начинает живую беседу с игроком-сверстником, игровое приложение может без задержки использовать данные микрофона.

  3. Медиа: мультимедийным приложениям разрешено устанавливать предпочтительное устройство аудиоменеджера. Пользователь может отменить это, изменив предпочитаемое устройство в настройках системы.

  4. Доступность: слуховые аппараты, поддерживающие BLE Audio, теперь могут использовать микрофон, что позволяет пользователям постоянно использовать свои слуховые аппараты для звонков.

API и методы BLE Audio

Для поддержки наушников BLE Audio необходимы следующие API и методы:

АудиоМенеджер

  • setCommunicationDevice() выбирает аудиоустройство, которое следует использовать для случаев использования связи, например голосовых или видеозвонков. Этот метод может использоваться приложениями голосового или видеочата для выбора другого аудиоустройства, отличного от того, которое выбрано платформой по умолчанию. Этот API заменяет следующие устаревшие API: startBluetoothSco() , stopBluetoothSco() и setSpeakerphoneOn() .
  • clearCommunicationDevice() вызывается после того, как ваше приложение завершает вызов или сеанс, чтобы обеспечить пользователю удобство при перемещении между различными приложениями.

BluetoothПрофиль

  • BluetoothLeAudio управляет службой Bluetooth через прокси-объект.

Телеком ИнКоллСервис

  • InCallService#requestCallEndpointChange() заменяет устаревшие API InCallService.setAudioRoute() и InCallService.requestBluetoothAudio() , чтобы приложения могли запрашивать маршрутизацию звука к определенной CallEndpoint . Клиенты не должны определять свою собственную CallEndpoint при запросе изменения. Вместо этого новая конечная точка должна быть одной из допустимых конечных точек, предоставленных InCallService.onAvailableCallEndpointsChanged(java.util.List) .
  • CallEndpoint.TYPE_BLUETOOTH направляет аудиопоток через Bluetooth.
  • Эти вышеупомянутые API-интерфейсы InCallService предназначены для использования телефонным приложением по умолчанию на телефоне Android или других вызывающих устройствах, таких как носимые устройства, автомобили или другие устройства Bluetooth, которые могут влиять на маршрутизацию звука.

Телеком CallControl

Информация об аудиоустройстве

  • AudioDeviceInfo.TYPE_BLE_HEADSET описывает тип аудиоустройства как устройство LEA. Используется для определения того, является ли слуховое устройство устройством LEA.

Аудио рекордер

  • setPreferredDevice() устанавливает предпочтительное устройство для маршрутизации звука. Пользователь может изменить это в настройках системы.

Bluetooth-адаптер

  • isLeAudioSupported() возвращает значение, если оборудование платформы поддерживает LEA.
  • isLeAudioBroadcastSourceSupported() возвращает значение, если оборудование платформы поддерживает LEA.

Руководства на основе вариантов использования

Ниже приведены рекомендации по реализации LEA на основе конкретных случаев использования.

Приложения для голосовой связи

Приложения голосовой связи могут выбирать между управлением маршрутизацией звука и состоянием устройства путем самостоятельного управления своим состоянием или с помощью Telecom API, который выполняет логику маршрутизации звука и состояния за вас.

Эти два решения позволяют быстро и легко управлять маршрутизацией звука и переключаться между устройствами Bluetooth. Дополнительную информацию см. в руководстве по управляемым звонкам Telecom .

Приложения для записи звука

  • Медиа-рекордер: при записи звука с помощью медиа-рекордера теперь вы можете записывать в стерео, если Bluetooth-устройство поддерживает LEA. Ознакомьтесь с руководством по записи звука .

Рекомендации по использованию гарнитуры LE Audio (LEA)

По мере выпуска новых гарнитур LEA в ходе реальных испытаний мы обнаруживали проблемы, которые ухудшают удобство использования. Спецификация не охватывает все эти вопросы. В следующей таблице представлен список рекомендаций, которым должны следовать производители гарнитур LEA, чтобы улучшить комплексное взаимодействие с пользователями Android.

Описание Контекст
Поддержка деривации перекрестного транспортного ключа (CTKD) для двухрежимных гарнитур:
  • Поддержка создания ключей как для сопряжения Classic-LE, так и для сопряжения LE-Classic.
Большинство новых гарнитур LEA будут двухрежимными до тех пор, пока доля рынка исходных устройств LEA не вырастет. Важно, чтобы пользователи могли легко подключать свои двухрежимные гарнитуры и настраивать оба транспорта. Это также важно для Google Fast Pair.

Поддержите целевые объявления (TA), если вы хотите, чтобы ваши гарнитуры LEA надежно подключались к исходным устройствам.

Аудионаушники LE должны использовать TA для запроса входящего соединения от центральных устройств.

Будет добавлен в предстоящий BT SIG.

В отличие от модели пейджинговой связи BR/EDR, где соединение может быть инициировано либо телефоном, либо гарнитурой, соединение в LEA должно быть инициировано центральным устройством. В настоящее время многие гарнитуры не используют TA, а это означает, что центральное устройство не сможет повторно подключиться к периферийному устройству без добавления его в список разрешенных. Однако обходной путь из белого списка может помешать подключению гарнитуры к другому центральному устройству. Поэтому для гарнитур LEA важно правильно поддерживать TA, чтобы центральное устройство могло надежно повторно подключиться без обходных путей, которые могут нарушить многоточечные соединения.
Оптимизированная видимость для двухрежимных наушников.
  • Основной наушник — компонент BR/EDR должен рекламировать, используя свой публичный адрес, включать запросы и сканирование страниц с его именем, доступным через EIR, а также устанавливать аудиобит LE 14 на 1 в основных классах обслуживания класса устройства (CoD).
  • Основной наушник — компонент LE : основной наушник должен выполнять рекламу с возможностью подключения и обнаружения (ограниченную или общую), используя тот же публичный адрес, что и компонент BR/EDR, и то же полное локальное имя, что и компонент BR/EDR, с его внешним видом. Категория задана как соответствующая категория внешнего вида, соответствующая типу удаленного устройства, при этом ожидается, что центральное устройство будет использовать эту информацию для настройки своего пользовательского интерфейса и политик маршрутизации звука.
  • Вторичный наушник — только для LE : дополнительный наушник должен отображать подключаемую, необнаружимую рекламу с категорией внешнего вида, установленной в качестве соответствующей категории внешнего вида, которая соответствует типу удаленного устройства, с ожиданием, что центральное устройство будет использовать эту информацию для настройки своего пользовательского интерфейса и политики маршрутизации аудио

    Наушники должны динамически выбирать лидера из группы CSIP в качестве основного устройства. Если наушник работает в двухрежимном режиме, основное устройство должно работать в двухрежимном режиме, чтобы гарантировать правильную работу функций LE и Classic после сопряжения.

Это предотвращает появление дублирующихся записей в настройках Bluetooth двухрежимных наушников LEA, что может сбить с толку пользователей и поставить под угрозу процесс сопряжения LEA.

Динамические выборы лидера особенно важны для двухрежимных устройств, которые соединяются постепенно. Например, если при первоначальном сопряжении доступен только один наушник, он должен представлять собой двухрежимное устройство. Когда пользователь позднее подключится ко второму наушнику, ему нужно будет выполнить сопряжение только с компонентом LE, а CSIP обеспечит их группировку на Android.

Во время сопряжения рекомендуется использовать идентификационный адрес, поскольку компонент BR/EDR уже предоставляет публичный адрес устройства соседним устройствам.

Поддержка расширенного протокола атрибутов (EATT) . Уменьшает сопряжение и задержку соединения.
Поддержка надежного кэширования GATT. Уменьшает задержку соединения, особенно для наушников TWS.
Поддержка субрейтинга соединения . Обеспечивает более гибкое планирование пакетов и потенциальную экономию заряда батареи.
Убедитесь, что во время предварительной и последующей обработки как для воспроизведения, так и для захвата конвейер обработки сигналов может работать на частотах 16, 24, 32 и 48 кГц, а также поддерживать более высокие частоты . Использует преимущества более высоких частот дискретизации, поддерживаемых для вызовов LEA или каналов захвата VoIP и воспроизведения мультимедиа.
Поддержка управления питанием LE Лучшее управление питанием

Поддержка типов контекста

Описание Контекст
Используйте все типы контекста, указанные в разделе «Назначенные номера» 6.12.3, за исключением случаев, когда гарнитура явно не поддерживает данный тип контекста. Например, если тип контекста «Игра» не поддерживается, Android отправит звуки игры. В частности, обратите внимание, что тип контекста «Неопределенный» не означает «любой тип контекста» и не охватывает неподдерживаемые типы контекста.

Когда центральное устройство взаимодействует с ASCS периферийного устройства, периферийное устройство должно подключиться к MCS и TBS центрального устройства.

Центральное устройство может не всегда использовать звук LE в качестве маршрута потоковой передачи, поскольку оно может вернуться к использованию A2DP или HFP. Периферийное устройство может использовать взаимодействие ASCS в качестве индикатора того, будет ли центральное устройство использовать аудио LE для потоковой передачи.

Несколько примеров взаимодействия ASCS: чтение, запись и регистрация для уведомления.