Как настроить sbc кодек

Обновлено: 29.06.2024

Многие отмечают низкое качество звука и недостаток высоких частот при использовании стандартного Bluetooth-кодека SBC, который поддерживают все наушники. Частой рекомендацией для улучшения звука является покупка устройств и наушников с поддержкой кодеков aptX и LDAC. Эти кодеки требуют лицензионных отчислений, поэтому устройства с их поддержкой стоят дороже.

Оказывается, низкое качество SBC обусловлено искусственными ограничениями Bluetooth-стеков и настроек наушников, и это ограничение можно обойти на любых существующих устройствах.
Я предлагаю всем, кого интересует Bluetooth-аудио, поучаствовать в тестировании совместимости различных наушников, ресиверов, стереосистем, автомобильных головных устройств, с высокими битрейтами.
Если по результатам теста подавляющее большинство устройств будут работать с высокими битрейтами, я сделаю патч для Android и отправлю его в AOSP и сторонние прошивки, и высокое качество Bluetooth-аудио будет доступно всем, на любых наушниках и смартфонах, независимо от поддержки кодеков с лицензионными отчислениями.

Обновление: тест окончен, см. результаты. Файлы для модификации больше не принимаются. Не загружайте библиотеки в тему!

SBC XQ интегрирован в прошивку LineageOS, в сборки LineageOS 15.1 от 31 марта 2019 года и новее, и в LineageOS 16 от 13 мая 2019 года и новее.

  • Количество и тип каналов: Joint Stereo, Stereo, Dual Channel, Mono;
  • Количество частотных полос: 4 или 8;
  • Количество блоков в пакете: 4, 8, 12, 16;
  • Алгоритм распределения битов при квантовании: Loudness, SNR;
  • Максимальное и минимальное значение пула битов, используемых при квантовании (bitpool): обычно, от 2 до 53.

Прикрепленное изображение

Например, Dual Channel кодирует каналы раздельно, используя весь bitpool для каждого из каналов. Заставив устройство использовать Dual Channel вместо Joint Stereo, мы получим почти удвоенный битрейт при том же максимальном значении bitpool: 617 кбит/с.
По моему мнению, использование не привязанного к профилю значения bitpool на этапе согласования — недоработка стандарта A2DP, которая и привела к искусственному ограничению качества SBC. Разумней было бы согласовывать bitrate, а не bitpool.

Такие фиксированные значения Bitpool и Bitrate берут свое начало из таблицы с рекомендованными к использованию значениями для высококачественного аудио. Но рекомендация — не повод ограничиваться этими значениями.

Прикрепленное изображение


Спецификация A2DP v1.2, которая была активна с 2007 по 2015 год, предписывает всем декодирующим устройствам корректно работать с битрейтами до 512 кбит/с:
The decoder of the SNK shall support all possible bitpool values that do not result in excess of the maximum bit rate. This profile limits the available maximum bit rate to 320kb/s for mono, and 512kb/s for two-channel modes.

В новой версии спецификации ограничение по битрейту отсутствует. Предполагается, что современные наушники, выпущенные после 2015 года и поддерживающие EDR, могут поддерживать битрейты до 730 кбит/с.

По какой-то причине, у проверенных мной Bluetooth-стеков Linux (PulseAudio), Android, Blackberry и macOS есть искусственные ограничения максимального значения параметра bitpool, который напрямую влияет на максимальный битрейт. Но это — не самая большая проблема, почти все наушники тоже ограничивают максимальное значение bitpool числом 53.
Как я уже успел убедиться, большинство устройств отлично работает на модифицированном Bluetooth-стеке с битрейтом в 507 кбит/с, без прерываний и треска. Но такой битрейт никогда не будет согласован в обычных условиях, на обычных Bluetooth-стеках.

Тестирование на устройстве с Android
Для тестирования со смартфона или планшета под управлением Android придется модифицировать Bluetooth-стек, для чего необходимы root-права.

Обновление: тест окончен, см. результаты. Файлы для модификации больше не принимаются. Не загружайте библиотеки в тему!

Unrestricted/unlimited-версии согласуют режим Dual Channel и отключают ограничение битрейта (будет использоваться 617-660 кбит/с), версии 482, 486 повышают ограничение битрейта до 482 и 486 кбит/с соответственно (согласуется 474-485 кбит/с).

Если вы разработчик прошивки, и собираете ее из исходных кодов (Android 5-7)

Патчсет, увеличивающий Bitpool и добавляющий опцию включения Dual Channel в меню Bluetooth, доступен по следующей ссылке:
LineageOS 14.1 (Android 7.1.2)

Ниже представлена устаревшая информация, оставлена только для истории.

Описанные модификации предназначены только для проведения тестирования, и не должны включаться в стабильную ветку прошивок!
Данные модификации применимы только к оригинальному стеку Android (bluedroid). Для измененного стека от Qualcomm модификации будут отличаться.
Для Android 5-7, нужно модифицировать следующие файлы:
1. Заменить Joint Stereo на Dual Channel в стандартной конфигурации
android/platform/external/bluetooth/bluedroid/btif/co/bta_av_co.c:99
const tA2D_SBC_CIE btif_av_sbc_default_config =
BTIF_AV_SBC_DEFAULT_SAMP_FREQ, /* samp_freq */
A2D_SBC_IE_CH_MD_JOINT, /* ch_mode */
A2D_SBC_IE_BLOCKS_16, /* block_len */
A2D_SBC_IE_SUBBAND_8, /* num_subbands */
A2D_SBC_IE_ALLOC_MD_L, /* alloc_mthd */
BTA_AV_CO_SBC_MAX_BITPOOL, /* max_bitpool */
A2D_SBC_IE_MIN_BITPOOL /* min_bitpool */
>;

