Выбираем кодек для беспроводной передачи звука
Кроме того, все мы периодически подвергаемся воздействию назойливой рекламы, воспевающей удобства беспроводных гаджетов и решение проблемы передачи качественного звука по Bluetooth. Правда, за маркетинговые манипуляции потом приходится отдуваться топовым инженерам компании во время пресс-конференций, как это было в случае с аудиокодеком LDAC около пяти лет назад. Но дискуссии в рамках подобных мероприятий, несмотря на их грандиозную трагикомичность, редко интересны массовому потребителю, а вот довольные лица мировых поп-звезд, красующихся в новых беспроводных наушниках, убеждают потенциального покупателя гораздо лучше.
Безусловно, у беспроводных устройств есть плюсы, а чтобы заметить отличия от типичных (непрофессиональных) проводных гаджетов, среднестатистическому пользователю придется очень постараться. Поэтому давайте попробуем разобраться, какие варианты прослушивания музыки с помощью Bluetooth встречаются сегодня наиболее часто, чем друг от друга отличаются, как между ними переключаться и на что стоит обращать внимание.
Профильные кодеки
Качество звука, передаваемого по Bluetooth, зависит от трех основных параметров: профилей, кодеков и версии Bluetooth. На самом деле от версии Bluetooth до недавнего времени зависело настолько мало, что ею можно было пренебречь. Есть вероятность, что ситуация изменится в среднесрочной перспективе, но подробнее поговорим об этом позже.
Каждый профиль Bluetooth отвечает за описание и выполнение определенных функций. Востребованных профилей несколько десятков, однако в контексте беспроводных наушников нас интересуют только два – A2DP (Advanced Audio Distribution Profile) и AVRCP (Audio/Video Remote Control Profile). В AVRCP описываются стандарты дистанционного управления устройствами по беспроводной связи, например изменение громкости и навигация между папками с музыкальными файлами. В аудиогарнитурах также используются профили HSP (Headset Profile) и HFP (Hands-Free Profile), однако их мы касаться не будем.
За передачу аудиоданных и качество звучания музыки отвечает A2DP, в котором описаны подходящие для Bluetooth аудиокодеки и рекомендации по их имплементации в различных устройствах. Последняя версия стандарта 1.3.2, выпущенная в январе 2019 года, применяется до сих пор. На данный момент в профиле прописаны четыре основных аудиокодека, а также условия использования кодеков, разработанных производителями самостоятельно. Один из стандартных – SBC (Sub-Band Codec) – обязателен для всех устройств, в которых заявлена поддержка A2DP, а потому и наиболее распространен. Несмотря на четкие технические рекомендации по использованию еще трех аудикодеков, они не являются обязательными. Речь идет о MPEG-1/2 Layer 1/2/3 (в частности, всем известный формат MP3), MPEG-2/4 AAC и ATRAC. Из этих трех семейств только AAC используется массово, а, например, MP3-поток даже при желании не получится передать по Bluetooth. Это связано с техническими сложностями: кодирование в MP3 на лету, необходимое для передачи аудио по Bluetooth, не поддерживается современными операционными системами – ни настольными, ни мобильными. Что, конечно, не означает, что пользователь не сможет открыть на смартфоне MP3-файл и прослушать его на своих беспроводных наушниках, однако перед отправкой потока на наушники музыка будет автоматически перекодирована в один из поддерживаемых наушниками формат. Кстати, процесс совершенно незаметен для пользователя.
Итак, поддержка профиля A2DP обоими устройствами в связке (источник сигнала и его приемник) – базовое условие нормального функционирования любых Bluetooth-аудиоустройств. В то же время каждый производитель волен сам решать, какие рекомендации стандарта будет поддерживать его продукция. Единственное, в чем можно быть уверенным без дополнительного штудирования инструкций, так это в поддержке SBC-кодека, которого в принципе достаточно для сносной передачи музыки по Bluetooth.
Погружаться в технические тонкости функционирования аудиокодеков по Bluetooth не будем: во-первых, невозможно охватить их в рамках одной статьи, а во-вторых, это действительно сложная техническая история. Прежде всего для оценки качества звука будем обращать внимание на битрейт передаваемого аудиопотока. В контексте современных кодеков для Bluetooth меньший битрейт далеко не всегда указывает на худшее качество – на практике бывает даже наоборот. Но, несмотря на это, уровни битрейта все же можно и, по моему мнению, нужно использовать в качестве важного ориентира. Возьмем за идеал качество обычного Audio CD (1411 Кбит/с) и сравним с тем, что предлагают Bluetooth-кодеки.
Вернемся к SBC. Каждый производитель самостоятельно решает, как именно реализовывать кодирование и декодирование в этом формате, тем более спецификация кодека предоставляет широкие возможности для настройки множества параметров аудиопотока. Однако большинство компаний не утруждают себя глубокой настройкой SBC и используют рекомендованные в спецификации A2DP значения переменных. Максимальные рекомендованные битрейты для SBC составляют 328 и 345 Кбит/с в зависимости от частоты дискретизации (44,1 или 48 кГц). В целом эти параметры неплохи, но весь потенциал SBC не раскрывают: в частности он способен на передачу потока с битрейтом до 512 Кбит/с. Универсальный формат поддерживается всеми возможными ОС и любой Bluetooth-аппаратурой.
Одни из самых известных кодеков на смартфонах – aptX и aptX HD – работают в соответствии с намертво зашитыми настройками, которые определяет правообладатель этих технологий, компания Qualcomm. Здесь есть как плюсы, так и минусы. С одной стороны, пользователь всегда знает уровень качества звука, выдаваемого aptX. С другой – у производителя нет ни малейшего простора для настройки кодека в соответствии с пониманием того, как должен звучать его продукт. К тому же, в отличие от SBC, право использовать кодеки семейства aptX стоит денег (технология распространяется по лицензии). Эти кодеки не прописаны напрямую в A2DP, поэтому попадают в категорию Vendor Specific A2DP Codecs. Что касается битрейта aptX, то он может достигать 384 Кбит/с. Работа с aptX поддерживается в Windows 10, macOS и Android, а вот пользователям iOS на поддержку формата рассчитывать не стоит. Данный кодек является одним из наиболее используемых на Android-устройствах, и гаджетов с его поддержкой много.
В свою очередь, aptX HD доступен только пользователям Android 8 и старше, и то с условием, что производитель смартфона дополнительно заплатил за использование этой технологии. aptX HD поддерживает передачу звука с битрейтом до 576 кбит/с, и наушников с ее поддержкой на рынке мало.
AAC (Advanced Audio Coding) – еще один очень распространенный аудиокодек для передачи аудио по Bluetooth, который является частью стандарта A2DP. Однако многое зависит от особенностей его имплементации в конкретном устройстве. Исторически сложилось, что наиболее удачно он реализован в гаджетах Apple – кодек доступен в macOS, iOS, Android. Подавляющая часть беспроводных устройств работает с AAC с битрейтами 256 и 320 Кбит/с, хотя в принципе он способен выдавать до 576 Кбит/с. Впрочем, благодаря качественной реализации на программном и аппаратном уровнях, AAC неплохо звучит и на стандартных для Bluetooth битрейтах.
Аудиокодек LDAC, продвигаемый Sony, позиционируется в качестве средства для передачи аудио высокого разрешения с частотой дискретизации до 96 кГц, 24-битовой разрядностью и битрейтом от 330 до 990 Кбит/с. Этого достаточно для передачи звука с качеством почти как на Audio CD (16 бит, 44,1 кГц), но недостаточно для «аудио высокого разрешения» (24 бит, 96 кГц). LDAC-энкодер является частью современных версий Android, однако количество устройств, способных декодировать соответствующий сигнал, ограничено. По большей части это не самые бюджетные наушники производства Sony, поэтому LDAC до сих пор остается нишевой технологией.
Все упомянутые аудиокодеки объединяет одно – они работают в рамках стандарта Bluetooth Classic, где версия Bluetooth особого значения в контексте звука не имеет. Устройства одинаково функционируют как на Bluetooth 4.0 или 4.3, так и на Bluetooth 5.0 или 5.1. Однако существует параллельная Bluetooth-реальность в виде технологии Bluetooth Low Energy (LE), которая впервые появилась как часть Bluetooth 4.0. До недавнего времени в рамках Bluetooth LE не было стандарта, определяющего правила передачи звука. И вот в январе 2020 года на выставке CES ‘2020 был представлен стандарт Bluetooth LE Audio и специально разработанный под него кодек Low Complexity Communications Codec (LC3). Максимальный доступный для него битрейт – 427 Кбит/с, но, скорее всего, на практике будут использовать диапазон от 16 до 320 Кбит/с или переменный битрейт. При этом разработчики уверяют, что LC3 сжимает и кодирует музыку с меньшими потерями в качестве, чем другие кодеки, поэтому LC3-поток в 160 Кбит/с сравним по спектру с SBC-потоком в 345 Кит/с. Помимо этого, поскольку LC3 работает в рамках Bluetooth LE, для его функционирования требуется меньше энергии, что положительно сказывается на времени работы гаджетов от одной зарядки.
На данный момент поддержка нового кодека реализована только в Bluetooth 5.2. Более того, на рынке пока что нет устройств с поддержкой Bluetooth LE Audio и LC3 (первые серийные новинки могут появиться до конца текущего года).
Кодек-менеджмент
С теорией разобрались. Теперь необходимо понять, какая от всех этих знаний польза на практике. Например, какой кодек используется смартфоном в данный момент? Можно ли переключаться между поддерживаемыми кодеками, настраивать их? И вот на этом этапе возникают проблемы. Дело в том, что производители уже много лет двигаются в сторону упрощения пользовательских интерфейсов, но сделать это можно лишь с помощью уменьшения числа доступных для глубокой настройки параметров, например скрыть эти настройки или сделать их вовсе недоступными. Поэтому на большинстве устройств, чтобы получить доступ к управлению аудио по Bluetooth, придется устанавливать дополнительное ПО либо переключаться в экспертный режим. Например, на ОС Android под последним понимается активация системного меню «Для разработчиков».
Чтобы включить это меню в Android 9, достаточно зайти в «Настройки»/«Система» /«О телефоне» и нажать несколько раз подряд (обычно семь и более) «Номер сборки». После этого в меню «Система»/«Для разработчиков» появятся скрытые настройки Bluetooth. Однако информация о версии текущего аудикодека и его настройках будет видна только при активации соответствующего Bluetooth-устройства: оно должно быть сопряжено со смартфоном и быть в работе. Данное меню также доступно в Android 8 и Android 10. При этом необходимо понимать, что таким образом можно узнать только те кодеки, которые поддерживаются одновременно и смартфоном (планшетом), и наушниками (гарнитурой). В том же меню есть возможность изменить кодек на другой, а также настроить частоту дискретизации и разрядность кодека.
На macOS информация об используемом кодеке также отображается в свойствах подключенных Bluetooth-устройств. Переключаться между кодеками, а также менять их настройки можно с помощью приложения Bluetooth Explorer для macOS или через терминал. В Windows же для получения соответствующей информации придется использовать утилиту Bluetooth Tweaker. А в Linux можно использовать приложение avinfo из пакета BlueZ, а также звуковой сервер PulseAudio, который поддерживает все популярные аудиокодеки для Bluetooth. На гаджетах под управлением iOS возможности узнать поддерживаемые устройством аудикодеки нет, соответственно, переключаться между ними не получится. Предполагается, что система сама выберет наиболее подходящий кодек – в большинстве случаев на iOS это будет AAC, реже SBC.
Читать инструкции к приобретаемым устройствам нужно обязательно, но параллельно учитывать, что производители не всегда делятся с пользователями корректной информацией о том, с какими кодеками и при каких настройках может работать их гаджет.
Выводы
Разница в звучании кодеков действительно существует, и ее даже можно определить до покупки Bluetooth-наушников – в Сети есть примеры звучания разных кодеков, записанные в условиях, близких к тем, в которых работают Bluetooth-сопряженные гаджеты. Если слушать записи без дополнительных приукрашиваний, то непривередливый пользователь с удивлением отметит, что самые популярные кодеки звучат плюс-минус очень похоже. Пожалуй, наиболее существенные минусы можно заметить на некоторых музыкальных треках, закодированных плохо настроенным SBC, но в случае удачной реализации этот кодек тоже может порадовать.
Вопрос, с чем сравнивать SBC «из коробки», остается дискуссионным. Остальные распространенные кодеки – aptX и AAC – по умолчанию со стандартными настройками звучат лучше SBC, качество их звука сопоставимо с MP3 320 kbps. Форматы aptX HD, LDAC, а также фирменные кодеки Huawei, Samsung и другие встречаются довольно редко, хотя и выдают существенно более высокие битрейты.
Несмотря на сказанное выше, после приобретения той или иной модели наушников можно с удивлением обнаружить, что aptX на них звучит значительно лучше AAC, или наоборот. Объясняется это тем, что в Bluetooth-наушниках используются DSP-чипы (Digital Signal Processor), отвечающие за искусственное улучшение качества звука на лету. По желанию производителя разные кодеки могут по-разному обрабатываться DSP-процессором.
Итак, если у вас смартфон под управлением iOS, идеальным вариантом аудиокодека под Bluetooth станет AAC, который, скорее всего, будет выбран системой по умолчанию. На Android лучше выбирать между aptX и AAC. Причем если первый на большинстве Android-устройств звучит примерно одинаково, то реализация AAC может сильно отличаться от гаджета к гаджету (в Сети есть сравнительные тесты), поэтому при выборе последнего нужно проводить дополнительные самостоятельные исследования.
Помимо aptX и AAC, пользователи Android могут обратить внимание на менее распространенные aptX HD и LDAC. Пожалуй, это наиболее качественные на сегодня аудикодеки для Bluetooth. Аргументом против покупки устройств с их поддержкой может стать только высокая стоимость. Но не забывайте, что если LDAC поддерживается в ОС Android по умолчанию, то aptX HD – опционален и о его поддержке устройством, которое вы планируете использовать в качестве источника звука, нужно узнавать дополнительно.
Опубликовано 12.04.2021