Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Vďaka masovej produkcii smartfónov bez 3.5mm audio jacku sa bezdrôtové Bluetooth slúchadlá stali pre mnohých hlavným spôsobom počúvania hudby a komunikácie v režime náhlavnej súpravy.
Výrobcovia bezdrôtových zariadení nie vždy píšu podrobné špecifikácie produktov a články o Bluetooth zvuku na internete sú rozporuplné, niekedy nesprávne, nehovoria o všetkých funkciách a často kopírujú tie isté informácie, ktoré nezodpovedajú realite.
Pokúsme sa pochopiť protokol, možnosti Bluetooth OS, slúchadiel a reproduktorov, Bluetooth kodeky pre hudbu a reč, zistiť, čo ovplyvňuje kvalitu prenášaného zvuku a latenciu, naučiť sa zbierať a dekódovať informácie o podporovaných kodekoch a ďalších zariadeniach schopnosti.

TL; DR:

  • SBC - normálny kodek
  • Slúchadlá majú vlastný ekvalizér a postprocessing pre každý kodek zvlášť
  • aptX nie je taký dobrý, ako sa inzerovalo
  • LDAC je marketingový nezmysel
  • Kvalita hovoru je stále nízka
  • Zvukové kódovače C môžete vložiť do svojho prehliadača tak, že ich skompilujete do WebAssembly cez emscripten a veľmi sa nespomalia.

Hudba cez Bluetooth

Funkčnú zložku Bluetooth určujú profily – špecifikácie konkrétnych funkcií. Streamovanie hudby cez Bluetooth využíva vysokokvalitný profil jednosmerného prenosu zvuku A2DP. Štandard A2DP bol prijatý v roku 2003 a odvtedy sa výrazne nezmenil.
V rámci profilu je štandardizovaný 1 povinný kodek SBC s nízkou výpočtovou náročnosťou, vytvorený špeciálne pre Bluetooth, a 3 ďalšie. Je tiež možné použiť nezdokumentované kodeky vlastnej implementácie.

Od júna 2019 sme v komikse xkcd so 14 kodekmi A2DP:

  • SBC ← štandardizované v A2DP, podporované všetkými zariadeniami
  • MPEG-1/2 Layer 1/2/3 ← štandardizované v A2DP: dobre známe MP3, ktorý sa používa v digitálnej televízii MP2a neznámy MP1
  • MPEG-2/4 AAC ← štandardizované v A2DP
  • ATTRAC ← starý kodek od Sony, štandardizovaný v A2DP
  • LDAC ← nový kodek od Sony
  • aptX ← kodek z roku 1988
  • aptX-HD ← rovnaké ako aptX, len s inými možnosťami kódovania
  • aptX Nízka latencia ← úplne iný kodek, žiadna softvérová implementácia
  • aptX Adaptive ← ďalší kodek od Qualcommu
  • FastStream ← pseudo kodek, obojsmerná modifikácia SBC
  • HWA LHDC ← nový kodek od Huawei
  • Samsung HD ← podporované 2 zariadeniami
  • Samsung škálovateľný ← podporované 2 zariadeniami
  • Samsung UHQ-BT ← podporované 3 zariadeniami

Pýtate sa, prečo vôbec potrebujeme kodeky, keď Bluetooth má EDR, ktoré umožňuje prenášať dáta rýchlosťou 2 a 3 Mbit/s a pre nekomprimované dvojkanálové 16-bitové PCM stačí 1.4 Mbit/s?

Prenos dát cez Bluetooth

V Bluetooth existujú dva typy prenosu údajov: Asynchronous Connection Less (ACL) pre asynchrónny prenos bez vytvorenia spojenia a Synchronous Connection Oriented (SCO) pre synchrónny prenos s predbežným vyjednaním spojenia.
Prenos sa uskutočňuje pomocou schémy časového delenia a výberom prenosového kanála pre každý paket samostatne (Frequency-Hop/Time-Division-Duplex, FH/TDD), pričom čas je rozdelený do 625-mikrosekundových intervalov nazývaných sloty. Jedno zo zariadení vysiela v párnych slotoch, druhé v nepárnych slotoch. Prenášaný paket môže zaberať 1, 3 alebo 5 slotov v závislosti od veľkosti dát a nastaveného typu prenosu, v tomto prípade je prenos jedným zariadením realizovaný v párnych a nepárnych slotoch až do konca prenosu. Celkovo je možné prijať a odoslať až 1600 paketov za sekundu, ak každý z nich zaberá 1 slot a obe zariadenia niečo vysielajú a prijímajú bez zastavenia.

2 a 3 Mbit/s pre EDR, ktoré možno nájsť v oznámeniach a na webovej stránke Bluetooth, sú maximálna rýchlosť prenosu kanálov pre všetky dáta spolu (vrátane technických hlavičiek všetkých protokolov, v ktorých musia byť dáta zapuzdrené), v dvoch smeroch súčasne. Skutočná rýchlosť prenosu údajov sa bude značne líšiť.

Na prenos hudby sa používa asynchrónna metóda, takmer vždy využíva pakety ako 2-DH5 a 3-DH5, ktoré prenášajú maximálne množstvo dát v režime EDR 2 Mbit/s, respektíve 3 Mbit/s a zaberajú 5-krát. - zdieľanie slotov.

Schematické znázornenie prenosu pomocou 5 slotov jedným zariadením a 1 slotu druhým (DH5/DH1):
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Vzhľadom na princíp časového rozdelenia éteru sme nútení čakať 625-mikrosekundový časový slot po odoslaní paketu, ak nám druhé zariadenie nič nevysiela alebo vysiela malý paket, a viac času, ak vysiela druhé zariadenie vo veľkých balíkoch. Ak je k telefónu pripojených viac zariadení (napríklad slúchadlá, hodinky a fitness náramok), čas prenosu sa delí medzi všetky.

Potreba zapuzdrenia zvuku do špeciálnych transportných protokolov L2CAP a AVDTP zaberá 16 bajtov z možného maximálneho množstva prenášaného audio obsahu.

Typ balíka
Počet slotov
Max. počet bajtov v pakete
Max. počet bajtov užitočného zaťaženia A2DP
Max. Bitová rýchlosť užitočného zaťaženia A2DP

2-DH3
3
367
351
936 kbps

3-DH3
3
552
536
1429 kbps

2-DH5
5
679
663
1414 kbps

3-DH5
5
1021
1005
2143 kbps