Заменить A2D_SBC_IE_CH_MD_JOINT на A2D_SBC_IE_CH_MD_DUAL.

Переместить if с A2D_SBC_IE_CH_MD_DUAL наверх, чтобы он выбирался первым.

3. Убрать или увеличить ограничение битрейта
В Bluetooth-стеке Android установлено ограничение не только на bitpool, но и на битрейт, в 328 кбит/с. Если наушники, например, поддерживают bitpool 53 при 48 кГц, то Android понизит его до 51, чтобы уместиться в ограничение битрейта. Это произойдет уже на этапе отправки кодированного аудио, а не на этапе согласования, не обращайте внимание на значение max bitpool в Bluetooth-пакете SetCapabilities.
android/platform/external/bluetooth/bluedroid/btif/src/btif_media_task.c:172

Заменить на 512.

4. (только для экспериментов) Убрать ограничение MTU.
Необходимо только для битрейтов

Ниже представлена устаревшая информация, оставлена только для истории.

1. Добавить поддержку Dual Channel в A2DP SBC Source
/platform/system/bt/stack/a2dp/a2dp_sbc.cc:55
/* SBC SRC codec capabilities */
static const tA2DP_SBC_CIE a2dp_sbc_caps = A2DP_SBC_IE_SAMP_FREQ_44, /* samp_freq */
(A2DP_SBC_IE_CH_MD_MONO | A2DP_SBC_IE_CH_MD_JOINT), /* ch_mode */
(A2DP_SBC_IE_BLOCKS_16 | A2DP_SBC_IE_BLOCKS_12 | A2DP_SBC_IE_BLOCKS_8 |
A2DP_SBC_IE_BLOCKS_4), /* block_len */
A2DP_SBC_IE_SUBBAND_8, /* num_subbands */
A2DP_SBC_IE_ALLOC_MD_L, /* alloc_method */
A2DP_SBC_IE_MIN_BITPOOL, /* min_bitpool */
A2DP_SBC_MAX_BITPOOL, /* max_bitpool */
BTAV_A2DP_CODEC_BITS_PER_SAMPLE_16 /* bits_per_sample */
>;

Добавить A2DP_SBC_IE_CH_MD_DUAL в ch_mode.

2. Заменить Joint Stereo на Dual Channel в стандартной конфигурации
/platform/system/bt/stack/a2dp/a2dp_sbc.cc:82

/* Default SBC codec configuration */
const tA2DP_SBC_CIE a2dp_sbc_default_config = A2DP_SBC_IE_SAMP_FREQ_44, /* samp_freq */
A2DP_SBC_IE_CH_MD_JOINT, /* ch_mode */
A2DP_SBC_IE_BLOCKS_16, /* block_len */
A2DP_SBC_IE_SUBBAND_8, /* num_subbands */
A2DP_SBC_IE_ALLOC_MD_L, /* alloc_method */
A2DP_SBC_IE_MIN_BITPOOL, /* min_bitpool */
A2DP_SBC_MAX_BITPOOL, /* max_bitpool */
BTAV_A2DP_CODEC_BITS_PER_SAMPLE_16 /* bits_per_sample */
>;

Заменить A2DP_SBC_IE_CH_MD_JOINT на A2DP_SBC_IE_CH_MD_DUAL.

static bool select_best_channel_mode(uint8_t ch_mode, tA2DP_SBC_CIE* p_result,
btav_a2dp_codec_config_t* p_codec_config) if (ch_mode & A2DP_SBC_IE_CH_MD_JOINT) p_result->ch_mode = A2DP_SBC_IE_CH_MD_JOINT;
p_codec_config->channel_mode = BTAV_A2DP_CODEC_CHANNEL_MODE_STEREO;
return true;
>
if (ch_mode & A2DP_SBC_IE_CH_MD_STEREO) p_result->ch_mode = A2DP_SBC_IE_CH_MD_STEREO;
p_codec_config->channel_mode = BTAV_A2DP_CODEC_CHANNEL_MODE_STEREO;
return true;
>
if (ch_mode & A2DP_SBC_IE_CH_MD_DUAL) p_result->ch_mode = A2DP_SBC_IE_CH_MD_DUAL;
p_codec_config->channel_mode = BTAV_A2DP_CODEC_CHANNEL_MODE_STEREO;
return true;
>
if (ch_mode & A2DP_SBC_IE_CH_MD_MONO) p_result->ch_mode = A2DP_SBC_IE_CH_MD_MONO;
p_codec_config->channel_mode = BTAV_A2DP_CODEC_CHANNEL_MODE_MONO;
return true;
>
return false;
>

Переместить if с A2DP_SBC_IE_CH_MD_DUAL наверх.

Заменить на 512.

5. (только для экспериментов) Убрать ограничение MTU
Необходимо только для битрейтов от 580 кбит/с и выше.
/platform/system/bt/stack/a2dp/a2dp_sbc_encoder.cc:47

Если вы хотите изменить существующий собранный файл библиотеки (Android 5-7)

1. Скачайте и установите IDA Pro, откройте bluetooth.default.so, дождитесь окончания анализа файла (внизу слева должно быть AU: Idle).
Будем искать код из файла Ищем код из файла android/platform/external/bluetooth/bluedroid/btif/co/bta_av_co.c:411.
Значения констант следующие:

A2D_SBC_IE_SAMP_FREQ_48 = 0x10
A2D_SBC_IE_SAMP_FREQ_44 = 0x20
A2D_SBC_IE_CH_MD_JOINT = 0x01
A2D_SBC_IE_CH_MD_STEREO = 0x02
A2D_SBC_IE_CH_MD_DUAL = 0x04
A2D_SBC_IE_CH_MD_MONO = 0x08

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Прикрепленное изображение

Файл android/platform/external/bluetooth/bluedroid/btif/co/bta_av_co.c:99.
10. Нужно заменить A2D_SBC_IE_CH_MD_JOINT на A2D_SBC_IE_CH_MD_DUAL. Можно обойтись только HEX-редактором. Ищем "10 01 10 04 01 35 02" (Если стек собран со стандартной частотой 44.1 кГц) или "20 01 10 04 01 35 02" (48 кГц), должно быть одно совпадение. Заменяем второй байт на 0x04: "10 04 10 04 01 35 02".

Прикрепленное изображение

  • 1MORE iBFree
  • JBL Everest 310
  • JBL Everest 700

  • JBL E55BT

    (Сообщают, что не поддерживают Dual Channel, но работают. Не соответствуют спецификации A2DP.)
  • Skullcandy HESH 3
  • SoundPEATS Q30
  • Sony WH-H900N

  • Sony MDR-1ABT
  • Sony MDR-ZX770BT

  • Sony MDR-XB650BT
  • Sony MDR-XB950B1
  • Sony SBH50


  • Bluedio A/Air (Сообщают, что не поддерживают Dual Channel, но работают. Не соответствуют спецификации A2DP.)
  • Bluedio T4s (Bitpool max 39. Сообщают, что не поддерживают Dual Channel, но работают, при 462 кбит/с. Не соответствуют спецификации A2DP.)
  • Bluedio T5 (Сообщают, что не поддерживают Dual Channel, но работают. Не соответствуют спецификации A2DP.)
  • Bluedio T6 (Сообщают, что не поддерживают Dual Channel, но работают. Не соответствуют спецификации A2DP. Чип Adopt Max 97220.)
  • Marshall Major II Bluetooth
  • Overdrive RealForce D1
  • DEXP BT-210
  • DEXP BT-220

  • DEXP BT-260
  • DEXP BT-280
  • Edifier W288BT



  • Xiaomi MI Portable Bluetooth Speaker
  • Xiaomi Square Box Bluetooth Speaker 2
  • Sennheiser HD 4.40BT
  • AKG K845BT
  • Beyerdynamic Amiron Wireless
  • Bowers & Wilkins PX
  • Bowers & Wilkins Zeppelin Wireless
  • House of Marley Liberate XLBT
  • Harman Kardon Onyx Studio 4
  • Harman Kardon Aura Studio 2
  • QCY QY8







  • Hagibis X2

  • Sony DSX-A400BT (автомобильное головное устройство)
  • Автомобильное головное устройство на чипе CSR8645 (noname)
  • Автомобильный DAC Lusya bluetooth 4.0 with AK4490, NE5532
  • JBL Everest 310 (617-660 кбит/с)
    (576 кбит/с)
    (573 кбит/с)
  • SoundPEATS Q30
  • DEXP BT-210 (617 кбит/с)
  • DEXP BT-220 (617 кбит/с)
  • DEXP BT-260 (617 кбит/с)
  • DEXP BT-280 (617 кбит/с)
    (576 кбит/с)
  • Sony MDR-ZX770BT (617-660 кбит/с)

  • Marshall Major II Bluetooth (617-660 кбит/с)
  • Overdrive RealForce D1 (730 кбит/с, dual channel, 4 subbands)
  • Jaybird X3
  • QCY QY8 (617 кбит/с)
  • Edifier W288BT (617 кбит/с)
    (596 кбит/с)
    (617 кбит/с)
    (617 кбит/с)
    (576 кбит/с)
    (617 кбит/с)
  • Автомобильный DAC Lusya bluetooth 4.0 with AK4490, NE5532 (576 кбит/с)
  1. Harper HB-202 (треск; чип Beken BK3256)
    (высокочастотные искажения, треск; гарнитура 2009 года)
    (не успевают обрабатывать пакеты)
    (нет звука)
  2. Overfly mini Bluetooth receiver (нет звука)

Зачем это нужно: SBC 328k и SBC 485k против aptX
Вопреки расхожему мнению о качестве звука кодека aptX, на некоторых файлах он может давать результаты хуже, чем SBC со стандартным битрейтом в 328 кбит/с.

SBC динамически выделяет биты квантования для частотных полос, действуя по принципу «от нижних к верхним». Если весь битрейт использовался на нижние и средние частоты, верхние частоты «обрежутся» (вместо них будет тишина).
aptX квантует частотные полосы одним и тем же количеством бит постоянно, из-за чего у него постоянный битрейт: 352 кбит/с для 44.1 кГц, 384 кбит/с для 48 кГц, и он не может «перенести биты» на те частоты, которые больше всего в них нуждаются. В отличие от SBC, aptX не будет «обрезать» частоты, а будет добавлять в них шумы квантования, уменьшая динамический диапазон аудио, и иногда привносить характерные потрескивания. SBC же «съедает детали» — отбрасывает наиболее тихие участки.
В среднем, по сравнению с SBC 328k, aptX вносит меньше искажений в музыку с широким частотным диапазоном, но на музыке с узким диапазоном частот и широким динамическим диапазоном SBC 328k иногда выигрывает.

