LINUX.ORG.RU
ФорумTalks

Bluetooth и кодеки

 , ,


1

1

Привет, ЛОР!

А вот объясни мне, пожалуйста, такую штуку. Насколько я понимаю, A2DP позволяет использовать любой кодек. Единственное требование в реализации профиля: сделать поддержку SBC как фоллбэка. В итоге, есть наушники с AAC, с разными вариантами aptX, Sony свой собственный LDAC запилили.

Мой вопрос: а почему нет Bluetooth-наушников с нативной поддержкой FLAC? Что именно этому мешает? Лицензию покупать не нужно, с патентами тоже проблем нету.

  • слишком жирный битовый поток, не влезает в EDR
  • слишком сложно декодировать
  • кодировать на лету ещё сложнее

Нужное подчеркнуть, ненужное зачеркнуть.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

слишком жирный битовый поток

Что значит слишком жирный? Я покопался в коллекции, обычно поток около мегабита. Что примерно аналогично LDAC от Sony и без проблем влезает в канал.

слишком сложно декодировать

Слишком сложно для кого? На древних атлонах (бенч из википедии) скорость декодирования примерно 130x, кодирования – около 50x. Я не думаю, что нельзя сделать чип на ARM, который бы декодировал со скоростью 1x достаточно эффективно.

кодировать на лету ещё сложнее

Смотри выше. Тоже проблемы нет.

https://en.wikipedia.org/wiki/FLAC

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от Rastafarra

Куда оно там лезет? Классический Bluetooth кончился на версии 2.0, всё остальное ­— либо гибрид бульдога с носорогом на базе 802.11 (HS, им кто-то вообще пользуется?), либо наоборот, ноль целых хрен десятых мегабита (BLE).

intelfx ★★★★★
()
Ответ на: комментарий от hateyoufeel

Что значит слишком жирный? Я покопался в коллекции, обычно поток около мегабита. Что примерно аналогично LDAC от Sony и без проблем влезает в канал.

Мм, я думал, FLAC жирнее. Ну ок.

Я не думаю, что нельзя сделать чип на ARM, который бы декодировал со скоростью 1x достаточно эффективно.

То-то телефоны греются и жрут батарейку с неприличной скоростью, когда через них FLAC играешь. Сделать чип на ARM — и ты уже в пролёте, всё остальное кодируется и декодируется асиками.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Мм, я думал, FLAC жирнее. Ну ок.

Как закодируешь, так и будет. Так-то у меня есть какие-то безумные рипы с частотой 192kHz, там битрейт в 5-6 мегабит – норма. Зачем такое нужно – я не знаю, перекодировать мне лень.

То-то телефоны греются и жрут батарейку с неприличной скоростью, когда через них FLAC играешь.

У меня не греется, что я делаю не так?

Сделать чип на ARM — и ты уже в пролёте, всё остальное кодируется и декодируется асиками.

Да насрать, на самом деле, на чём. Я пытаюсь понять, есть ли реально проблема, или те же Sony и Qualcomm запилили свои кодеки ради маркетинга и потому что у конкурентов нету.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от Rastafarra

До сих пор повсеместно ушки с 4.1 продают. У кого-то кроме китайцев 5.0 появился вообще? Полмегабита для aptX есть, и хорошо, лишь бы наушники неделю жили без подзарядки.

WitcherGeralt ★★
()
Последнее исправление: WitcherGeralt (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Да насрать, на самом деле, на чём.

Ну а ты уверен, что можно сделать уберэнергоэффективный асик для FLAC, который будет работать настолько же эффективно, чем все эти лдаки?

У меня не греется, что я делаю не так?

Хорошо охлаждаешь?

Я пытаюсь понять, есть ли реально проблема, или те же Sony и Qualcomm запилили свои кодеки ради маркетинга и потому что у конкурентов нету.

Предлагаю посмотреть на тот же вопрос с обратной стороны: какие проблемы решит переход на FLAC и какой ценой?

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

А вот тут как-то непохоже на мегабит.

А давай посчитаем вместе?

>>> 1.334 * 1024 * 1024 * 1024 * 8 / 11901
962857.9737608605

Ух ты? 1.334 гибибайта (ей богу, тупее название придумать сложно) поделить на 3 часа 18 минут 21 секунду (11901 секунд). Чуть меньше мегабита в секунду выходит! Как же так?

И скорость кодирования такая, как ты написал, только для -0.

Чо? У -5 там 53x кодирование. И это, мать его, на процессоре 20-летней давности.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Ах блин, я спросонья вспомнил цифру «44.1» и почему-то решил, что это типичный битрейт несжатого звука в мегабитах, а не частота дискретизации (и умножил её на ratio). Да, здесь ты прав.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)
Ответ на: комментарий от intelfx