1414 a 1429 kbps na prenos nekomprimovaného zvuku v reálnych podmienkach pri hlučnom pásme 2.4 GHz a potrebe prenášať servisné dáta rozhodne nestačí. EDR 3 Mbit/s je náročná na vysielací výkon a hluk vo vzduchu, preto ani v režime 3-DH5 nie je možný pohodlný prenos PCM, vždy budú krátkodobé prerušenia a všetko bude fungovať len na vzdialenosť pár metrov.
V praxi sa ťažko prenáša aj 990 kbit/s audio stream (LDAC 990 kbit/s).

Vráťme sa ku kodekom.

SBC

Kodek je potrebný pre všetky zariadenia, ktoré podporujú štandard A2DP. Najlepší a zároveň najhorší kodek.

Vzorkovacia frekvencia
kapacita
Bitová rýchlosť
Podpora kódovania
Podpora dekódovania

16, 32, 44.1, 48 kHz
Bit 16
10-1500 kbps
Všetky zariadenia
Všetky zariadenia

SBC je jednoduchý a výpočtovo rýchly kodek s primitívnym psychoakustickým modelom (aplikuje sa len maskovanie tichých zvukov), využívajúci adaptívnu moduláciu pulzného kódu (APCM).
Špecifikácia A2DP odporúča na použitie dva profily: Stredná kvalita a Vysoká kvalita.
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Kodek má veľa nastavení, ktoré vám umožňujú ovládať oneskorenie algoritmu, počet vzoriek v bloku, algoritmus distribúcie bitov, ale takmer všade sa používajú rovnaké parametre odporúčané v špecifikácii: Joint Stereo, 8 frekvenčných pásiem, 16 blokov v zvukový rámec, metóda distribúcie bitov hlasitosti.
SBC podporuje dynamickú zmenu parametra Bitpool, ktorý priamo ovplyvňuje bitovú rýchlosť. Ak sú vzdušné vlny upchaté, pakety sa stratia alebo sa zariadenia nachádzajú vo veľkých vzdialenostiach, zdroj zvuku môže znížiť Bitpool, kým sa komunikácia nevráti do normálu.

Väčšina výrobcov slúchadiel nastavuje maximálnu hodnotu Bitpool na 53, čo obmedzuje bitovú rýchlosť na 328 kilobitov za sekundu pri použití odporúčaného profilu.
Aj keď výrobca slúchadiel nastavil maximálnu hodnotu Bitpool nad 53 (takéto modely sa nachádzajú napríklad: Beats Solo³, JBL Everest Elite 750NC, Apple AirPods, ktoré sa nachádzajú aj na niektorých prijímačoch a hlavových jednotkách do auta), väčšina OS to nedovolí použitie zvýšených dátových tokov v dôsledku nastaveného interného limitu hodnôt v zásobníkoch Bluetooth.
Niektorí výrobcovia navyše pre niektoré zariadenia nastavujú maximálnu hodnotu Bitpool na nízku. Napríklad pre Bluedio T je to 39, pre Samsung Gear IconX je to 37, čo dáva slabú kvalitu zvuku.

Umelé obmedzenia zo strany vývojárov Bluetooth stackov s najväčšou pravdepodobnosťou vznikli z dôvodu nekompatibility niektorých zariadení s veľkými hodnotami Bitpoolu alebo atypických profilov, aj keď hlásili ich podporu, a nedostatočného testovania počas certifikácie. Pre autorov Bluetooth stackov bolo jednoduchšie obmedziť sa na odsúhlasenie odporúčaného profilu, ako vytvárať databázy nesprávnych zariadení (hoci teraz to robia pre iné nesprávne fungujúce funkcie).

SBC dynamicky prideľuje kvantizačné bity frekvenčným pásmam na báze nízkych až vysokých s rôznymi váhami. Ak bola celá bitová rýchlosť použitá pre nízke a stredné frekvencie, vysoké frekvencie budú „odrezané“ (namiesto toho bude ticho).

Príklad SBC 328 kbps. V hornej časti je originál, v dolnej časti je SBC, periodicky sa prepínajúce medzi skladbami. Zvuk vo video súbore používa bezstratový kompresný kodek FLAC. Používanie FLAC v mp4 kontajneri nie je oficiálne štandardizované, takže nie je zaručené, že ho váš prehliadač prehrá, no malo by fungovať v najnovších verziách desktopových Chrome a Firefox. Ak nemáte zvuk, môžete si súbor stiahnuť a otvoriť v plnohodnotnom prehrávači videa.
ZZ Top - Sharp Dressed Man

Spektrogram ukazuje moment prepnutia: SBC periodicky strihá tiché zvuky nad 17.5 kHz a pre pásmo nad 20 kHz neprideľuje vôbec žiadne bity. Celý spektrogram je dostupný po kliknutí (1.7 MB).
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Na tejto skladbe nepočujem žiadny rozdiel medzi originálom a SBC.

Zoberme si niečo novšie a simulujme zvuk, ktorý by sa získal pomocou slúchadiel Samsung Gear IconX s Bitpool 37 (hore - pôvodný signál, nižšie - SBC 239 kbps, zvuk vo FLAC).
Bezduché zhovievavosť – svedok

Vo vysokých frekvenciách vokálov počujem praskanie, menej stereoefektu a nepríjemný „vŕzgavý“ zvuk.

Hoci je SBC veľmi flexibilný kodek, dá sa nakonfigurovať na nízku latenciu, poskytuje vynikajúcu kvalitu zvuku pri vysokých bitových rýchlostiach (452+ kbps) a je celkom dobrý pre väčšinu ľudí pri štandardnej vysokej kvalite (328 kbps), pretože štandard A2DP nešpecifikuje pevné profily (ale dáva len odporúčania), vývojári stackov nastavili pre Bitpool umelé obmedzenia, parametre prenášaného zvuku sa nezobrazujú v používateľskom rozhraní a výrobcovia slúchadiel si môžu slobodne nastaviť vlastné nastavenia a nikdy uvádzajú v technických špecifikáciách produktu hodnotu Bitpool, kodek sa preslávil nízkou kvalitou zvuku, aj keď to nie je problém kodeku ako takého.
Parameter Bitpool priamo ovplyvňuje bitovú rýchlosť iba v rámci jedného profilu. Rovnaká hodnota Bitpool 53 môže poskytnúť bitovú rýchlosť 328 kbps s odporúčaným profilom vysokej kvality a 1212 kbps s duálnym kanálom a 4 frekvenčnými pásmami, preto autori OS okrem obmedzení na Bitpool nastavili aj limit a Bitová rýchlosť. Ako vidím, táto situácia vznikla kvôli chybe v štandarde A2DP: bolo potrebné vyjednávať bitrate, nie Bitpool.

Tabuľka podpory pre možnosti SBC v rôznych OS:

operačný systém
Podporované vzorkovacie frekvencie
Limit max. Bitpool
Limit max. Bitová rýchlosť
Typická bitová rýchlosť
Dynamická úprava bitpoolu