Разъём под наушники оканчательно изчез из смартфонов. Беспроводных наушников становится всё больше, а значит самое время поговорить про Bluetooth-кодеки. Тем более тема полна спорных вопросов.

Правда ли, что кодек SBC так плох? В чем популярность AAC? LDAC — это маркетинговое фуфло? И что готовит нам новый король кодеков от самой Bluetooth?

А также сегодня расскажем, как на качество звучания влияют другие железки внутри наушников? И послушаем немного на примере новых наушников.

Кодеки и сжатие

Люди часто сравнивают кодеки только по одному параметру — максимальному битрейту. По идее - чем выше битрейт, тем больше передается данных и тем лучше качество.

Вот, к примеру, посмотрите на картинку, у LDAC максимальный битрейт 990 кбит/с, ведь это гораздо лучше, чем 250 кбит/с у AAC?

Но это не всегда так, ведь на качество звука и стабильность соединения влияет гораздо больше факторов, чем просто битрейт. Поэтому сегодня будем копать глубоко.

Сперва взглянем на линейку. Что у нас есть?

AAC, SBC - самые популярные и массовые. Еще есть LDAC с высоким битрейтом. А еще aptX и с недавних пор новый LHDC, который продвигает HUAWEI. И у него есть несколько навороченных фишек.

Вообще, важно сказать, что за звучание отвечает не только кодек. Сами инженерные решения и компоненты в наушниках тоже очень важны. Кстати? новые наушники HUAWEI мы сегодня протестируем - FreeBuds 4i . Например, здесь за звук отвечает: динамический излучатель на 10 мм, это немало. Да еще и с полимерной диафрагмой.

SBC — low-complexity sub-band codec

А начнем мы с кодека SBC. Это стандартный кодек для всех Bluetooth-аудиоустройств. Он поддерживиется всеми наушниками и плеерами кроме устройств Apple, потому как Apple работает только с кодеком AAC. О чем мы еще поговорим.

У SBC есть масса преимуществ. Во-первых, это очень простой для вычислений кодек. Для того чтобы сжать аудио, всё что он делает — это разбивает аудио на несколько частотных полос: низкие, средние высокие частоты, а дальше начинает квантовать, то есть округлять значения, тем самым экономя биты информации.

Делает он это от нижних частот к верхним. И если весь битрейт использовался на нижние и средние частоты, верхние частоты «обрежутся» (вместо них будет тишина).
Если по-простому он оставляет басы, а верха обрезает. И чем меньше мы выделили кодеку битрейта, тем больше частот обрежется.

К примеру, вот на этой спектрограмме чередуются сжатые и несжатые фрагменты. На участках закодированных в SBC видно как кодек режет тихие звуки выше 17,5 кГц и совсем не выделяет битов информации для полосы выше 20 кГц.

SBC может работать в очень широком диапазоне битрейтов - от 10 до 1500 кбит/с и от этого, естественно, сильно зависит качество. При битрейте 328 кбит/с - звук отличный, практически неотличимый от оригинала, но уже при 240 кбит/с - звук посредственный.

При этом SBC на максимальном битрейте 1500 кбит/с вы нигде не встретите, потому как все производители наушников режут битрейт до 328 кбит/с. Почему так? Скорее всего дальше уже начинаются проблемы с соединением.

Более того, у кодека SBC нет фиксированных профилей, есть только рекомендуемые. Поэтому производители наушников могут выставлять любые ограничения на битрейт, какие-только захотят. Отсюда и плохая репутация у кодека.

Но если захотеть, можно так настроить кодек, что у него и низкие задержки будут и высокое качество звучания. Гибкость кодека SBC - это и его преимущество, и недостаток одновременно.

В наших наушниках он тоже есть. Послушаем! На самом деле, одна из важных вещей в кодеках - их алгоритмы обработки. А если в наушниках есть еще и шумоподавление, как в наших, то на процессор ложится высокая нагрузка. Для этого тут специальный чип от BES Technic, но к этому еще перейдем.

FreeBuds 4i поддерживают и второй популярный кодек - AAC. Давайте разберемся с ним.

AAC — Advanced Audio Coding

Второй по популярности кодек - AAC. Это и не удивительно, ведь это кодек по умолчанию для устройств на iOS и MacOS.

AAC, в отличие от SBC, сложный для вычисления кодек. А всё потому, что для сжатия аудиосигнала он использует серьёзную психоакустическую модель. Эм… Серьёзную что?

Да, есть такая наука - психоакустика. Она изучает то, как человек воспринимает звуки с точки зрения физиологии и психологии.

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

Первый удачный аудиокодек, в котором была использована психоакустическая модель - это MP3. А в кодеке AAC эту модель еще сильнее прокачали, поэтому AAC при битрейте 256 кбит/с, для человека звучит также хорошо как MP3 320 кбит/с. А если учесть, битрейт в принципе, не может быть низким. Он варьируется от 256 кбит/с до 320 кбит/с, выходит что AAC в принципе не может плохо звучать и при любых условиях он будет уделывать SBC. Так ведь?

К сожалению, нет. Так как AAC сложный для вычисления кодек, чтобы он хорошо звучал, нужен очень хороший декодер. Например, их собственный, который так и называется Apple AAC. Кстати, все компании платят лицензионные отчисления за использование кодека. Ну точнее, мы платим.