Ну а ты уверен, что можно сделать уберэнергоэффективный асик для FLAC, который будет работать настолько же эффективно, чем все эти лдаки?

Думаешь, нельзя? Если так, это бы объяснило.

Хорошо охлаждаешь?

Каэш!

Предлагаю посмотреть на тот же вопрос с обратной стороны: какие проблемы решит переход на FLAC и какой ценой?

Ну, смотри. Если запилить наушники с тремя-четыремя популярными кодеками: mp3, aac и flac, то можно вместо перекодирования звука в телефоне сразу же слать его в наушники, таким образом уменьшив потребление телефона и снизив латентность. Я что-то пропускаю?

hateyoufeel ★★★★★
() автор топика

Объясните, как оно реально работает на практике? Хочу радио наушинки попробовать на андройде (Galaxy Note0+), но боюсь что они звук будут корёжить аля mp3 непосредственно на уровне самого bluetooth. Как-то можно чтобы там чистый PCM лился?

И ничего флаки кстати не греют и не выжирают, у меня вся коллекция в флаке на телефоне через фубар играется исключительно.

yu-boot ★★★★
()
Ответ на: комментарий от yu-boot

Как-то можно чтобы там чистый PCM лился?

Да. Провод воткнуть. Иначе самое лучшее, что ты можешь получить, это какой-нибудь проприетарный aptX HQ или Sony LDAC.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от hateyoufeel

Да. Провод воткнуть.

А у меня допустим строго type-C наушники в которые ещё телефон периодически прошивки заливает новые при подключении. Там же DAC внутри стоит какой-то, и явно не очень хороший, нет? Как всё это обойти если я привык к lossless и хорошему качеству?

yu-boot ★★★★
()
Последнее исправление: yu-boot (всего исправлений: 1)
Ответ на: комментарий от Shulman

в моем 2000-м 128Кбит MP3 хватало каждому

Кстати да.

yu-boot ★★★★
()
Ответ на: комментарий от yu-boot

А у меня допустим строго type-C наушники

А зачем? Если ты хочешь хорошего качества, купи полноразмерные наушники. У них зачастую помимо Bluetooth есть 3.5mm. По крайней мере, на Sony, Sennheiser и Bose точно есть.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от Shulman

Я тоже так думаю. Дед вон своим патефоном как-то раз пьяному соседу морду разбил. Никакой FLAC тут и рядом не стоял.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от hateyoufeel

Нету блин там джека в телефоне понимаешь? Одна дырка Type-C и всё. Что туда можно воткнуть для нормального звука? Может какие-то DAC отдельные бывают для Type-C?

yu-boot ★★★★
()
Ответ на: комментарий от Shulman

По сравнению с с патефоном FLAC отдыхает

Кассеты же! С двухкассетника Sharp. Модерн токинг и сектор газа )))))

yu-boot ★★★★
()
Ответ на: комментарий от yu-boot

Нету блин там джека в телефоне понимаешь? Одна дырка Type-C и всё.

USB-C умеет в аналоговое аудио. Есть переходники с usb-c на 3.5mm, у меня к Pixel 2 такой шёл. Но вряд ли в твоём телефоне DAC лучше чем в хороших наушниках.

Можешь тут почитать подробнее: https://www.soundguys.com/usb-audio-explained-18563/

Что туда можно воткнуть для нормального звука? Может какие-то DAC отдельные бывают для Type-C?

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

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от hateyoufeel

Что значит слишком жирный? Я покопался в коллекции, обычно поток около мегабита. Что примерно аналогично LDAC от Sony и без проблем влезает в канал.

Чем меньше тем лучше же. У меня две пары TWS (утопил микрофоны первым, вторым уже тоже, хехе), одни AAC, другие SBC.
Звук одного качества, но SBC-затычки куда чувствительней к помехам и физическим преградам.

aidaho ★★★★★
()
Ответ на: комментарий от hateyoufeel

С разморозкой: на дворе bt5, SBC-проблемы решены наращиванием битрейта до небес.
Это раньше SBC звучал на фоне конкурентов как из унитаза, а сейчас уже другие факторы имеют большее значение на результат.

aidaho ★★★★★
()
Ответ на: комментарий от hateyoufeel

Слушай, ты нервный какой-то.
Вроде и спрашиваешь чего-то, но любое мнение облаиваешь.
Тебе твой echo chamber может и интересен, а остальным?

Возьми связку bt5 затычек и телефона, выключи в developer settings ведрофона все кодеки кроме SBC, перезагрузись, удивись.

aidaho ★★★★★
()
Ответ на: комментарий от aidaho

Вроде и спрашиваешь чего-то, но любое мнение облаиваешь.

Единственный мой вопрос в этом треде: есть ли какие-то припятствия, не позволяющие сделать Bluetooth наушники с нативной поддержкой FLAC?

Тебе твой echo chamber может и интересен, а остальным?