windows 10
44.1 kHz
53
512 kbps
328 kbps
✓*

Linux (BlueZ + PulseAudio)
16, 32, 44.1, 48 kHz
64 (pre prichádzajúce spojenia), 53 (pre odchádzajúce spojenia)
Bez obmedzenia
328 kbps
✓*

MacOS High Sierra
44.1 kHz
64, predvolená hodnota 53***
nevedno
328 kbps

Android 4.4-9
44.1/48 kHz**
53
328 kbps
328 kbps

Android 4.1-4.3.1
44.1, 48 kHz**
53
229 kbps
229 kbps

Blackberry OS 10
48 kHz
53
Bez obmedzenia
328 kbps

* Bitpool sa iba znižuje, ale nezvyšuje sa automaticky, ak sa podmienky prenosu zlepšia. Ak chcete obnoviť Bitpool, musíte zastaviť prehrávanie, počkať niekoľko sekúnd a znova spustiť zvuk.
** Predvolená hodnota závisí od nastavení zásobníka zadaných pri kompilácii firmvéru. V Androide 8/8.1 je frekvencia iba 44.1 kHz alebo 48 kHz, v závislosti od nastavení pri kompilácii, v iných verziách sú podporované súčasne 44.1 kHz a 48 kHz.
*** Hodnotu Bitpool je možné zvýšiť v programe Bluetooth Explorer.

aptX a aptX HD

aptX je jednoduchý a výpočtovo rýchly kodek, bez psychoakustiky, využívajúci adaptívnu diferenciálnu moduláciu pulzného kódu (ADPCM). Objavil sa okolo roku 1988 (dátum podania patent z februára 1988), pred Bluetooth sa používal predovšetkým v profesionálnych bezdrôtových audio zariadeniach. V súčasnosti je vo vlastníctve spoločnosti Qualcomm a vyžaduje licenciu a licenčné poplatky. Od roku 2014: 6000 1 USD jednorazovo a ≈ 10000 USD za zariadenie, pre dávky až XNUMX XNUMX zariadení (zdroj, str. 16).
aptX a aptX HD sú rovnaký kodek s rôznymi profilmi kódovania.

Kodek má len jeden parameter – výber vzorkovacej frekvencie. Je tu však možnosť voľby počtu/režimu kanálov, no vo všetkých mne známych zariadeniach (70+ kusov) je podporované iba Stereo.

kodek
Vzorkovacia frekvencia
kapacita
Bitová rýchlosť
Podpora kódovania
Podpora dekódovania

aptX
16, 32, 44.1, 48 kHz
Bit 16
128/256/352/384 kbps (v závislosti od vzorkovacej frekvencie)
Windows 10 (desktop a mobil), macOS, Android 4.4+/7*, Blackberry OS 10
Široká škála audio zariadení (hardvér)

* Verzie do 7 vyžadujú úpravu zásobníka Bluetooth. Kodek je podporovaný iba vtedy, ak výrobca zariadenia so systémom Android získal licenciu na kodek od spoločnosti Qualcomm (ak má operačný systém knižnice kódovania).

aptX rozdeľuje zvuk do 4 frekvenčných pásiem a neustále ich kvantuje rovnakým počtom bitov: 8 bitov pre 0-5.5 kHz, 4 bity pre 5.5-11 kHz, 2 bity pre 11-16.5 kHz, 2 bity pre 16.5-22 kHz ( hodnoty pre vzorkovaciu frekvenciu 44.1 kHz).

Príklad zvuku aptX (hore - pôvodný signál, dole - aptX, spektrogramy iba ľavých kanálov, zvuk vo FLAC):

Výšky boli trochu červenšie, ale nebolo počuť rozdiel.

Kvôli pevnej distribúcii kvantizačných bitov nemôže kodek „posunúť bity“ na frekvencie, ktoré ich najviac potrebujú. Na rozdiel od SBC, aptX nebude „rezať“ frekvencie, ale pridá k nim kvantizačný šum, čím zníži dynamický rozsah zvuku.

Nemalo by sa predpokladať, že použitie napríklad 2 bitov na pásmo zníži dynamický rozsah na 12 dB: ADPCM umožňuje až 96 dB dynamického rozsahu aj pri použití 2 kvantizačných bitov, ale len pre určitý signál.
ADPCM ukladá číselný rozdiel medzi aktuálnou vzorkou a nasledujúcou vzorkou namiesto ukladania absolútnej hodnoty ako v PCM. To umožňuje znížiť požiadavky na počet bitov potrebných na uloženie rovnakých (bez straty) alebo takmer rovnakých (s relatívne malou chybou zaokrúhľovania) informácií. Na zníženie chýb zaokrúhľovania sa používajú tabuľky koeficientov.
Pri vytváraní kodeku autori vypočítali koeficienty ADPCM na súbore hudobných zvukových súborov. Čím bližšie je zvukový signál k množine hudby, na ktorej boli stoly postavené, tým menej chýb kvantizácie (šumu) aptX vytvára.

Z tohto dôvodu budú syntetické testy vždy produkovať horšie výsledky ako hudba. Urobil som špeciálny syntetický príklad, v ktorom aptX vykazuje slabé výsledky - sínusová vlna s frekvenciou 12.4 kHz (hore - pôvodný signál, dole - aptX. Zvuk vo FLAC. Znížte hlasitosť!):

Graf spektra:
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Zvuky sú jasne počuteľné.

Ak však vygenerujete sínusovú vlnu s menšou amplitúdou, aby bola tichšia, hluk bude tiež tichší, čo naznačuje široký dynamický rozsah:

Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Ak chcete počuť rozdiel medzi originálnou hudobnou stopou a komprimovanou stopou, môžete invertovať jeden zo signálov a pridávať stopy po kanáloch. Tento prístup je vo všeobecnosti nesprávny a pri zložitejších kodekoch by nepriniesol rozumné výsledky, ale konkrétne pre ADPCM je celkom vhodný.
Rozdiel medzi original a aptX
Odmocninový rozdiel signálov je na úrovni -37.4 dB, čo na takto komprimovanú hudbu nie je veľa.

aptX-HD

aptX HD nie je samostatný kodek - je to vylepšený profil kódovania kodeku aptX. Zmeny ovplyvnili počet bitov pridelených pre frekvenčné rozsahy kódovania: 10 bitov pre 0-5.5 kHz, 6 bitov pre 5.5-11 kHz, 4 bity pre 11-16.5 kHz, 4 bity pre 16.5-22 kHz (číslice pre 44.1 kHz) .

kodek
Vzorkovacia frekvencia
kapacita
Bitová rýchlosť
Podpora kódovania
Podpora dekódovania