Требует лицензирования и лицензионных отчислений: $15000 единовременно (или $1000 для компаний с менее 15 работниками) + $0.98 за первые 500000 устройств.

В Android-устройствах в лучшем случае используется второй по качеству кодировщик — Fraunhofer FDK AAC, а по факту вообще не пойми что. Потому как качество AAC очень сильно варьируется. Взгляните на тест от SoundGuys.

Фиолетовая линия — это тестовый файл. И видно, что iPhone (голубая линия) обрубил гораздо меньше информации, чем Android устройства.

С другой стороны посмотрите как уделывают, Android-смартфоны с SBC всех остальных с кодеком AAC, включая iPhone.

Поэтому на Android никогда не знаешь, как хорошо будет звучать AAC.

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

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

Одна из фишек FreeBuds 4i - низкая задержка. Она реализована за счет собственных аглоритмов. Но лучше работает ожидаемо только со смартфонами Huawei. Кстати еще тут есть мгновенное подключение.

И даже если вы и так слушаете файл формата AAC на iOS=устройстве, всё равно его для начала нужно декодировать из AAC, а потом снова закодировать в ACC, чтобы передать по воздуху. При этом качество чуть-чуть просядет. Это необходимо, чтобы во время воспроизведения музыки могли также микшироваться и другие системные звуки, например, уведомления.

FREEBUDS 4i

Так какой всё таки лучше использовать кодек для Android? SBC или AAC?

Ответ простой, зависит от девайса и наушников.

Возьмём, к примеру, новые TWS наушники от HUAWEI — FreeBuds 4i. Они поддерживают и SBC, и AAC. Но HUAWEI явно хочет, чтобы вы юзали AAC. А всё потому, что SBC тут порезан до 220 кбит/с, а на таком битрейте SBC выдаёт очень посредственное звучание, в добрых традициях первых Bluetooth-гарнитур.

А вот AAC, наоборот, звучит и работает идеально. Но достигается это за счет жесткой хардверной силы — отдельного чипа со встроенным кодером и ЦАПом BES2500Z от BES Technic. Есть даже его фоточки, зацените.

Эта штука тут прокачивает AAC на максимум: обрабатывает аудио, кодирует, декодирует, уменьшает задержки, снижает энергопотребление и прочее. К примеру, тут работает технология синхронизации аудио и видео при просмотре YouTube и задержка вообще отсутствует.

Также эти наушники живут дольше всех наушников HUAWEI — 10 часов непрерывного воспроизведения без кейса и 22 часа с подзарядкой от чехла. Но это правда с выключенным шумоподавлением. С включенным на пару часов поменьше, что всё равно очень хорошо. Особенно с учетом того, что тут есть быстрая зарядка: 10 минут зарядки хватит на 4 часа музыки.

Что еще радует - качество микрофонов: ты хорошо слышишь собеседника, собеседник хорошо слышит тебя.

Управляются наушники при помощи касаний: двойное нажатие - Play/Pause или принять/завершить вызов. Долгое касание, переключение режимов шумоподавления и прозрачности.

Но самое главное, как они звучат? Тут интересно. Звук нетипичный для TWS-наушников, в которых обычно задирают басы, как на Sony. Тут наоборот бас не выпячивается. Из-за чего отлично слышен вокал и вообще вся середина и верха очень детализированные. В целом, звучание очень объёмное и оно на голову выше любых наушников Apple и уж тем более каких либо недорогих TWS. Добавим сюда удобный компактный кейс и в общем, наушники огонь.

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

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

Про SBC и AAC понятно — оба кодека могут звучать отлично, если будут в связке с правильным оборудованием или наоборот будут звучать плохо с неправильным. Но есть ли кодек который будет звучать хорошо всегда? Да, такой кодек есть и это aptX.

aptX — это простой для вычислений кодек без всякой психоакустики. Он использует адаптивную дифференциальную импульсно-кодовую модуляцию (ADPCM).

Не будем вдаваться в подробности, что это такое. Но если по-простому, он тоже использует квантование — округление значений сигнала.

Кодек aptX принадлежит Qualcomm, но вопреки всеобщему заблуждению, Qualcomm его не изобретали. А появился он еще в 1988 году, за 14 лет до появления Bluetooth.

В общем, технология старая, а сам кодек нельзя назвать самым умным, качественным и эффективным. Тогда почему же aptX считается хорошим кодеком? На то есть несколько причин.

Во-первых, у aptX есть несколько разновидностей, которые хорошо справляются со своими задачами.

Обычный aptX отлично подходит для нетребовательного слушателя. На сходном битрейте он будет звучать примерно как SBC. Но aptX поддерживает битрейт выше SBC, а значит при хорошем сигнале и звучать он будет лучше.

SBC 10 — 328 кбит/с

aptX 128 / 256 / 352 / 384 кбит/с

aptX HD с улучшенным профилем кодирования и еще более задранным битрейтом.

aptX 128 / 256 / 352 / 384 кбит/с

aptX HD 192 / 384 / 529 / 576 кбит/с

Он уже подойдёт более придирчивому слушателю. По тестам SoundGuys, это кодек способен выдавать близкое к CD качеству, а значит кодек подойдет любителям lossless музыки.

Есть aptX Low Latency, с уменьшенными задержками для любителей игр, и aptX Adaptive с динамически меняющимся битрейтом для более стабильного соединения.