Ты пришёл в этот тред, чтобы рассказать мне, как этот тред тебе не интересен?

hateyoufeel ★★★★★
() автор топика

LDAC - это 990 кбит в полнолуние в окружении девственниц. Обычно ещё меньше. Не влезет FLAC

TooPar
()
Ответ на: комментарий от TooPar

LDAC - это 990 кбит в полнолуние в окружении девственниц. Обычно ещё меньше. Не влезет FLAC

Выше посчитали уже. Влезет.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от yu-boot

А что, если забить на эти блютузы и забабахать беспроводные головные телефоны самостоятельно? Лучше даже с аналоговым звуком. FM-трансмиттер, FM-приёмник — профит, автомобилисты такое широко используют для вывода звука на legacy-магнитолы, которые только кассеты и радио жуют ;)

mertvoprog
()
Ответ на: комментарий от YAR

Вообще зависит от того, что кодировать.

Зависит, но не так сильно. Если это не полностью рандомная несжимаемая хрень, конечно. Но средний трек в 24bit 44.1kHz в мегабит после кодирования влезет.

hateyoufeel ★★★★★
() автор топика

Помехи, интерференция и прочие радости пока умножают на ноль lossless в беспроводных наушниках.

Valeg ★★★
()
Ответ на: комментарий от hateyoufeel

Выше посчитали уже. Влезет.

Влезет в среднем (если рассматривать музыку и речь, а не тестовые сигналы), не влезет в пике.

AEP ★★★★★
()
Последнее исправление: AEP (всего исправлений: 1)
Ответ на: комментарий от AEP

Влезет в среднем (если рассматривать музыку и речь, а не тестовые сигналы), не влезет в пике.

Можно пример такой музыки? Я что-то не встречал пока музыки с большим разбросом битрейта при кодировании в FLAC.

В любом случае, у BT вроде как канал шире мегабита. Даже у BT 5 LE 2 мегабита канал.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от hateyoufeel

Собственно, про пики постом выше сказали уже. Сижу, слушаю Sting'а, MOCp иногда показывает битрейт выше мегабита. 16/44.1. Про 24 бита даже не говорю.

****

Включил 24/44, там показания ниже мегабита - редкость.

YAR ★★★★★
()
Ответ на: комментарий от YAR

Включил 24/44, там показания ниже мегабита - редкость.

BT 5 может два мегабита. Так что я не вижу особой проблемы.

hateyoufeel ★★★★★
() автор топика
Ответ на: комментарий от Valeg

буфера в жалкие 64К (или сколько там) на приемной стороне должно хватать всем!

n_play
()
Ответ на: комментарий от ValdikSS

Кодек должен отдавать поток с постоянным битрейтом, что неосуществимо для lossless-кодеков.

Почему?

В английской вики про VBR есть вот такая фраза:

Additionally, variable rate encoding is inherent in lossless compression schemes such as FLAC and Apple Lossless.[citation needed]

Особенно радует citation needed.

Все треки, которые я у себя проверил, имеют константный битрейт. Он, понятное дело, разный у каждого трека, но тем не менее.

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Все треки, которые я у себя проверил, имеют константный битрейт. Он, понятное дело, разный у каждого трека, но тем не менее.

Вам в свойствах отображают средний битрейт трека, а в каждую конкретную секунду он разный, отличия могут быть в 2-3 раза.

Почему?

Потому, что на максимальный битрейт (если сжимается очень-очень плохо) Bluetooth’а просто не хватит, а при загруженном радиоэфире необходимо переотправлять пакеты, для чего нужно 1.2-1.4x от полосы пропускания просто звука (без повторных пакетов). Опять же, упираемся в полосу. LDAC, при невозможности работать в режиме 990 кбит/с, переключается на 660 кбит/с, а если и при таком битрейте проблемы, то на 330 кбит/с.

ValdikSS ★★★★★
()
Ответ на: комментарий от ValdikSS

Вам в свойствах отображают средний битрейт трека, а в каждую конкретную секунду он разный, отличия могут быть в 2-3 раза.

Где об этом можно почитать? Как про flac, так и про lossless кодирование в принципе.

В любом случае, разве это не решить буферизацией?

Потому, что на максимальный битрейт (если сжимается очень-очень плохо) Bluetooth’а просто не хватит, а при загруженном радиоэфире необходимо переотправлять пакеты, для чего нужно 1.2-1.4x от полосы пропускания просто звука (без повторных пакетов).

А какая максимальная пропускная способность у BT? Я читал про 2-3 мегабита минимум. Опять же, даже с учётом потерь мегабитный флак можно прокинуть.

LDAC, при невозможности работать в режиме 990 кбит/с, переключается на 660 кбит/с, а если и при таком битрейте проблемы, то на 330 кбит/с.

Здесь косяк, да. FLAC так не может.

hateyoufeel ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.