aptX-HD
16, 32, 44.1, 48 kHz
24 bitov
192/384/529/576 kbps (v závislosti od vzorkovacej frekvencie)
Android 8+*
Niektoré zvukové zariadenia (hardvér)

* Verzie do 7 vyžadujú úpravu zásobníka Bluetooth. Kodek je podporovaný iba vtedy, ak výrobca zariadenia so systémom Android získal licenciu na kodek od spoločnosti Qualcomm (ak má operačný systém knižnice kódovania).

Menej bežné ako aptX: zjavne vyžaduje samostatné licencovanie od Qualcommu a samostatné licenčné poplatky.

Zopakujme príklad so sínusoidou pri 12.4 kHz:
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Oveľa lepšie ako aptX, ale stále trochu hlučné.

aptX Nízka latencia

Kodek od Qualcommu, ktorý nemá nič spoločné so štandardným aptX a aptX HD, súdiac podľa obmedzených informácií od ľudí podieľajúcich sa na jeho vývoji. Navrhnuté pre interaktívny prenos zvuku s nízkou latenciou (filmy, hry), kde oneskorenie zvuku nemožno nastavovať softvérovo. Nie sú známe žiadne softvérové ​​implementácie kodérov a dekodérov, podporujú ich výlučne vysielače, prijímače, slúchadlá a reproduktory, nie však smartfóny a počítače.

Vzorkovacia frekvencia
Bitová rýchlosť
Podpora kódovania
Podpora dekódovania

44.1 kHz
276/420 kbps
Niektoré vysielače (hardvér)
Niektoré zvukové zariadenia (hardvér)

AAC

AAC alebo Advanced Audio Coding je výpočtovo zložitý kodek so serióznym psychoakustickým modelom. Široko používaný pre zvuk na internete, druhý v popularite po MP3. Vyžaduje licencie a licenčné poplatky: 15000 1000 USD jednorazovo (alebo 15 0.98 USD pre spoločnosti s menej ako 500000 zamestnancami) + XNUMX USD za prvých XNUMX XNUMX zariadení (zdroj).
Kodek je štandardizovaný v rámci špecifikácií MPEG-2 a MPEG-4 a na rozdiel od bežnej mylnej predstavy nepatrí spoločnosti Apple.

Vzorkovacia frekvencia
Bitová rýchlosť
Podpora kódovania
Podpora dekódovania

8 - 96 kHz
8 - 576 kbps (pre stereo), 256 - 320 kbps (typické pre Bluetooth)
macOS, Android 7+*, iOS
Široká škála audio zariadení (hardvér)

* iba na zariadeniach, ktorých výrobcovia zaplatili licenčné poplatky

iOS a macOS používajú aktuálny najlepší AAC kodér spoločnosti Apple na poskytovanie najvyššej možnej kvality zvuku. Android používa druhý najkvalitnejší kodér Fraunhofer FDK AAC, ale môže používať rôzny hardvér zabudovaný do platformy (SoC) s neznámou kvalitou kódovania. Podľa nedávnych testov na stránke SoundGuys, kvalita kódovania AAC v rôznych telefónoch s Androidom sa značne líši:
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Väčšina bezdrôtových audio zariadení má maximálnu bitovú rýchlosť 320 kbps pre AAC, niektoré podporujú iba 256 kbps. Ostatné bitové rýchlosti sú extrémne zriedkavé.
AAC poskytuje vynikajúcu kvalitu pri bitovej rýchlosti 320 a 256 kbps, ale podlieha strata sekvenčného kódovania už komprimovaného obsahu, na iOS však pri bitrate 256 kbps aj pri niekoľkých sekvenčných kódovaniach ťažko počuť rozdiely oproti originálu, pri jedinom kódovaní napríklad MP3 320 kbps až AAC 256 kbps straty možno zanedbať.
Rovnako ako u iných kodekov Bluetooth, každá hudba je najprv dekódovaná a potom kódovaná kodekom. Pri počúvaní hudby vo formáte AAC ju OS najprv dekóduje a potom opäť zakóduje do AAC na prenos cez Bluetooth. Je to potrebné na miešanie viacerých zvukových tokov, ako je hudba a upozornenia na nové správy. iOS nie je výnimkou. Na internete môžete nájsť veľa tvrdení, že na iOS nie je hudba vo formáte AAC prekódovaná pri prenose cez Bluetooth, čo nie je pravda.

Mp1/2/3

Kodeky rodiny MPEG-1/2 Part 3 pozostávajú zo známeho a široko používaného MP3, menej bežného MP2 (používaného hlavne v digitálnej televízii a rádiu) a úplne neznámeho MP1.

Staré kodeky MP1 a MP2 nie sú vôbec podporované: nenašiel som žiadne slúchadlá ani zásobník Bluetooth, ktoré by ich kódovali alebo dekódovali.
Niektoré slúchadlá podporujú dekódovanie MP3, ale kódovanie nie je podporované na žiadnom modernom zásobníku operačného systému. Zdá sa, že balík BlueSoleil od tretej strany pre Windows môže kódovať do MP3, ak manuálne zmeníte konfiguračný súbor, ale podľa mňa jeho inštalácia vedie k BSoD v systéme Windows 10. Záver - kodek v skutočnosti nemožno použiť pre zvuk Bluetooth.
Predtým, v rokoch 2006-2008, ešte pred rozšírením štandardu A2DP do zariadení, ľudia počúvali hudbu vo formáte MP3 na náhlavnej súprave Nokia BH-501 prostredníctvom programu MSI BluePlayer, ktorý bol dostupný pre Symbian a Windows Mobile. Architektúra OS smartfónov v tom čase umožňovala prístup k mnohým nízkoúrovňovým funkciám a na Windows Mobile bolo dokonca možné nainštalovať Bluetooth stacky tretích strán.

Platnosť posledného patentu kodeku MP3 vypršala, používanie kodeku si od 23. apríla 2017 nevyžaduje licenčné poplatky.

Ak sa za meradlo berie najdlhšie platný patent uvedený vo vyššie uvedených odkazoch, potom sa technológia MP3 stala v Spojených štátoch bez patentu 16. apríla 2017, keď vypršala platnosť patentu USA 6,009,399 XNUMX XNUMX, ktorý vlastní a spravuje spoločnosť Technicolor.

Zdroj: www.iis.fraunhofer.de/en/ff/amm/prod/audiocodec/audiocodecs/mp3.html

Vzorkovacia frekvencia
Bitová rýchlosť
Podpora kódovania
Podpora dekódovania

16 - 48 kHz
8 - 320 kbps
Nie je nikde podporované
Niektoré zvukové zariadenia (hardvér)

LDAC