aptX 128 / 256 / 352 / 384 кбит/с

aptX HD 192 / 384 / 529 / 576 кбит/с

aptX Low Latency 352 кбит/с

aptX Adaptive 276-420 кбит/с

Но самое главное aptX используют жестко заданные профили, которые не может изменить ни производитель смартфона или плеера, ни производитель наушников. А значит, вы всегда будете знать наперед, какое качество звука вы получите без сюрпризов.

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

Типа TrueWireless Stereo, которая позволяет направлять два независимых сигнала в оба наушника.

А вот наушники HUAWEI умеют это делать за счет своих технологий, поэтому они часто и стоят дешевле, и батарейку держат лучше. Сила вертикальной интеграции.

Ну а без всех дополнительных плюшек aptX - кодек не плохой, но опять же, по всем параметрам, не выдающийся. Впрочем, вы сами можете послушать разницу в звучании SBC, aptX и aptx HD прямо у себя в браузере. Благодаря вот этому чудесному человеку с Хабра.

Особо обратите внимание на эквалайзере, как SBC внаглую отрезает все частоты после 20 кГц. Картинка кликабельна и ведёт на плеер из статьи .

И тут мы потихоньку приближаемся к выдающимся кодекам для ценителей самого качественного звука. Конечно же речь про LDAC.

Это так называемый Hi-Res кодек от Sony и его главная отличительная черта — поддержка высоких битрейтов - вплоть до 990 кбит/с и частоты дискретизации до 96 кГц

303/606/909 кбит/с (для 44.1 и 88.2 кГц)

330/660/990 кбит/с (для 48 и 96 кГц)

Кодек способен выдавать CD-качество без потерь, в отличие от aptX HD, который всё-таки близок к CD-качеству, но не совсем. Все это подтверждают тесты SoundGuys.

И недостатка у кодека буквально два:

  1. Маркетинг. Его продвигают как кодек для Hi-Res аудио, отсюда и поддержка частоты дискретизации 96 кГц. Но конечно же, ни один беспроводной кодек даже близко не справится с настоящим Hi-Res.
  2. Качество соединения. Оно уж очень слабое. Если слушать на максимальном качестве 990 кбит/с, то стоит подальше отойти от телефона, прикрыть его рукой или просто положить в задний карман, почти гарантированно начинаются небольшие заикания, что сразу же портит кайф от прослушивания качественного звука.

Короче, кодек явно не для пробежек.

Плюс есть третий недостаток. На низком битрейте, который для этого кодека целых 330 кбит/с, LDAC проигрывает по качеству и SBC и AAC и aptX и ситуацию усугубляет то, что многие смартфоны по умолчанию врубают именно такое качество.

Какое качество выставляет ваш смартфон можно посмотреть в настройках для разработчика.

HWA LHDC — Low Latency High-Definition Audio Codec

Но не спешите расстраиваться, если главный аудиофильский кодек вас разочаровал. Ведь есть еще более аудиофильский кодек, который лишен недостатков LDAC.

Имя этому кодеку LHDC или HWA, его по разному называют.

Так вот LHDC, что буквально значит кодек высокого разрешения с низкими задержками. Он разработан союзом Hi-Res Wireless Audio и компанией Savitech. А продвигает кодек в массы HUAWEI. Впервые он появился в смартфоне HUAWEI Mate 10. А сейчас он поддерживается во все новых смартфонах HUAWEI и еще в куче смартфонах Xiaomi:

  • Huawei P30
  • Huawei P20 Pro
  • Huawei P20
  • Huawei P20 Lite
  • Huawei Mate 10 pro
  • Huawei Mate 10
  • Huawei Mate RS
  • Xiaomi Mi 9 Pro 5G
  • Xiaomi Mi Note 10 Pro
  • Xiaomi Mi Note 10
  • Xiaomi Mi 8 Transparent Edition
  • Xiaomi Mi 8 Pro
  • Pocophone F1
  • Xiaomi Mi 8 SE
  • Xiaomi Mi 8 Lite
  • Xiaomi Mi Max 3
  • Xiaomi Mi Mix 3
  • Redmi K20
  • Xiaomi Mi 9T
  • Redmi K20 Pro
  • Xiaomi Mi 9T Pro
  • Xiaomi Mi 9 SE
  • Xiaomi CC9
  • Xiaomi Mi 9 Lite
  • Redmi K30
  • Redmi K30 5G

Н в будущем его поддержка может появиться вообще во всех смартфонах, потому как он поддерживается Android 10 и является частью AOSP.

Так вот, LHDC можно сказать прокаченная версия LDAC. Потому что он забирает все плюсы LDAC, а именно, высокий битрейт, вплоть до 900 кбит/с и частоту дискретизации до 96 кГц.

LHDC — 400/560/900 кбит/с

Но при этом добавляет две версии кодека с низкой задержкой, вот с такими названиями:

LHDC с низкой зарежкой = LDHC-LL или LARC

И решает главную проблему LDAC — слабую надёжность соединения.

В общем, LHDC - пока претендент номер один на звание идеального кодека для аудиофилов. Но чтобы в этом наверняка убедиться нужно дополнительное подробное тестирование. Пока информации в сети о кодеке мало.

Отсюда резонный вопрос, у меня тут наушники от HUAWEI и я рассказываю про кодек от HUAWEI. А есть ли он в этих наушниках?

Эм… нет. Это базовая модель, в которой особое внимание уделили оптимизации.