Nový a aktívne propagovaný kodek „Hi-Res“ od Sony, ktorý podporuje vzorkovacie frekvencie až 96 kHz a 24-bit s bitovou rýchlosťou až 990 kbps. Je inzerovaný ako audiofilský kodek, ako náhrada za existujúce kodeky Bluetooth. Má funkciu adaptívneho nastavenia bitovej rýchlosti v závislosti od podmienok rozhlasového vysielania.

kódovač LDAC (libldac) je súčasťou štandardného balíka Android, takže kódovanie je podporované na akomkoľvek smartfóne so systémom Android počnúc OS verzie 8. Neexistujú voľne dostupné softvérové ​​dekodéry, špecifikácia kodeku nie je dostupná širokej verejnosti, avšak na prvý pohľad na kodér je vnútorná štruktúra kodeku podobná ako napr. ATRAC9 - Kodek od Sony používaný v PlayStation 4 a Vita: oba fungujú vo frekvenčnej doméne, využívajú modifikovanú diskrétnu kosínusovú transformáciu (MDCT) a kompresiu pomocou Huffmanovho algoritmu.

Podporu LDAC poskytujú takmer výlučne slúchadlá od Sony. Schopnosť dekódovať LDAC sa niekedy nachádza na slúchadlách a DAC od iných výrobcov, ale veľmi zriedka.

Vzorkovacia frekvencia
Bitová rýchlosť
Podpora kódovania
Podpora dekódovania

44.1 - 96 kHz
303/606/909 kbit/s (pre 44.1 a 88.2 kHz), 330/660/990 kbit/s (pre 48 a 96 kHz)
Android 8 +
Niektoré slúchadlá Sony a niektoré zariadenia od iných výrobcov (hardvér)

Marketing LDAC ako kodeku Hi-Res poškodzuje jeho technickú zložku: je hlúpe míňať bitovú rýchlosť na prenos frekvencií nepočuteľných pre ľudské ucho a zvyšovať bitovú hĺbku, zatiaľ čo nestačí na prenos v kvalite CD (44.1/16) bez straty. . Našťastie má kodek dva prevádzkové režimy: prenos zvuku CD a prenos zvuku vo vysokom rozlíšení. V prvom prípade sa vzduchom prenáša len 44.1 kHz/16 bitov.

Keďže softvérový dekodér LDAC nie je voľne dostupný, nie je možné otestovať kodek bez ďalších zariadení, ktoré dekódujú LDAC. Podľa výsledkov testu LDAC na DAC s jeho podporou, ktorý inžinieri SoundGuys.com pripojili cez digitálny výstup a zaznamenali výstupný zvuk na testovacích signáloch, LDAC 660 a 990 kbps v režime CD kvality poskytuje signál pomer šumu o niečo lepší ako u aptX HD.

Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach
Zdroj: www.soundguys.com/ldac-ultimate-bluetooth-guide-20026

LDAC podporuje aj dynamické bitové rýchlosti mimo zabehnutých profilov – od 138 kbps do 990 kbps, ale pokiaľ viem, Android používa iba štandardizované profily 303/606/909 a 330/660/990 kbps.

Iné kodeky

Iné kodeky A2DP sa veľmi nepoužívajú. Ich podpora buď takmer úplne absentuje, alebo je dostupná len na niektorých modeloch slúchadiel a smartfónov.
Kodek ATRAC štandardizovaný v A2DP nikdy nepoužil ako kodek Bluetooth ani samotná spoločnosť Sony, kodeky Samsung HD, Samsung Scalable a Samsung UHQ-BT majú veľmi obmedzenú podporu vysielacích a prijímacích zariadení a HWA LHDC je príliš nový a podporuje iba tri (?) zariadenia.

Podpora kodekov pre zvukové zariadenia

Nie všetci výrobcovia zverejňujú presné informácie o kodekoch, ktoré podporujú niektoré bezdrôtové slúchadlá, reproduktory, prijímače alebo vysielače. Niekedy sa stáva, že podpora pre určitý kodek je len pre vysielanie, ale nie pre príjem (relevantné pre kombinované vysielače-prijímače), hoci výrobca jednoducho deklaruje „podporu“, bez poznámok (predpokladám, že samostatné licencovanie kodérov a dekodérov niektorých za to môžu kodeky). V najlacnejších zariadeniach deklarovanú podporu aptX možno nenájdete vôbec.

Bohužiaľ, rozhrania väčšiny operačných systémov nikde nezobrazujú použitý kodek. Informácie o tom sú k dispozícii iba v systéme Android od verzie 8 a macOS. Aj v týchto OS sa však zobrazia len tie kodeky, ktoré podporuje telefón/počítač aj slúchadlá.

Ako zistíte, ktoré kodeky vaše zariadenie podporuje? Zaznamenajte a analyzujte výpis prevádzky s parametrami vyjednávania A2DP!
Dá sa to urobiť v systémoch Linux, MacOS a Android. V systéme Linux môžete použiť Wireshark alebo hcidump, v systéme macOS môžete použiť Bluetooth Explorer a v systéme Android môžete použiť štandardnú funkciu ukladania výpisu Bluetooth HCI, ktorá je k dispozícii v nástrojoch pre vývojárov. Dostanete výpis vo formáte btsnoop, ktorý je možné načítať do analyzátora Wireshark.
Venujte pozornosť: správny výpis je možné získať len pripojením telefónu/počítača k slúchadlám/reproduktorom (bez ohľadu na to, ako vtipne to môže znieť)! Slúchadlá dokážu nezávisle nadviazať spojenie s telefónom, v takom prípade si od telefónu vyžiadajú zoznam kodekov a nie naopak. Aby sa zabezpečilo zaznamenanie správneho výpisu, najskôr zrušte spárovanie zariadenia a potom spárujte telefón so slúchadlami počas nahrávania výpisu.

Na odfiltrovanie irelevantnej návštevnosti použite nasledujúci filter zobrazenia:

btavdtp.signal_id

V dôsledku toho by ste mali vidieť niečo podobné tomuto:
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Kliknutím na každú položku v príkaze GetCapabilities zobrazíte podrobné charakteristiky kodeku.
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Wireshark nepozná všetky identifikátory kodekov, takže niektoré kodeky bude potrebné dešifrovať manuálne, pozrite si tabuľku identifikátorov nižšie:

Mandatory:
0x00 - SBC

Optional:
0x01 - MPEG-1,2 (aka MP3)
0x02 - MPEG-2,4 (aka AAC)
0x04 - ATRAC

Vendor specific:
0xFF 0x004F 0x01   - aptX
0xFF 0x00D7 0x24   - aptX HD
0xFF 0x000A 0x02   - aptX Low Latency
0xFF 0x00D7 0x02   - aptX Low Latency
0xFF 0x000A 0x01   - FastStream
0xFF 0x012D 0xAA   - LDAC
0xFF 0x0075 0x0102 - Samsung HD
0xFF 0x0075 0x0103 - Samsung Scalable Codec
0xFF 0x053A 0x484C - Savitech LHDC

0xFF 0x000A 0x0104 - The CSR True Wireless Stereo v3 Codec ID for AAC
0xFF 0x000A 0x0105 - The CSR True Wireless Stereo v3 Codec ID for MP3
0xFF 0x000A 0x0106 - The CSR True Wireless Stereo v3 Codec ID for aptX

Aby som neanalyzoval výpisy manuálne, vytvoril som službu, ktorá bude všetko analyzovať automaticky: btcodecs.valdikss.org.ru

Porovnanie kodekov. Ktorý kodek je lepší?

Každý kodek má svoje výhody a nevýhody.
aptX a aptX HD používajú pevne zakódované profily, ktoré nemožno zmeniť bez úpravy kodéra a dekodéra. Výrobca telefónu ani výrobca slúchadiel nemôže zmeniť bitovú rýchlosť ani faktory kódovania aptX. Vlastník kodeku, spoločnosť Qualcomm, poskytuje referenčný kódovač vo forme knižnice. Tieto fakty sú silnou stránkou aptX – vopred viete, akú kvalitu zvuku získate, bez akýchkoľvek „ale“.

Naproti tomu SBC má veľa konfigurovateľných parametrov, dynamickú bitovú rýchlosť (kodér môže znížiť parameter bitpool, ak je vysielanie zaneprázdnené) a nemá pevne zakódované profily, iba odporúčaná „stredná kvalita“ a „vysoká kvalita“, ktoré boli pridaný do špecifikácie A2DP v roku 2003. „Vysoká kvalita“ už podľa dnešných štandardov nie je taká vysoká a väčšina zariadení Bluetooth vám neumožňuje používať parametre lepšie ako profil „vysokej kvality“, hoci na to neexistujú žiadne technické obmedzenia.
Bluetooth SIG nemá referenčný SBC kodér ako knižnicu a výrobcovia si ho implementujú sami.
Toto sú slabiny SBC – nikdy nie je dopredu jasné, akú kvalitu zvuku od konkrétneho zariadenia očakávať. SBC dokáže produkovať zvuk nízkej aj veľmi vysokej kvality, no ten druhý je nedosiahnuteľný bez deaktivácie alebo obchádzania umelých obmedzení Bluetooth stackov.

Situácia s AAC je nejednoznačná: na jednej strane by mal kodek teoreticky produkovať kvalitu na nerozoznanie od originálu, ale v praxi, súdiac podľa testov laboratória SoundGuys na rôznych zariadeniach s Androidom, to nie je potvrdené. Na vine sú s najväčšou pravdepodobnosťou nekvalitné hardvérové ​​kódovače zvuku zabudované v rôznych čipsetoch telefónov. Má zmysel používať AAC iba na zariadeniach Apple a v systéme Android ho obmedziť na aptX a LDAC.

Hardvér, ktorý podporuje alternatívne kodeky, má tendenciu byť kvalitnejší, jednoducho preto, že pre veľmi lacné a nekvalitné zariadenia nemá zmysel platiť licenčné poplatky za používanie týchto kodekov. V mojich testoch znie SBC na kvalitnom zariadení veľmi dobre.

Vytvoril som webovú službu, ktorá kóduje zvuk do SBC, aptX a aptX HD v reálnom čase priamo v prehliadači. Pomocou neho môžete otestovať tieto zvukové kodeky bez toho, aby ste skutočne prenášali zvuk cez Bluetooth, na akýchkoľvek káblových slúchadlách, reproduktoroch a vašej obľúbenej hudbe a tiež meniť parametre kódovania priamo počas prehrávania zvuku:
btcodecs.valdikss.org.ru/sbc-encoder
Služba používa na spustenie v prehliadači knižnice kódovania SBC z projektu BlueZ a libopenaptx z ffmpeg, ktoré sú skompilované do WebAssembly a JavaScript z C prostredníctvom emscripten. Kto by mohol snívať o takej budúcnosti!

Ako to vyzerá:

Všimnite si, ako sa mení úroveň šumu po 20 kHz pre rôzne kodeky. Pôvodný súbor MP3 neobsahuje frekvencie vyššie ako 20 kHz.

Skúste prepnúť kodeky a uvidíte, či počujete rozdiel medzi originálom, SBC 53 Joint Stereo (štandardný a najbežnejší profil) a aptX/aptX HD.

Počujem rozdiel medzi kodekmi v slúchadlách!

Ľudia, ktorí pri testovaní cez webovú službu nepočujú rozdiel medzi kodekmi, tvrdia, že ho počujú pri počúvaní hudby na bezdrôtových slúchadlách. Bohužiaľ, toto nie je vtip alebo placebo efekt: rozdiel je skutočne počuteľný, ale nie je spôsobený rozdielmi kodeky.

Prevažná väčšina audio čipsetov Bluetooth používaných v bezdrôtových prijímacích zariadeniach je vybavená procesorom Digital Signal Processor (DSP), ktorý implementuje ekvalizér, kompander, stereo expandér a ďalšie veci určené na zlepšenie (alebo zmenu) zvuku. Výrobcovia zariadení Bluetooth môžu nakonfigurovať DSP pre každý kodek samostatne, a pri prepínaní medzi kodekmi si poslucháč bude myslieť, že počuje rozdiel v fungovaní kodekov, zatiaľ čo v skutočnosti počúva rôzne nastavenia DSP.

Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach
Potrubie na spracovanie zvuku DSP Kalimba v čipoch vyrábaných spoločnosťou CSR/Qualcomm

Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach
Aktivujte rôzne funkcie DSP pre každý kodek a výstup samostatne

Niektoré prémiové zariadenia sa dodávajú so softvérom, ktorý umožňuje prispôsobiť nastavenia DSP, no väčšina lacnejších slúchadiel to neurobí a používatelia nemôžu manuálne následné spracovanie zvuku vypnúť.

Funkčné vlastnosti zariadení