Но самый интересный и интригующий нюанс, эти наушники поддерживают новую версию Bluetooth 5.2, в которую добавили поддержку нового кодека пришедшего на смену SBC. Кодек называется LC3 и он должен произвести революцию в мире беспроводного аудио такую же, как в свое время произвел формат MP3.

Чтобы вы понимали, при битрейте в два раза ниже чем SBC, новый кодек звучит на слух практически неотличимо от несжатого аудио.

Это действительно большой прорыв. Но, несмотря на то, что LC3 - это неотъемлемая часть Bluetooth 5.2 и всё устройства с новым Bluetooth должны поддерживать новый кодек, пока нет ни одного смартфона с Bluetooth 5.2. И эти наушники тоже пока что не поддерживают ни новый кодек, ни новые фишки Bluetooth 5.2, которые сами по себе - отдельный большой разговор. В будущем, возможно поддержку добавят, но мы точно не знаем.

Поэтому об LC3 и Bluetooth 5.2 мы поговорим в отдельном большом материале.

Итоги

Мы рассказали не обо всех кодеках, а только о самых популярных. Например, мы не упомянули о Samsung Scalable Codec, у которого основная фишка стабильность соединения, и это по сути конкурент aptX Adaptive. Не упомянули про UAT-кодек с бешеным битрейтом 1,2 МБит/с, который работает только через приложение Hiby Music.

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

А если вам приглянулись наушники HUAWEI FreeBuds 4i - ныряйте по ссылке . Как обычно там вас ждут подарки и специальные предложения от HUAWEI.


Вас не устраивает звук в ваших Bluetooth наушниках? Возможно все дело в том, что ваш Android использует «плохой» аудиокодек SBC вместо продвинутых LDAC, aptX, aptX HD, AAC? Как включить aptX на Android?

Как на Android включить Bluetooth кодек LDAC, aptX, aptX HD

Содержание - Как на Android включить Bluetooth кодек LDAC, aptX, aptX HD:

Все больше производителей отказывается от аудио разъема 3.5 мм в пользу передачи звука по Bluetooth, но вот не всегда такие новшества так полезны! Все дело в кодеках… и Android по умолчанию использует не самый лучший!

Немного о Bluetooth аудиокодеках

  • SBC (Subband Coding) — этот кодек с потерями, на данный момент используется в большинстве случаях передачи звука по беспроводным наушникам. Самой главной проблемой SBC является то, что кодек очень сильно искажает звук, больше чем MP3, поэтому для прослушивания высококачественного аудио материала он явно не годиться.
  • AAC (Advanced Audio Coding) — также аудиокодек с потерями, но качество звука гораздо выше чем SBC.
  • aptX и aptX HD — аудиокодек разработанный компанией Qualcomm, поэтому его можно встретить практически только на устройствах, где установлен процессор Snapdragon. Кодек aptX и aptX HD в отличие от SBC и AAC, практически не имеет потерь, аудио компрессируется и передается по Bluetooth.
  • LDAC — не так давно разработанный аудиокодек компанией Sony, который должен сместить с поста устоявшийся кодек SBC. Этот аудиокодек выполняет компрессию с небольшими потерями. C версии Android 8.0 Oreo, стал частью системы, так что возможно LDAC вскоре станет стандартном для передачи звука по беспроводным наушникам и колонкам.

Как узнать кодек bluetooth что используется?

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

BlueTooth

Как включить необходимый Bluetooth аудиокодек на Android?

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

Второе условие, версия Android на телефоне должна быть 8.0 или более новая.

Для того чтобы активировать один из перечисленных кодеков, вам понадобиться активировать « Меню Разработчика «. Как это сделать? Вы можете посмотреть, два видео ролика.

После того как вы оказались в меню разработчика, пролистайте меню вниз до пункта «Аудиокодек для передачи через Bluetooth» и выберите его.

Выберите необходимый кодек — LDAC, apt, aptX, AAC, SBC.

Вам удалось поменять кодек bluetooth! Звук по беспроводным наушникам должен улучшиться!

Егор

Егор Морозов | 5 Мая, 2019 - 14:15