Moderná verzia štandardu A2DP má funkcia „absolútna kontrola hlasitosti“. — ovládanie hlasitosti zariadenia pomocou špeciálnych príkazov protokolu AVRCP, ktoré reguluje zosilnenie koncového stupňa namiesto programového znižovania hlasitosti audio streamu. Ak sa pri zmene hlasitosti na slúchadlách zmena nesynchronizuje s hlasitosťou v telefóne, potom vaše slúchadlá alebo telefón túto funkciu nepodporujú. V tomto prípade má zmysel vždy počúvať hudbu s maximálnou hlasitosťou na telefóne, pričom skutočnú hlasitosť upravíte tlačidlami slúchadiel - v tomto prípade bude pomer signálu k šumu lepší a kvalita zvuku musí byť vyššie.
V skutočnosti existujú smutné situácie. Na mojich slúchadlách RealForce OverDrive D1 pre SBC je zapnutý silný kompander a zvýšenie hlasitosti vedie k zvýšeniu úrovne tichých zvukov, zatiaľ čo hlasitosť hlasných zvukov sa nemení (signál je komprimovaný). Na počítači si kvôli tomu musíte nastaviť hlasitosť približne na polovicu, v takom prípade prakticky nedochádza k žiadnemu kompresnému efektu.
Podľa mojich pozorovaní všetky slúchadlá s prídavnými kodekami podporujú funkciu absolútneho ovládania hlasitosti, zrejme je to jedna z požiadaviek na certifikáciu kodeku.

Niektoré slúchadlá podporujú pripojenie dvoch zariadení súčasne. To vám umožňuje napríklad počúvať hudbu z počítača a prijímať hovory z telefónu. Mali by ste si však uvedomiť, že v tomto režime sú alternatívne kodeky zakázané a používa sa iba SBC.

Avdtp 1.3 Funkcia hlásenia oneskorenia umožňuje slúchadlám oznámiť vysielaciemu zariadeniu oneskorenie, pri ktorom sa zvuk skutočne prehráva. To vám umožní upraviť synchronizáciu zvuku s videom pri prezeraní video súborov: ak sa vyskytnú problémy s rádiovým prenosom, zvuk nebude zaostávať za videom, ale naopak, video bude videoprehrávačom spomalené, kým zvuk a video sú opäť synchronizované.
Funkciu podporujú mnohé slúchadlá, Android 9+ a Linux s PulseAudio 12.0+. Nie som si vedomý podpory tejto funkcie na iných platformách.

Obojsmerná komunikácia cez Bluetooth. Prenos hlasu.

Pre prenos hlasu v Bluetooth sa používa Synchronous Connection Oriented (SCO) - synchrónny prenos s predbežným dohodnutím spojenia. Režim umožňuje prenášať zvuk a hlas striktne v poradí, so symetrickou rýchlosťou odosielania a prijímania, bez čakania na potvrdenie prenosu a opätovného odosielania paketov. To znižuje celkové oneskorenie prenosu zvuku cez rádiový kanál, ale predstavuje vážne obmedzenia množstva údajov prenášaných za jednotku času a negatívne ovplyvňuje kvalitu.
Pri použití tohto režimu sa hlas aj zvuk prenášajú v rovnakej kvalite.
Bohužiaľ, od roku 2019 je kvalita hlasu cez Bluetooth stále nízka a nie je jasné, prečo s tým Bluetooth SIG nič nerobí.

CVSD

Základný hlasový kodek CVSD bol štandardizovaný v roku 2002 a podporujú ho všetky obojsmerné komunikačné zariadenia Bluetooth. Poskytuje prenos zvuku so vzorkovacou frekvenciou 8 kHz, čo zodpovedá kvalite bežnej káblovej telefónie.

Príklad nahrávky v tomto kodeku.

mSBC

Doplnkový kodek mSBC bol štandardizovaný v roku 2009 a v roku 2010 sa už objavili čipy, ktoré ho využívajú na prenos hlasu. mSBC je široko podporovaný rôznymi zariadeniami.
Toto nie je nezávislý kodek, ale bežný SBC zo štandardu A2DP s pevným profilom kódovania: 16 kHz, mono, bitpool 26.

Príklad nahrávky v tomto kodeku.

Nie je to brilantné, ale oveľa lepšie ako CVSD, ale stále je nepríjemné ho používať na online komunikáciu, najmä keď používate slúchadlá na komunikáciu v hre - zvuk hry sa bude tiež prenášať so vzorkovacou frekvenciou 16 kHz.

Spoločnosť FastStreamCSR sa rozhodla rozvinúť myšlienku využitia SBC. Aby sa obišli obmedzenia protokolu SCO a použili vyššie bitové rýchlosti, CSR sa vydalo inou cestou – do štandardu jednosmerného prenosu zvuku A2DP zaviedli podporu obojsmerného zvuku SBC, štandardizovali profily kódovania a nazvali ho „FastStream“.

FastStream prenáša stereo zvuk s rýchlosťou 44.1 alebo 48 kHz s bitovou rýchlosťou 212 kbps do reproduktorov a mono, 16 kHz, s bitovou rýchlosťou 72 kbps sa používa na prenos zvuku z mikrofónu (o niečo lepšie ako mSBC). Takéto parametre sú oveľa vhodnejšie na komunikáciu v online hrách - zvuk hry a účastníci rozhovoru budú mať vysokú kvalitu.

Príklad nahrávky v tomto kodeku (+ zvuk z mikrofónu, rovnako ako mSBC).

Spoločnosť prišla so zaujímavou barličkou, no vzhľadom na to, že odporuje štandardu A2DP, je podporovaná iba v niektorých vysielačoch spoločnosti (fungujú ako USB audio karta, nie Bluetooth zariadenie), ale nie získať podporu v stackoch Bluetooth.aj keď počet slúchadiel s podporou FastStream nie je taký malý.

V súčasnosti je podpora FastStream iba v OS ako záplata pre Linux PulseAudio od vývojára Paliho Rohára, ktorý nie je zaradený v hlavnej vetve programu.

aptX Nízka latencia

Na vaše veľké prekvapenie aptX Low Latency podporuje aj obojsmerný zvuk, pričom implementuje rovnaký princíp ako FastStream.
Túto funkciu kodeku nie je možné nikde použiť – v žiadnom OS ani v žiadnom mne známom Bluetooth stacku neexistuje podpora pre dekódovanie s nízkou latenciou.

Bluetooth 5, klasický a nízkoenergetický

Okolo špecifikácií a verzií Bluetooth bolo veľa zmätkov kvôli prítomnosti dvoch nekompatibilných štandardov pod rovnakou značkou, z ktorých oba sú široko používané na rôzne účely.

Existujú dva rôzne, nekompatibilné protokoly Bluetooth: Bluetooth Classic a Bluetooth Low Energy (LE, tiež známy ako Bluetooth Smart). Existuje aj tretí protokol, Bluetooth High Speed, ale ten nie je rozšírený a nepoužíva sa v domácich zariadeniach.

Počnúc Bluetooth 4.0 sa zmeny v špecifikácii týkali najmä Bluetooth Low Energy a verzia Classic sa dočkala len drobných vylepšení.

Zoznam zmien medzi Bluetooth 4.2 a Bluetooth 5:

9 ZMIEN Z verzie 4.2 NA 5.0

9.1 NOVÉ FUNKCIE

Vo vydaní Bluetooth Core Specification 5.0 je predstavených niekoľko nových funkcií. Hlavné oblasti zlepšenia sú:
• Maska dostupnosti slotu (SAM)
• 2 Msym/s PHY pre LE
• LE Long Range
• Nepripojiteľná reklama s vysokým zaťažením
• LE Advertising Extensions
• Algoritmus výberu kanála LE č. 2
9.1.1 Funkcie pridané v CSA5 – integrované vo verzii 5.0
•Vyšší výstupný výkon

Zdroj: www.bluetooth.org/docman/handlers/DownloadDoc.ashx?doc_id=421043 (strana 291)

Verzia Classic sa v rámci špecifikácie Bluetooth 5 dotkla len jedna zmena: pridali podporu technológie Slot Availability Mask (SAM), ktorá má zlepšiť oddelenie rozhlasového vysielania. Všetky ostatné zmeny ovplyvnia iba Bluetooth LE (a tiež vyšší výstupný výkon).

všetko Zvukové zariadenia používajú iba Bluetooth Classic. Nie je možné pripojiť slúchadlá a reproduktory cez Bluetooth Low Energy: neexistuje žiadny štandard na prenos zvuku pomocou LE. Štandard A2DP, ktorý sa používa na prenos vysokokvalitného zvuku, funguje iba cez Bluetooth Classic a v LE nie je žiadny analóg.

Záver – kupovať audio zariadenia s Bluetooth 5 len kvôli novej verzii protokolu je nezmysel. Bluetooth 4.0/4.1/4.2 v kontexte prenosu zvuku bude fungovať úplne rovnako.
Ak sa v oznámení nových slúchadiel spomína dvojnásobný prevádzkový dosah a znížená spotreba energie vďaka Bluetooth 5, potom by ste mali vedieť, že tomu buď sami nerozumejú, alebo vás zavádzajú. Niet sa čomu čudovať, veď aj výrobcovia Bluetooth čipov sú vo svojich oznámeniach zmätení z rozdielov medzi novou verziou štandardu a niektoré Bluetooth 5 čipy podporujú piatu verziu len pre LE a pre Classic používajú 4.2.

Oneskorenie prenosu zvuku

Veľkosť oneskorenia (lag) zvuku závisí od mnohých faktorov: veľkosť vyrovnávacej pamäte v zásobníku zvuku, v zásobníku Bluetooth a v samotnom bezdrôtovom prehrávacom zariadení a algoritmické oneskorenie kodeku.

Latencia jednoduchých kodekov ako SBC, aptX a aptX HD je veľmi malá, 3-6 ms, čo možno zanedbať, ale zložité kodeky ako AAC a LDAC môžu spôsobiť značné oneskorenie. Algoritmická latencia AAC pre 44.1 kHz je 60 ms. LDAC - asi 30 ms (na základe hrubej analýzy zdrojového kódu. Môžem sa mýliť, ale nie veľa.)

Výsledná latencia značne závisí od prehrávacieho zariadenia, jeho čipovej sady a vyrovnávacej pamäte. Počas testov som dostal rozptyl 150 až 250 ms na rôznych zariadeniach (s kodekom SBC). Ak predpokladáme, že zariadenia podporujúce ďalšie kodeky aptX, AAC a LDAC používajú vysokokvalitné komponenty a malú veľkosť vyrovnávacej pamäte, dostaneme nasledujúce typické latencie:

SBC: 150-250 ms
aptX: 130-180 ms
AAC: 190-240 ms
LDAC: 160-210 ms

Pripomínam vám: aptX Low Latency nie je podporovaný v operačných systémoch, a preto je možné nižšiu latenciu dosiahnuť len s kombináciou vysielač+prijímač alebo vysielač+slúchadlá/reproduktory a všetky zariadenia musia podporovať tento kodek.

Problémy so zariadením Bluetooth, certifikáciou a logom

Ako rozlíšiť kvalitné audio zariadenie od lacného remesla? Vo vzhľade, v prvom rade!

Pre lacné čínske slúchadlá, reproduktory a prijímače:

  1. Na krabici a zariadení chýba slovo „Bluetooth“, najčastejšie sa používa „Wireless“ a „BT“
  2. Chýba logo Bluetooth Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach na krabici alebo zariadení
  3. Žiadna modrá blikajúca LED

Absencia týchto prvkov naznačuje, že zariadenie nebolo certifikované, čo znamená, že je potenciálne nekvalitné a problematické. Napríklad slúchadlá Bluedio nemajú certifikáciu Bluetooth a nespĺňajú úplne špecifikáciu A2DP. Neprešli by certifikáciou.

Zoberme si niekoľko zariadení a boxov z nich:
Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Zvuk cez Bluetooth: maximálne podrobnosti o profiloch, kodekoch a zariadeniach

Všetko sú to necertifikované zariadenia. Návod môže obsahovať logo a názov technológie Bluetooth, ale najdôležitejšie je, že sú na krabici a/alebo na samotnom zariadení.

Ak vaše slúchadlá alebo reproduktor hovoria „Ze bluetooth dewise je úspešne pripojený“, tiež to neznamená ich kvalitu:

Záver

Môže Bluetooth úplne nahradiť káblové slúchadlá a náhlavné súpravy? Je schopný, no za cenu slabej kvality hovoru, zvýšenej latencie zvuku, ktorá môže byť v hrách otravná, a množstva proprietárnych kodekov, ktoré si vyžadujú licenčné poplatky a zvyšujú konečné náklady na smartfóny aj slúchadlá.

Marketing alternatívnych kodekov je veľmi silný: aptX a LDAC sú prezentované ako dlho očakávaná náhrada za „zastaraný a zlý“ SBC, ktorý nie je ani zďaleka taký zlý, ako si ľudia myslia.

Ako sa ukázalo, umelé obmedzenia zásobníkov Bluetooth na bitovej rýchlosti SBC sa dajú obísť, takže SBC nebude horšie ako aptX HD. Prevzal som iniciatívu do vlastných rúk a urobil som opravu firmvéru LineageOS: Upravili sme zásobník Bluetooth, aby sme zlepšili zvuk na slúchadlách bez kodekov AAC, aptX a LDAC

Viac informácií nájdete na webových stránkach Zvuk chlapi и SoundExpert.

bonus: Referenčný kodér SBC, informácie o bitovom toku A2DP a testovacie súbory. Tento súbor býval verejne zverejnený na webovej stránke Bluetooth, ale teraz je k dispozícii iba členom Bluetooth SIG.

Zdroj: hab.com

Pridať komentár