В последнее время выпускается все больше беспроводных наушников и смартфонов, лишенных 3.5 мм разъема, и последние приобретают все более навороченные Bluetooth-кодеки. Однако десктопные системы в этом плане куда более консервативные: тут практически все устройства продолжают оснащаться разъемом для наушников, да и провод мешает редко, поэтому с передачей звука по Bluethtooth тут все печальнее. Однако настраиваемость у ПК сильно выше, чем у смартфонов, поэтому если вы купили классные беспроводные наушники — не расстраивайтесь, вы сможете насладиться в них качественным звуком и под десктопными ОС.

  • SBC — базовый кодек, включенный в стандарт A2DP, который поддерживают 99% всех устройств с BT, выпущенные за последние лет 10, и абсолютно все беспроводные наушники. Соответственно, если вы не хотите разбираться, то можете просто купить любые BT-наушники и подключить их к вашему устройству — музыка будет передаваться. Казалось бы, в чем тогда проблема? А она в том, что SBC по качеству передачи звука сравним с mp3 с битрейтом в 128 кбит/c: то есть слушать подкасты или ролики с YouTube можно без проблем, а вот насладиться музыкой едва ли получится. Поэтому последние лет 10 стали развиваться более «крутые» кодеки, которые лучше передают звук.
  • AptX — пожалуй, самый качественный скачок после SBC. И хотя битрейты у них сравнимы (

В Linux, как обычно, разброд и шатания, но в среднем после установки драйверов на ваш BT-адаптер вы скорее всего получите все тот же SBC. Причем, к слову, это единственное семейство ОС, где решить проблему с высококачественным беспроводным звуком можно чисто программно, но об этом ниже.

В macOS все достаточно интересно: система поддерживает SBC, AAC и AptX, причем по умолчанию приоритет дается именно AAC, на втором месте AptX, ну и под конец SBC. Если ваши наушники поддерживают сразу несколько из этих кодеков, то можно выбрать интересующий вас, но об этом опять же ниже.

Добиваемся высококачественного звука по Bluetooth на Windows

Если вы сидите на Windows 7 или 8 и не хотите вкладывать в эту затею больше 1000 рублей — ваш выбор это AptX: конечно, система не поддерживает его по умолчанию, однако на том же AliExpress за 350 рублей можно найти USB-адаптер от Ugreen с поддержкой AptX, только нужно будет поставить драйвера CSR Harmony, которые легко находятся в интернете. В России аналоги стоит дороже, порядка 700 рублей — например, это Orico BTA-403 или Dexp AT-BT403A. Если вы все сделали правильно, то при подключении наушников с AptX будет всплывать окошко, уведомляющее об использовании этой технологии:


На Windows 10 с этим, очевидно, куда легче: система поддерживает AptX «из коробки», поэтому если ваш ПК не имеет поддержки Bluetooth, то можно подключить абсолютно любой USB BT-адаптер, хоть с Ali за 200 рублей, и все заработает. Если же у вас ноутбук с BT-адаптером, или же его поддержка есть на вашей материнской плате — вам вообще ничего делать не нужно. Но, увы, Windows 10 так и не умеет показывать, какой кодек сейчас используется, и даже если это AptX, то никакого всплывающего окошка не будет (что очевидно, ибо это по сути обратная разработка AptX от Qualcomm без всяких лицензионных отчислений последней). Поэтому придется или опираться на данные вашего BT-адаптера, если он умеет показывать кодек, или воспользоваться сторонней программой — например, Bluetooth Tweaker.

Но что делать, если вы хотите играть и вам требуется AptX LL, или же вы хотите более качественного звука — например, AptX HD или LDAC, и ваши наушники их поддерживают? В случае с AptX LL все достаточно просто — на Amazon или Ali по запросу «USB AptX LL» вам выпадет несколько USB-адаптеров: в случае с Китаем это скорее всего будет решение от Reiyin. Увы, тут несколькими сотнями рублей уже не отделаться — такие решения стоят от полутора тысяч рублей. Но, опять же, проблем с ними минимум: воткнули в любой USB-порт, поставили драйвера если нужно и вуаля, все работает.


В случае с AptX HD все еще сложнее: обычного USB-адаптера с его поддержкой нет в принципе, поэтому вам придется брать специальный Bluetooth трансмиттер — эдакую коробочку, которая подключается к ПК через 3.5 мм разъем или SPDIF и передает звук по BT. Решения с поддержкой AptX HD стоят на все том же Ali от полутора тысяч рублей, и тут я рекомендую брать «коробочку» от Vikefon, так как она имеет наглядную демонстрацию того, какой кодек используется при подключении. Из плюсов — не нужно абсолютно никаких драйверов, так что подключить такой трансмиттер можно к любому устройству с указанными выше выходами, моментально сделав его беспроводным. Из минусов — вы не сможете управлять музыкой кнопками на наушниках, и так же не будет работать микрофон на них.


И если вы думаете, что хуже некуда, то огорчу — трансмиттеров с поддержкой LDAC нет вообще. Единственный способ получить этот кодек на ПК это купить плеер, который одновременно может работать внешним ЦАП по 3.5 мм разъему, и при этом поддерживает LDAC. Самый дешевый такой плеер — это Shanling M0, который стоит около 6.5 тысяч рублей. Решать, стоит ли качественный беспроводной звук таких денег, только вам, я же порекомендую пользователям потоковых сервисов остановиться на AptX HD с оптимальным на мой взгляд балансом цены и качества звука.


Добиваемся высококачественного звука по Bluetooth на macOS

Как я уже говорил выше, из коробки поддерживаются два неплохих кодека для потоковых аудио сервисов — AAC и AptX. При желании, их можно настроить под себя: например, повысить битрейт AAC, или же по умолчанию заставлять наушники подключаться именно по AptX. Для этого вам понадобится программа Bluetooth Explorer, в которой все настройки достаточно интуитивны.


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

Но что делать, если хочется более качественного звука — например, AptX HD или LDAC? Увы, тут все даже немного хуже, чем на Windows: так, Bluetooth-адаптеры, подключающиеся по USB, с высокой долей вероятности не заработают. Поэтому единственный выход — это внешние Bluetooth трансмиттеры, подключаемые по 3.5 мм разъему, или же плееры в режиме ЦАП, подключаемые по нему же: подробнее о них можно почитать выше в разделе с Windows, тут все абсолютно идентично.

В итоге, как видите, десктопная техника не особо готова к беспроводному будущему: если большинство смартфонов уже из коробки имеют поддержку высококачественных кодеков, то на ПК (за исключением Linux) это практически всегда покупка дополнительных девайсов, стоящих зачастую ощутимых денег. Но, при желании, и тут можно получить даже LDAC — правда, отдав за это чуть ли не половину стоимости самих наушников с его поддержкой.

Читайте также: