Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

3.5 mm audio yuvası olmayan smartfonların kütləvi istehsalı sayəsində simsiz Bluetooth qulaqlıqları bir çoxları üçün qulaqlıq rejimində musiqi dinləmək və ünsiyyət qurmaq üçün əsas vasitəyə çevrilib.
Simsiz cihazların istehsalçıları həmişə məhsulun ətraflı xüsusiyyətlərini yazmırlar və İnternetdə Bluetooth audio ilə bağlı məqalələr bir-birinə ziddir, bəzən yanlışdır, bütün xüsusiyyətlər haqqında danışmır və çox vaxt reallığa uyğun gəlməyən eyni məlumatları kopyalayır.
Protokolu, Bluetooth OS yığınlarının, qulaqlıqların və dinamiklərin imkanlarını, musiqi və nitq üçün Bluetooth kodeklərini anlamağa çalışaq, ötürülən səsin və gecikmənin keyfiyyətinə nə təsir etdiyini öyrənək, dəstəklənən kodeklər və digər cihaz haqqında məlumat toplamaq və deşifrə etmək yollarını öyrənək. imkanlar.

TL; DR:

  • SBC - normal kodek
  • Qulaqlıqların öz ekvalayzeri və hər bir kodek üçün ayrıca post-processing var
  • aptX reklam edildiyi qədər yaxşı deyil
  • LDAC marketinq axmaqlığıdır
  • Zəng keyfiyyəti hələ də zəifdir
  • C audio kodlayıcılarını emscripten vasitəsilə WebAssembly-də tərtib etməklə brauzerinizə daxil edə bilərsiniz və onlar çox yavaşlamayacaqlar.

Bluetooth vasitəsilə musiqi

Bluetooth-un funksional komponenti profillər - xüsusi funksiyaların spesifikasiyası ilə müəyyən edilir. Bluetooth musiqi axını yüksək keyfiyyətli A2DP bir istiqamətli audio ötürülmə profilindən istifadə edir. A2DP standartı 2003-cü ildə qəbul edilib və o vaxtdan bəri əhəmiyyətli dərəcədə dəyişməyib.
Profil daxilində Bluetooth üçün xüsusi olaraq yaradılmış, aşağı hesablama mürəkkəbliyi olan 1 məcburi kodek SBC və 3 əlavə standartlaşdırılıb. Öz tətbiqinizin sənədsiz kodeklərindən istifadə etmək də mümkündür.

2019-cu ilin iyun ayından etibarən biz xkcd komiksində 14 A2DP kodek ilə:

  • SBC ← A2DP-də standartlaşdırılıb, bütün cihazlar tərəfindən dəstəklənir
  • MPEG-1/2 Layer 1/2/3 ← A2DP-də standartlaşdırılıb: yaxşı məlumdur MP3, rəqəmsal televiziyada istifadə olunur MP2, və naməlum MP1
  • MPEG-2/4 AAC ← A2DP-də standartlaşdırılıb
  • ATTRAC ← Sony-dən köhnə kodek, A2DP-də standartlaşdırılıb
  • LDAC ← Sony-dən yeni kodek
  • APTX ← 1988-ci ildən kodek
  • aptXHD ← aptX ilə eyni, yalnız müxtəlif kodlaşdırma seçimləri ilə
  • aptX Aşağı Gecikmə ← tamamilə fərqli kodek, proqram təminatı yoxdur
  • aptX uyğunlaşma ← Qualcomm-dan başqa bir kodek
  • Sürətli axın ← Pseudo codec, iki istiqamətli SBC modifikasiyası
  • HWA LHDC ← Huawei-dən yeni kodek
  • Samsung HD ← 2 cihaz tərəfindən dəstəklənir
  • Samsung Scalable ← 2 cihaz tərəfindən dəstəklənir
  • Samsung UHQ-BT ← 3 cihaz tərəfindən dəstəklənir

Soruşursunuz ki, Bluetooth-da 2 və 3 Mbit/s sürətlə məlumat ötürməyə imkan verən EDR olduqda və sıxılmamış iki kanallı 16 bitlik PCM üçün 1.4 Mbit/s kifayətdir?

Bluetooth vasitəsilə məlumat ötürülməsi

Bluetooth-da məlumat ötürülməsinin iki növü var: əlaqə yaratmadan asinxron ötürmə üçün Asynchronous Connection Less (ACL) və ilkin əlaqə danışıqları ilə sinxron ötürmə üçün Sinxron Əlaqəyə Yönlü (SCO).
Ötürmə vaxt bölgüsü sxemindən istifadə etməklə və hər bir paket üçün ayrıca ötürmə kanalının seçilməsi ilə həyata keçirilir (Frequency-Hop/Time-Division-Dupleks, FH/TDD), bunun üçün vaxt slot adlanan 625 mikrosaniyəlik intervallara bölünür. Cihazlardan biri cüt nömrəli yuvalarda, digəri isə tək nömrəli yuvalarda ötürür. Göndərilən paket verilənlərin ölçüsündən və təyin edilmiş ötürmə növündən asılı olaraq 1, 3 və ya 5 slot tuta bilər, bu halda bir cihazla ötürülmə ötürmə bitənə qədər cüt və tək yuvalarda həyata keçirilir. Ümumilikdə, hər biri 1600 slot tutursa və hər iki cihaz dayanmadan nəyisə ötürür və qəbul edərsə, saniyədə 1-ə qədər paket qəbul və göndərilə bilər.

EDR üçün 2 və 3 Mbit/s, elanlarda və Bluetooth veb saytında tapıla bilər, cəmi bütün məlumatların (məlumatların inkapsulyasiya edilməli olduğu bütün protokolların texniki başlıqları daxil olmaqla) iki istiqamətdə maksimum kanal ötürmə sürətidir. eyni vaxtda. Faktiki məlumat ötürmə sürəti çox dəyişəcək.

Musiqini ötürmək üçün, demək olar ki, həmişə 2-DH5 və 3-DH5 kimi paketlərdən istifadə edərək, EDR rejimində müvafiq olaraq 2 Mbit/s və 3 Mbit/s maksimum məlumat daşıyan və 5 vaxt tutan asinxron metoddan istifadə edilir. - yuvaların paylaşılması.

Bir cihaz tərəfindən 5 yuva və digəri tərəfindən 1 yuva (DH5/DH1) istifadə edərək ötürülmənin sxematik təsviri:
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Efir dalğalarının vaxt bölgüsü prinsipinə görə, ikinci cihaz bizə heç nə ötürmürsə və ya kiçik paket ötürürsə, paketi ötürdükdən sonra 625 mikrosaniyəlik zaman aralığını, ikinci cihaz ötürərsə, daha çox vaxt gözləməyə məcbur oluruq. böyük paketlərdə. Telefona birdən çox cihaz qoşulubsa (məsələn, qulaqlıq, saat və fitnes qolbağı), onda ötürmə vaxtı onların hamısı arasında bölüşdürülür.

L2CAP və AVDTP xüsusi nəqliyyat protokollarında audionun inkapsulyasiyasına ehtiyac ötürülən audio yükün mümkün maksimum miqdarından 16 bayt alır.

Paket növü
Slotların sayı
Maks. paketdəki baytların sayı
Maks. A2DP yükünün bayt sayı
Maks. A2DP faydalı yük bitrate

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 və 1429 kbps səs-küylü 2.4 GHz diapazonu və xidmət məlumatlarının ötürülməsi ehtiyacı ilə real şəraitdə sıxılmamış səsi ötürmək üçün mütləq kifayət deyil. EDR 3 Mbit/s ötürmə gücünə və efirdə səs-küyə tələbkardır, buna görə də 3-DH5 rejimində belə rahat PCM ötürülməsi mümkün deyil, həmişə qısamüddətli fasilələr olacaq və hər şey yalnız bir məsafədə işləyəcək. bir neçə metr.
Praktikada hətta 990 kbit/s audio axınını (LDAC 990 kbit/s) ötürmək çətindir.

Kodeklərə qayıdaq.

SBC

A2DP standartını dəstəkləyən bütün cihazlar üçün kodek tələb olunur. Eyni zamanda ən yaxşı və ən pis kodek.

Nümunə dərəcəsi
Bit dərinliyi
Bitrate
Kodlaşdırma dəstəyi
Deşifrə dəstəyi

16, 32, 44.1, 48 kHz
16 bit
10-1500 kbps
Bütün cihazlar
Bütün cihazlar

SBC, adaptiv impuls kodu modulyasiyasından (APCM) istifadə edərək, primitiv psixoakustik modelə (yalnız sakit səslərin maskalanması tətbiq olunur) malik sadə və hesablama baxımından sürətli kodekdir.
A2DP spesifikasiyası istifadə üçün iki profili tövsiyə edir: Orta Keyfiyyət və Yüksək Keyfiyyət.
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Kodekdə alqoritmik gecikməni, blokdakı nümunələrin sayını, bit paylama alqoritmini idarə etməyə imkan verən bir çox parametr var, lakin demək olar ki, hər yerdə spesifikasiyada tövsiyə olunan eyni parametrlər istifadə olunur: Birgə Stereo, 8 tezlik diapazonu, 16 blok audio çərçivə, Loudness bit paylanması üsulu.
SBC birbaşa bit sürətinə təsir edən Bitpool parametrinin dinamik dəyişməsini dəstəkləyir. Efir dalğaları tıxanıbsa, paketlər itirilibsə və ya cihazlar böyük məsafələrdə yerləşibsə, audio mənbəyi rabitə normallaşana qədər Bitpool-u azalda bilər.

Əksər qulaqlıq istehsalçıları tövsiyə olunan profildən istifadə edərkən bit sürətini saniyədə 53 kilobitlə məhdudlaşdıran maksimum Bitpool dəyərini 328-ə təyin edir.
Qulaqlıq istehsalçısı maksimum Bitpool dəyərini 53-dən yuxarı təyin etsə belə (belə modellərə rast gəlinir, məsələn: Beats Solo³, JBL Everest Elite 750NC, Apple AirPods, bəzi qəbuledicilərdə və avtomobil baş bloklarında da mövcuddur), onda əksər OS icazə verməyəcək. Bluetooth yığınlarında müəyyən edilmiş daxili dəyər limiti səbəbindən artan bit sürətlərindən istifadə.
Bundan əlavə, bəzi istehsalçılar bəzi cihazlar üçün maksimum Bitpool dəyərini aşağı təyin edirlər. Məsələn, Bluedio T üçün 39, Samsung Gear IconX üçün 37-dir, bu da pis səs keyfiyyətini verir.

Bluetooth yığınlarının tərtibatçıları tərəfindən süni məhdudiyyətlər, çox güman ki, bəzi cihazların böyük Bitpool dəyərləri və ya atipik profilləri ilə uyğunsuzluğu, hətta onlara dəstək olduğunu bildirsələr də və sertifikatlaşdırma zamanı kifayət qədər sınaqdan keçməməsi səbəbindən yaranıb. Bluetooth yığınlarının müəllifləri üçün səhv cihazların verilənlər bazası yaratmaqdansa, tövsiyə olunan profillə razılaşmaqla məhdudlaşmaq daha asan idi (baxmayaraq ki, indi bunu digər səhv işləyən funksiyalar üçün edirlər).

SBC dinamik olaraq kvantlaşdırma bitlərini müxtəlif çəkilərlə aşağıdan yüksəkə qədər tezlik diapazonlarına ayırır. Bütün bit sürəti aşağı və orta tezliklər üçün istifadə olunarsa, yüksək tezliklər "kəsilir" (əvəzində səssizlik olacaq).

Misal SBC 328 kbps. Yuxarıda orijinal, altındakı SBC var, vaxtaşırı treklər arasında keçid edir. Video fayldakı səs FLAC itkisiz sıxılma kodekindən istifadə edir. FLAC-dan mp4 konteynerində istifadə rəsmi olaraq standartlaşdırılmayıb, ona görə də brauzerinizin onu oynatacağına zəmanət verilmir, lakin o, Chrome və Firefox-un masaüstü kompüterlərinin ən son versiyalarında işləməlidir. Əgər səsiniz yoxdursa, faylı yükləyə və tam hüquqlu video pleyerdə aça bilərsiniz.
ZZ Top - Kəskin Geyinmiş Adam

Spektroqram keçid anını göstərir: SBC vaxtaşırı 17.5 kHz-dən yuxarı səssiz səsləri kəsir və 20 kHz-dən yuxarı olan diapazon üçün ümumiyyətlə heç bir bit ayırmır. Tam spektroqramı klikləməklə əldə etmək olar (1.7 MB).
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Bu trekdə orijinal və SBC arasında heç bir fərq eşitmirəm.

Gəlin daha yeni bir şey götürək və Bitpool 37 ilə Samsung Gear IconX qulaqlıqlarından istifadə edərək əldə ediləcək audionu simulyasiya edək (yuxarıda - orijinal siqnal, aşağıda - SBC 239 kbps, FLAC-da audio).
Ağılsız Özünə Qəbul - Şahid

Mən vokalın yüksək tezliklərində xırıltı, daha az stereo effekt və xoşagəlməz "kınqıltı" səsi eşidirəm.

SBC çox çevik kodek olsa da, aşağı gecikmə üçün konfiqurasiya edilə bilər, yüksək bit sürətlərində (452+ kbps) əla audio keyfiyyəti təmin edir və standart Yüksək Keyfiyyətdə (328 kbps) əksər insanlar üçün olduqca yaxşıdır. A2DP standartı sabit profilləri göstərmir (yalnız tövsiyələr verir), stek tərtibatçıları Bitpool-da süni məhdudiyyətlər qoyublar, ötürülən səsin parametrləri istifadəçi interfeysində göstərilmir və qulaqlıq istehsalçıları öz parametrlərini təyin etməkdə sərbəstdirlər və heç vaxt məhsulun texniki xüsusiyyətlərində Bitpool dəyərini göstərin, kodek aşağı səs keyfiyyəti ilə məşhurlaşdı, baxmayaraq ki, bu kodekdə problem deyil.
Bitpool parametri yalnız bir profil daxilində bit sürətinə birbaşa təsir göstərir. Eyni Bitpool 53 dəyəri tövsiyə olunan Yüksək Keyfiyyət profili ilə həm 328 kbps, həm də Dual Channel və 1212 tezlik diapazonu ilə 4 kbps bit sürəti verə bilər, buna görə də OS müəllifləri Bitpool-da məhdudiyyətlərə əlavə olaraq, limit təyin edir və Bitrate. Gördüyüm kimi, bu vəziyyət A2DP standartındakı çatışmazlıq səbəbindən yaranıb: Bitpool ilə deyil, bitreyt haqqında danışıqlar aparmaq lazım idi.

Müxtəlif OS-lərdə SBC imkanları üçün dəstək cədvəli:

ƏS
Dəstəklənən seçmə dərəcələri
Limit maks. Bitpool
Limit maks. Bitrate
Tipik Bitrate
Bitpool dinamik tənzimlənməsi

Windows 10
44.1 kHц
53
512 kbps
328 kbps
✓*

Linux (BlueZ + PulseAudio)
16, 32, 44.1, 48 kHz
64 (daxil olan bağlantılar üçün), 53 (gidən bağlantılar üçün)
Limit yoxdur
328 kbps
✓*

MacOS Yüksək Sierra
44.1 kHц
64, defolt 53***
Bilinməyən
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 kHц
53
Limit yoxdur
328 kbps

* Bitpool yalnız azalır, lakin köçürmə şərtləri yaxşılaşdıqda avtomatik olaraq artmır. Bitpool-u bərpa etmək üçün oxutmanı dayandırmalı, bir neçə saniyə gözləməli və səsi yenidən başlatmalısınız.
** Defolt dəyər, proqram təminatının tərtibi zamanı göstərilən yığın parametrlərindən asılıdır. Android 8/8.1-də tərtib zamanı parametrlərdən asılı olaraq tezlik yalnız 44.1 kHz və ya 48 kHz-dir, digər versiyalarda 44.1 kHz və 48 kHz eyni vaxtda dəstəklənir.
*** Bitpool dəyəri Bluetooth Explorer proqramında artırıla bilər.

aptX və aptX HD

aptX, adaptiv diferensial impuls kodu modulyasiyasından istifadə edən, psixoakustikasız sadə və hesablama baxımından sürətli kodekdir (ADPCM). Təxminən 1988-ci ildə ortaya çıxdı (verilmə tarixi patent Fevral 1988-ci il tarixli) Bluetooth-dan əvvəl o, ilk növbədə peşəkar simsiz audio avadanlıqlarında istifadə olunurdu. Hazırda Qualcomm-a məxsusdur, lisenziya və qonorar tələb edir. 2014-cü ildən: 6000-ə qədər cihaz üçün birdəfəlik 1 ABŞ dolları və hər cihaz üçün ≈$10000 (mənbə, səh. 16).
aptX və aptX HD fərqli kodlaşdırma profilləri ilə eyni kodekdir.

Kodekdə yalnız bir parametr var - seçmə tezliyinin seçilməsi. Bununla belə, kanalların sayı/rejimi seçimi var, lakin mənə məlum olan bütün cihazlarda (70+ ədəd) yalnız Stereo dəstəklənir.

Kodek
Nümunə dərəcəsi
Bit dərinliyi
Bitrate
Kodlaşdırma dəstəyi
Deşifrə dəstəyi

APTX
16, 32, 44.1, 48 kHz
16 bit
128/256/352/384 kbps (nümunə alma sürətindən asılı olaraq)
Windows 10 (masaüstü və mobil), macOS, Android 4.4+/7*, Blackberry OS 10
Geniş çeşidli audio cihazları (aparat)

* 7-ə qədər olan versiyalar Bluetooth yığınının dəyişdirilməsini tələb edir. Kodek yalnız Android cihazı istehsalçısı Qualcomm-dan kodek lisenziyası aldıqda (ƏS-də kodlaşdırma kitabxanaları varsa) dəstəklənir.

aptX səsi 4 tezlik diapazonuna bölür və onları daim eyni sayda bitlə kvantlaşdırır: 8-0 kHz üçün 5.5 bit, 4-5.5 kHz üçün 11 bit, 2-11 kHz üçün 16.5 bit, 2-16.5 kHz üçün 22 bit ( seçmə sürəti üçün rəqəmlər 44.1 kHz).

aptX audio nümunəsi (yuxarıda - orijinal siqnal, aşağıda - aptX, yalnız sol kanalların spektroqramları, FLAC-da səs):

Yüksəklər bir az qırmızı oldu, amma fərqi eşitmədin.

Kvantlaşdırma bitlərinin sabit paylanması səbəbindən kodek bitləri onlara ən çox ehtiyac duyan tezliklərə “köçürə” bilmir. SBC-dən fərqli olaraq, aptX tezlikləri “kəsməyəcək”, lakin səsin dinamik diapazonunu azaldaraq onlara kvantlaşdırma səsi əlavə edəcək.

Ehtimal etmək olmaz ki, məsələn, hər bir bant üçün 2 bitdən istifadə dinamik diapazonu 12 dB-ə qədər azaldır: ADPCM hətta 96 kvantlaşdırma bitindən istifadə edərkən, ancaq müəyyən bir siqnal üçün 2 dB-ə qədər dinamik diapazona imkan verir.
ADPCM, PCM-də olduğu kimi mütləq dəyəri saxlamaq əvəzinə, cari nümunə ilə növbəti nümunə arasındakı ədədi fərqi saxlayır. Bu, eyni (itkisiz) və ya demək olar ki, eyni (nisbətən kiçik yuvarlaqlaşdırma xətası ilə) məlumatları saxlamaq üçün lazım olan bitlərin sayına olan tələbləri azaltmağa imkan verir. Yuvarlaqlaşdırma səhvlərini azaltmaq üçün əmsal cədvəllərindən istifadə olunur.
Kodek yaratarkən müəlliflər musiqi audio faylları dəstində ADPCM əmsallarını hesabladılar. Səs siqnalı masaların qurulduğu musiqi toplusuna nə qədər yaxındırsa, aptX daha az kvantlaşdırma xətaları (səs-küy) yaradır.

Buna görə sintetik testlər həmişə musiqidən daha pis nəticələr verəcəkdir. AptX-in zəif nəticələr göstərdiyi xüsusi sintetik nümunə verdim - 12.4 kHz tezliyi olan sinus dalğası (yuxarıda - orijinal siqnal, aşağıda - aptX. FLAC-da səs. Səsi azaldın!):

Spektr qrafiki:
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Səslər aydın eşidilir.

Bununla belə, daha kiçik bir amplituda ilə bir sinus dalğası yaratsanız, daha sakit olarsa, səs-küy də geniş dinamik diapazonu göstərən daha sakitləşəcəkdir:

Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Orijinal musiqi treki ilə sıxılmış musiqi arasındakı fərqi eşitmək üçün siz siqnallardan birini tərsinə çevirə və kanallar üzrə trekləri əlavə edə bilərsiniz. Bu yanaşma, ümumiyyətlə, yanlışdır və daha mürəkkəb kodeklərlə sağlam nəticələr verməyəcək, lakin xüsusi olaraq ADPCM üçün olduqca uyğundur.
Orijinal və aptX arasındakı fərq
Siqnalların orta kvadrat fərqi -37.4 dB səviyyəsindədir, bu cür sıxılmış musiqi üçün çox deyil.

aptXHD

aptX HD müstəqil kodek deyil - bu, aptX kodekinin təkmilləşdirilmiş kodlaşdırma profilidir. Dəyişikliklər tezlik diapazonlarının kodlaşdırılması üçün ayrılmış bitlərin sayına təsir etdi: 10-0 kHz üçün 5.5 bit, 6-5.5 kHz üçün 11 bit, 4-11 kHz üçün 16.5 bit, 4-16.5 kHz üçün 22 bit (44.1 kHz üçün rəqəmlər) .

Kodek
Nümunə dərəcəsi
Bit dərinliyi
Bitrate
Kodlaşdırma dəstəyi
Deşifrə dəstəyi

aptXHD
16, 32, 44.1, 48 kHz
24 bit
192/384/529/576 kbps (nümunə alma sürətindən asılı olaraq)
Android 8+*
Bəzi audio cihazları (avadanlıq)

* 7-ə qədər olan versiyalar Bluetooth yığınının dəyişdirilməsini tələb edir. Kodek yalnız Android cihazı istehsalçısı Qualcomm-dan kodek lisenziyası aldıqda (ƏS-də kodlaşdırma kitabxanaları varsa) dəstəklənir.

AptX-dən daha az yayılmışdır: yəqin ki, Qualcomm-dan ayrıca lisenziyalaşdırma və ayrıca lisenziya ödənişləri tələb edir.

Nümunəni 12.4 kHz-də sinus dalğası ilə təkrarlayaq:
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

aptX-dən daha yaxşıdır, amma yenə də bir az səs-küylüdür.

aptX Aşağı Gecikmə

Standart aptX və aptX HD ilə heç bir əlaqəsi olmayan Qualcomm-dan kodek, onun hazırlanmasında iştirak edən insanların məhdud məlumatlarına görə. Audio gecikmənin proqram təminatı ilə tənzimlənə bilməyəcəyi interaktiv aşağı gecikməli audio ötürülməsi (filmlər, oyunlar) üçün nəzərdə tutulmuşdur. Kodlayıcıların və dekoderlərin məlum proqram təminatı yoxdur; onlar yalnız ötürücülər, qəbuledicilər, qulaqlıqlar və dinamiklər tərəfindən dəstəklənir, lakin smartfonlar və kompüterlər tərəfindən deyil.

Nümunə dərəcəsi
Bitrate
Kodlaşdırma dəstəyi
Deşifrə dəstəyi

44.1 kHц
276/420 kbps
Bəzi ötürücülər (aparat)
Bəzi audio cihazları (avadanlıq)

AAC

AAC və ya Advanced Audio Coding, ciddi psixoakustik modelə malik hesablama baxımından mürəkkəb kodekdir. İnternetdə audio üçün geniş istifadə olunur, populyarlığına görə MP3-dən sonra ikincidir. Lisenziya və qonorar tələb edir: birdəfəlik 15000 dollar (və ya 1000-dən az işçisi olan şirkətlər üçün 15 ABŞ dolları) + ilk 0.98 cihaz üçün 500000 dollar (mənbə).
Kodek MPEG-2 və MPEG-4 spesifikasiyası çərçivəsində standartlaşdırılıb və ümumi yanlış təsəvvürün əksinə olaraq, Apple-a aid deyil.

Nümunə dərəcəsi
Bitrate
Kodlaşdırma dəstəyi
Deşifrə dəstəyi

8 - 96 kHz
8 - 576 kbps (stereo üçün), 256 - 320 kbps (Bluetooth üçün tipik)
macOS, Android 7+*, iOS
Geniş çeşidli audio cihazları (aparat)

* yalnız istehsalçıları lisenziya haqqı ödəmiş cihazlarda

iOS və macOS, mümkün olan ən yüksək səs keyfiyyətini təqdim etmək üçün Apple-ın ən yaxşı AAC kodlayıcısından istifadə edir. Android ikinci ən yüksək keyfiyyətli Fraunhofer FDK AAC kodlayıcısından istifadə edir, lakin naməlum kodlaşdırma keyfiyyəti ilə platformaya (SoC) daxil edilmiş müxtəlif avadanlıqlardan istifadə edə bilər. SoundGuys saytındakı son testlərə görə, müxtəlif Android telefonlarının AAC kodlaşdırma keyfiyyəti çox dəyişir:
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Əksər simsiz audio cihazları AAC üçün maksimum 320 kbps bit sürətinə malikdir, bəziləri yalnız 256 kbps dəstəkləyir. Digər bit sürətləri olduqca nadirdir.
AAC 320 və 256 kbps bit sürətlərində əla keyfiyyət təmin edir, lakin buna tabedir artıq sıxılmış məzmunun ardıcıl kodlaşdırılmasının itirilməsi, bununla belə, iOS-da 256 kbps bit sürətində orijinal ilə hər hansı fərqi eşitmək çətindir, hətta bir neçə ardıcıl kodlaşdırma ilə də; tək kodlaşdırma ilə, məsələn, MP3 320 kbps-dən AAC 256 kbps-ə qədər itkiləri nəzərə almamaq olar.
Digər Bluetooth kodeklərində olduğu kimi, hər hansı musiqi əvvəlcə deşifrə olunur, sonra isə kodek tərəfindən kodlanır. AAC formatında musiqi dinləyərkən o, əvvəlcə ƏS tərəfindən deşifrə edilir, sonra Bluetooth vasitəsilə ötürülmək üçün yenidən AAC-a kodlanır. Bu, musiqi və yeni mesaj bildirişləri kimi çoxsaylı audio axınını qarışdırmaq üçün lazımdır. iOS da istisna deyil. İnternetdə iOS-da AAC formatında musiqinin Bluetooth vasitəsilə ötürüldüyü zaman kodlaşdırılmadığına dair bir çox ifadələr tapa bilərsiniz, bu doğru deyil.

MP1/2/3

MPEG-1/2 Part 3 ailəsinin kodekləri tanınmış və geniş istifadə olunan MP3, daha az yayılmış MP2 (əsasən rəqəmsal TV və radioda istifadə olunur) və tamamilə naməlum MP1-dən ibarətdir.

Köhnə MP1 və MP2 kodekləri ümumiyyətlə dəstəklənmir: onları kodlayan və ya deşifrə edən heç bir qulaqlıq və ya Bluetooth yığını tapa bilmədim.
MP3 deşifrəsi bəzi qulaqlıqlar tərəfindən dəstəklənir, lakin kodlaşdırma heç bir müasir əməliyyat sistemi yığınında dəstəklənmir. Görünür, Windows üçün üçüncü tərəf BlueSoleil yığını konfiqurasiya faylını əl ilə dəyişdirsəniz MP3-ə kodlaya bilər, lakin mənim üçün onu quraşdırmaq Windows 10-da BSoD-yə gətirib çıxarır. Nəticə - kodek əslində Bluetooth audio üçün istifadə edilə bilməz.
Əvvəllər, 2006-2008-ci illərdə, A2DP standartı cihazlarda yayılmazdan əvvəl, insanlar Symbian və Windows Mobile-da mövcud olan MSI BluePlayer proqramı vasitəsilə Nokia BH-3 qulaqlıqında MP501 musiqi dinləyirdilər. O dövrdə smartfonların OS arxitekturası bir çox aşağı səviyyəli funksiyalara giriş imkanı verirdi və Windows Mobile-da hətta üçüncü tərəfin Bluetooth yığınlarını quraşdırmaq mümkün idi.

MP3 kodekinin son patentinin müddəti başa çatıb, kodekdən istifadə üçün 23 aprel 2017-ci il tarixindən etibarən lisenziya rüsumları tələb olunmur.

Əgər yuxarıda qeyd olunan istinadlarda qeyd olunan ən uzunmüddətli patent tədbir kimi götürülərsə, MP3 texnologiyası Technicolor tərəfindən saxlanılan və idarə olunan ABŞ Patenti 16-un müddəti 2017 aprel 6,009,399-ci ildə ABŞ-da patentsiz oldu.

Mənbə: www.iis.fraunhofer.de/en/ff/amm/prod/audiocodec/audiocodecs/mp3.html

Nümunə dərəcəsi
Bitrate
Kodlaşdırma dəstəyi
Deşifrə dəstəyi

16 - 48 kHz
8 - 320 kbps
Heç bir yerdə dəstəklənmir
Bəzi audio cihazları (avadanlıq)

LDAC

Sony-dən 96 kHz-ə qədər seçmə sürətlərini və 24 bitlik bitreytləri, 990 kbps-ə qədər bitreytləri dəstəkləyən yeni və aktiv şəkildə təbliğ edilən “Hi-Res” kodek. Mövcud Bluetooth kodeklərini əvəz edən audiofil kodek kimi reklam olunur. Radio yayımı şəraitindən asılı olaraq adaptiv bit sürətinin tənzimlənməsi funksiyasına malikdir.

LDAC kodlayıcısı (libldac) standart Android paketinə daxildir, ona görə də kodlaşdırma OS 8 versiyasından başlayaraq istənilən Android smartfonunda dəstəklənir. Sərbəst mövcud olan proqram dekoderləri yoxdur, kodek spesifikasiyası geniş ictimaiyyət üçün əlçatan deyil, lakin kodlayıcıya ilk baxışda kodekin daxili quruluşu oxşardır. ATRAC9 - Sony-nin PlayStation 4 və Vita-da istifadə etdiyi kodek: hər ikisi tezlik domenində işləyir, dəyişdirilmiş diskret kosinus çevrilməsindən (MDCT) və Huffman alqoritmindən istifadə edərək sıxılmadan istifadə edir.

LDAC dəstəyi demək olar ki, yalnız Sony qulaqlıqları ilə təmin edilir. LDAC kodunu deşifrə etmək imkanı bəzən digər istehsalçıların qulaqlıqlarında və DAC-larda olur, lakin çox nadir hallarda.

Nümunə dərəcəsi
Bitrate
Kodlaşdırma dəstəyi
Deşifrə dəstəyi

44.1 - 96 kHz
303/606/909 kbit/s (44.1 və 88.2 kHz üçün), 330/660/990 kbit/s (48 və 96 kHz üçün)
Android 8 +
Bəzi Sony qulaqlıqları və digər istehsalçıların bəzi cihazları (aparat)

LDAC-ın yüksək təsvirli kodek kimi marketinqi onun texniki komponentinə zərər verir: insan qulağına eşidilməyən tezliklərin ötürülməsinə və bit dərinliyinin artırılmasına bit sürətini sərf etmək axmaqlıqdır, halbuki CD keyfiyyətini (44.1/16) itkisiz ötürmək kifayət deyil. . Xoşbəxtlikdən, kodek iki iş rejiminə malikdir: CD audio ötürülməsi və Hi-Res audio ötürülməsi. Birinci halda, hava üzərindən yalnız 44.1 kHz/16 bit ötürülür.

Proqram təminatının LDAC dekoderi sərbəst mövcud olmadığından, LDAC-ı deşifrə edən əlavə qurğular olmadan kodeki sınaqdan keçirmək mümkün deyil. SoundGuys.com mühəndislərinin rəqəmsal çıxış vasitəsilə birləşdirdiyi və çıxış səsini test siqnallarında qeyd etdiyi dəstəyi ilə DAC-da LDAC testinin nəticələrinə görə, CD keyfiyyət rejimində LDAC 660 və 990 kbps siqnal verir. səs-küy nisbəti aptX HD-dən bir qədər yaxşıdır.

Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı
Mənbə: www.soundguys.com/ldac-ultimate-bluetooth-guide-20026

LDAC həmçinin müəyyən edilmiş profillərdən kənar dinamik bit sürətlərini dəstəkləyir - 138 kbps-dən 990 kbps-ə qədər, lakin deyə bildiyim qədər Android yalnız 303/606/909 və 330/660/990 kbps standartlaşdırılmış profillərdən istifadə edir.

Digər kodeklər

Digər A2DP kodekləri geniş istifadə edilmir. Onların dəstəyi ya demək olar ki, tamamilə yoxdur və ya yalnız müəyyən qulaqlıq və smartfon modellərində mövcuddur.
A2DP-də standartlaşdırılan ATRAC kodek Sony tərəfindən heç vaxt Bluetooth kodek kimi istifadə edilməmişdir, Samsung HD, Samsung Scalable və Samsung UHQ-BT kodekləri cihazların ötürülməsi və qəbulu üçün çox məhdud dəstəyə malikdir və HWA LHDC çox yenidir və yalnız üçü dəstəkləyir. (?) cihazlar.

Audio cihazları üçün kodek dəstəyi

Bütün istehsalçılar müəyyən simsiz qulaqlıqlar, dinamiklər, qəbuledicilər və ya ötürücülər tərəfindən dəstəklənən kodeklər haqqında dəqiq məlumat dərc etmirlər. Bəzən olur ki, müəyyən bir kodek üçün dəstək yalnız ötürmə üçündür, qəbul üçün deyil (birləşdirilmiş ötürücü-qəbuledicilərə aiddir), baxmayaraq ki, istehsalçı qeyd etmədən sadəcə "dəstək" elan edir (güman edirəm ki, bəzi kodlayıcıların və dekoderlərin ayrıca lisenziyası Bunun üçün kodeklər günahkardır). Ən ucuz cihazlarda elan edilmiş aptX dəstəyini ümumiyyətlə tapa bilməzsiniz.

Təəssüf ki, əksər əməliyyat sistemlərinin interfeysləri heç bir yerdə istifadə olunan kodeki göstərmir. Bu barədə məlumat yalnız 8-ci versiyadan başlayaraq Android və macOS-da mövcuddur. Bununla belə, hətta bu əməliyyat sistemlərində yalnız telefon/kompüter və qulaqlıqlar tərəfindən dəstəklənən kodeklər göstəriləcək.

Cihazınızın hansı kodekləri dəstəklədiyini necə öyrənə bilərsiniz? A2DP danışıqlar parametrləri ilə trafik zibilini qeyd edin və təhlil edin!
Bu, Linux, macOS və Android-də edilə bilər. Linux-da siz Wireshark və ya hcidump-dan, macOS-da Bluetooth Explorer-dən, Android-də isə tərtibatçı alətlərində mövcud olan standart Bluetooth HCI dump qənaət funksiyasından istifadə edə bilərsiniz. Siz Wireshark analizatoruna yüklənə bilən btsnoop formatında zibil alacaqsınız.
Xahiş edirik: düzgün dump yalnız telefonunuzdan/kompüterinizdən qulaqlıqlara/dinamiklərə qoşulmaqla əldə edilə bilər (nə qədər gülməli görünsə də)! Qulaqlıqlar müstəqil olaraq telefonla əlaqə qura bilər, bu halda onlar telefondan kodeklərin siyahısını tələb edəcəklər, əksinə deyil. Düzgün zibilin qeydə alınmasını təmin etmək üçün əvvəlcə cihazı ayırın və sonra zibil yazarkən telefonunuzu qulaqlıqlarla birləşdirin.

Uyğun olmayan trafiki filtrləmək üçün aşağıdakı displey filtrindən istifadə edin:

btavdtp.signal_id

Nəticədə buna bənzər bir şey görməlisiniz:
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Kodekin təfərrüatlı xüsusiyyətlərini görmək üçün GetCapabilities əmrindəki hər bir elementə klikləyə bilərsiniz.
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Wireshark bütün kodek identifikatorlarını bilmir, ona görə də bəzi kodeklər aşağıdakı identifikator cədvəlinə baxaraq əl ilə deşifrə edilməli olacaq:

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

Zibilləri əl ilə təhlil etməmək üçün hər şeyi avtomatik təhlil edəcək bir xidmət hazırladım: btcodecs.valdikss.org.ru

Kodeklərin müqayisəsi. Hansı kodek daha yaxşıdır?

Hər kodekin öz üstünlükləri və mənfi cəhətləri var.
aptX və aptX HD kodlayıcı və dekoderi dəyişdirmədən dəyişdirilə bilməyən sərt kodlu profillərdən istifadə edir. Nə telefon istehsalçısı, nə də qulaqlıq istehsalçısı bit sürətini və ya aptX kodlaşdırma faktorlarını dəyişə bilməz. Kodek sahibi Qualcomm kitabxana şəklində istinad kodlayıcısını təqdim edir. Bu faktlar aptX-in gücüdür - siz heç bir “amma” olmadan hansı səs keyfiyyətini əldə edəcəyinizi əvvəlcədən bilirsiniz.

SBC, əksinə, bir çox konfiqurasiya edilə bilən parametrlərə, dinamik bit sürətinə malikdir (efir dalğaları məşğul olduqda kodlayıcı bitpool parametrini azalda bilər) və sərt kodlanmış profillərə malik deyil, yalnız tövsiyə olunan "orta keyfiyyət" və "yüksək keyfiyyət" 2-cü ildə A2003DP spesifikasiyasına əlavə edildi. “Yüksək keyfiyyət” bugünkü standartlara görə o qədər də yüksək deyil və əksər Bluetooth yığınları parametrləri “yüksək keyfiyyətli” profildən daha yaxşı istifadə etməyə imkan vermir, baxmayaraq ki, bunun üçün texniki məhdudiyyətlər yoxdur.
Bluetooth SIG-də kitabxana kimi istinad SBC kodlayıcısı yoxdur və istehsalçılar bunu özləri həyata keçirirlər.
Bunlar SBC-nin zəif tərəfləridir - müəyyən bir cihazdan hansı səs keyfiyyətini gözləmək heç vaxt əvvəlcədən aydın deyil. SBC həm aşağı, həm də çox yüksək keyfiyyətli audio istehsal edə bilər, lakin sonuncu Bluetooth yığınlarının süni məhdudiyyətlərini söndürmədən və ya yan keçmədən mümkün deyil.

AAC ilə bağlı vəziyyət qeyri-müəyyəndir: bir tərəfdən nəzəri olaraq kodek orijinaldan fərqlənməyən keyfiyyət istehsal etməlidir, lakin praktikada, müxtəlif Android cihazlarında SoundGuys laboratoriyasının sınaqlarına əsasən, bu təsdiqlənmir. Çox güman ki, günah müxtəlif telefon çipsetlərində quraşdırılmış aşağı keyfiyyətli aparat səs kodlayıcılarındadır. AAC-dən yalnız Apple cihazlarında, Android-də isə onu aptX və LDAC ilə məhdudlaşdırmaq məntiqlidir.

Alternativ kodekləri dəstəkləyən aparat daha yüksək keyfiyyətli olmağa meyllidir, sadəcə olaraq, çox ucuz, keyfiyyətsiz cihazlar üçün həmin kodeklərdən istifadə etmək üçün lisenziya haqqı ödəməyin mənası yoxdur. Testlərimdə SBC keyfiyyətli avadanlıqda çox yaxşı səslənir.

Səsləri SBC, aptX və aptX HD-yə real vaxt rejimində, birbaşa brauzerdə kodlayan veb xidməti yaratdım. Bununla siz bu audio kodekləri həqiqətən Bluetooth vasitəsilə səsi ötürmədən, hər hansı naqilli qulaqlıqlarda, dinamiklərdə və sevdiyiniz musiqidə sınaqdan keçirə, həmçinin audio oxuyarkən kodlaşdırma parametrlərini birbaşa dəyişə bilərsiniz:
btcodecs.valdikss.org.ru/sbc-encoder
Xidmət brauzerdə işləmək üçün emscripten vasitəsilə C-dən WebAssembly və JavaScript-də tərtib edilən BlueZ layihəsindən SBC kodlaşdırma kitabxanalarından və ffmpeg-dən libopenaptx-dan istifadə edir. Kim belə bir gələcəyi xəyal edə bilər!

Göründüyü kimi:

Fərqli kodeklər üçün 20 kHz-dən sonra səs-küy səviyyəsinin necə dəyişdiyinə diqqət yetirin. Orijinal MP3 faylında 20 kHz-dən yuxarı tezliklər yoxdur.

Kodekləri dəyişməyə cəhd edin və orijinal, SBC 53 Joint Stereo (standart və ən ümumi profil) və aptX/aptX HD arasındakı fərqi eşitdiyinizə baxın.

Kodeklər arasındakı fərqi eşidirəm qulaqlıqlarda!

Veb xidməti vasitəsilə test zamanı kodeklər arasındakı fərqi eşitməyən insanlar simsiz qulaqlıqda musiqi dinləyərkən bunu eşitdiklərini iddia edirlər. Təəssüf ki, bu zarafat və ya plasebo effekti deyil: fərq həqiqətən eşidilir, lakin fərqlərdən qaynaqlanmır kodeklər.

Simsiz qəbuledici cihazlarda istifadə olunan Bluetooth audio çipsetlərinin böyük əksəriyyəti ekvalayzer, kompander, stereo genişləndirici və səsi yaxşılaşdırmaq (və ya dəyişdirmək) üçün nəzərdə tutulmuş digər şeyləri həyata keçirən Rəqəmsal Siqnal Prosessoru (DSP) ilə təchiz edilmişdir. Bluetooth avadanlığının istehsalçıları DSP-ni konfiqurasiya edə bilərlər hər kodek üçün ayrıca, və kodeklər arasında keçid edərkən dinləyici əslində müxtəlif DSP parametrlərini dinləyərkən kodeklərin işində fərq eşitdiklərini düşünəcək.

Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı
CSR/Qualcomm tərəfindən istehsal olunan çiplərdə DSP Kalimba audio emal boru kəməri

Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı
Hər bir kodek və çıxış üçün müxtəlif DSP funksiyalarını aktivləşdirin

Bəzi premium cihazlar DSP parametrlərini fərdiləşdirməyə imkan verən proqram təminatı ilə gəlir, lakin daha ucuz qulaqlıqların əksəriyyəti bunu etmir və istifadəçilər səsin sonrakı emalını əl ilə söndürə bilmirlər.

Cihazların funksional xüsusiyyətləri

A2DP standartının müasir versiyası var "Mütləq səs səviyyəsinə nəzarət" funksiyası — səs axınının həcmini proqramlı şəkildə azaltmaq əvəzinə, çıxış mərhələsinin qazancını tənzimləyən AVRCP protokolunun xüsusi əmrlərindən istifadə edərək cihazın səs səviyyəsinə nəzarət. Əgər siz qulaqlıqlarınızdakı səs səviyyəsini dəyişdirdiyiniz zaman dəyişiklik telefonunuzdakı səs səviyyəsi ilə sinxronlaşmırsa, o zaman qulaqlıqlarınız və ya telefonunuz bu funksiyanı dəstəkləmir. Bu halda, qulaqlıq düymələri ilə faktiki səs səviyyəsini tənzimləməklə, telefonda həmişə maksimum səslə musiqi dinləmək məna kəsb edir - bu halda siqnalın səs-küy nisbəti daha yaxşı olacaq və səs keyfiyyəti daha yaxşı olacaq. olmalıdır daha yüksəkdir.
Əslində, acınacaqlı vəziyyətlər var. SBC üçün RealForce OverDrive D1 qulaqlıqlarımda güclü kompander işə salınır və səsin artırılması sakit səslərin səviyyəsinin artmasına səbəb olur, yüksək səslərin həcmi isə dəyişmir (siqnal sıxılır). Buna görə kompüterdə səs səviyyəsini təxminən yarısına təyin etməlisiniz, bu halda praktiki olaraq heç bir sıxılma effekti yoxdur.
Müşahidələrimə görə, əlavə kodekləri olan bütün qulaqlıqlar mütləq səs səviyyəsinə nəzarət funksiyasını dəstəkləyir, görünür, bu, kodeklərin sertifikatlaşdırılması üçün tələblərdən biridir.

Bəzi qulaqlıqlar dəstəklənir eyni anda iki cihazı birləşdirin. Bu, məsələn, kompüterinizdən musiqi dinləməyə və telefonunuzdan zəngləri qəbul etməyə imkan verir. Bununla belə, bilməlisiniz ki, bu rejimdə alternativ kodeklər söndürülür və yalnız SBC istifadə olunur.

AVDTP 1.3 Gecikmə Hesabatı funksiyası qulaqlıqlara gecikməni səsin həqiqətən səsləndirildiyi ötürücü cihaza çatdırmağa imkan verir. Bu, videofayllara baxarkən səsin video ilə sinxronizasiyasını tənzimləməyə imkan verir: radio ötürülməsi ilə bağlı problemlər yaranarsa, audio videodan geri qalmayacaq, əksinə, video pleyer tərəfindən yavaşlayacaq. audio və video yenidən sinxronlaşdırılır.
Funksiya bir çox qulaqlıqlar, Android 9+ və PulseAudio 12.0+ ilə Linux tərəfindən dəstəklənir. Digər platformalarda bu funksiyanın dəstəklənməsindən xəbərim yoxdur.

Bluetooth vasitəsilə iki istiqamətli rabitə. Səs ötürülməsi.

Bluetooth-da səs ötürülməsi üçün Sinxron Bağlantı Oriented (SCO) istifadə olunur - əlaqənin ilkin danışıqları ilə sinxron ötürmə. Rejim, paketlərin ötürülməsi və təkrar göndərilməsinin təsdiqini gözləmədən, simmetrik göndərmə və qəbul sürəti ilə ciddi şəkildə səs və səsi ötürməyə imkan verir. Bu, radio kanalı üzərindən səs ötürülməsinin ümumi gecikməsini azaldır, lakin vaxt vahidinə ötürülən məlumatların miqdarına ciddi məhdudiyyətlər qoyur və keyfiyyətə mənfi təsir göstərir.
Bu rejimdən istifadə edildikdə həm səs, həm də audio eyni keyfiyyətlə ötürülür.
Təəssüf ki, 2019-cu ildən etibarən Bluetooth üzərindən səs keyfiyyəti hələ də zəifdir və Bluetooth SIG-nin niyə bu barədə heç nə etmədiyi aydın deyil.

CVSD

Əsas CVSD nitq kodeki 2002-ci ildə standartlaşdırılıb və bütün ikiistiqamətli Bluetooth rabitə cihazları tərəfindən dəstəklənir. O, adi simli telefoniyanın keyfiyyətinə uyğun gələn 8 kHz seçmə tezliyi ilə audio ötürülməsini təmin edir.

Bu kodekdə qeyd nümunəsi.

mSBC

Əlavə mSBC kodeki 2009-cu ildə standartlaşdırıldı və 2010-cu ildə ondan səs ötürülməsi üçün istifadə edən çiplər artıq peyda oldu. mSBC müxtəlif cihazlar tərəfindən geniş şəkildə dəstəklənir.
Bu müstəqil kodek deyil, sabit kodlaşdırma profili olan A2DP standartından adi SBC-dir: 16 kHz, mono, bitpool 26.

Bu kodekdə qeyd nümunəsi.

Parlaq deyil, lakin CVSD-dən daha yaxşıdır, lakin onlayn ünsiyyət üçün istifadə etmək hələ də bezdiricidir, xüsusən də oyunda ünsiyyət qurmaq üçün qulaqlıqlardan istifadə edərkən - oyunun səsi də 16 kHz seçmə sürətində ötürüləcək.

FastStreamCSR şirkəti SBC-dən istifadə ideyasını inkişaf etdirməyə qərar verdi. ŞƏT protokolunun məhdudiyyətlərini aşmaq və daha yüksək bit sürətlərindən istifadə etmək üçün CSR fərqli bir yola getdi - onlar A2DP birtərəfli audio ötürmə standartına, standartlaşdırılmış kodlaşdırma profillərinə ikitərəfli SBC audio dəstəyini təqdim etdilər və onu "FastStream" adlandırdılar.

FastStream dinamiklərə 44.1 kbps bit sürəti ilə 48 və ya 212 kHz-də stereo audio ötürür və mikrofondan səsin ötürülməsi üçün 16 kHz bit sürəti ilə mono, 72 kHz istifadə olunur (mSBC-dən bir qədər yaxşı). Bu cür parametrlər onlayn oyunlarda ünsiyyət üçün daha uyğundur - oyunun səsi və həmsöhbətlər yüksək keyfiyyətli olacaqdır.

Bu kodekdə qeyd nümunəsi (+ mSBC ilə eyni mikrofondan səs).

Şirkət maraqlı bir qoltuqağacı ilə gəldi, lakin A2DP standartına zidd olduğuna görə, o, yalnız şirkətin bəzi ötürücülərində (Bluetooth cihazı deyil, USB audio kartı kimi işləyir) dəstəklənir, lakin etmir. Bluetooth stəklərində dəstək alın.FastStream dəstəyi ilə qulaqlıqların sayı o qədər də az olmasa da.

Hazırda əməliyyat sistemində FastStream dəstəyi yalnızdır Linux PulseAudio üçün yamaq kimi proqramın əsas şöbəsinə daxil olmayan developer Pali Rohár-dan.

aptX Aşağı Gecikmə

Təəccüblüdür ki, aptX Low Latency, FastStream ilə eyni prinsipi həyata keçirərək iki istiqamətli səsi də dəstəkləyir.
Kodekin bu xüsusiyyətindən heç bir yerdə istifadə etmək mümkün deyil - heç bir OS-də və ya mənə məlum olan hər hansı Bluetooth yığınında Low Latency deşifrəsinə dəstək yoxdur.

Bluetooth 5, Klassik və Aşağı Enerji

Eyni marka altında iki uyğunsuz standartın mövcudluğu səbəbindən Bluetooth spesifikasiyası və versiyaları ətrafında çoxlu çaşqınlıq olub, hər ikisi də müxtəlif məqsədlər üçün geniş şəkildə istifadə olunur.

İki fərqli, uyğun gəlməyən Bluetooth protokolları var: Bluetooth Classic və Bluetooth Low Energy (LE, həmçinin Bluetooth Smart kimi tanınır). Üçüncü protokol, Bluetooth High Speed ​​də var, lakin o, geniş yayılmayıb və məişət cihazlarında istifadə edilmir.

Bluetooth 4.0-dan başlayaraq, spesifikasiyada dəyişikliklər əsasən Bluetooth Low Energy ilə bağlı idi və Klassik versiya yalnız kiçik təkmilləşdirmələr aldı.

Bluetooth 4.2 və Bluetooth 5 arasında dəyişikliklərin siyahısı:

9 v4.2-DƏN 5.0 DƏYİŞİKLİK

9.1 YENİ XÜSUSİYYƏTLƏR

Bluetooth Core Spesifikasiyası 5.0 Buraxılışında bir neçə yeni funksiya təqdim edilmişdir. Əsas təkmilləşdirmə sahələri bunlardır:
• Slot Availability Mask (SAM)
• LE üçün 2 Msym/s PHY
•LE Uzun Menzilli
• Yüksək vəzifə dövrü ilə əlaqəli olmayan reklam
• LE Advertising Extensions
• LE Kanal Seçim Alqoritmi №2
9.1.1 CSA5-ə əlavə edilmiş funksiyalar - v5.0-a inteqrasiya olunub
• Yüksək Çıxış Gücü

Mənbə: www.bluetooth.org/docman/handlers/DownloadDoc.ashx?doc_id=421043 (səhifə 291)

Yalnız bir dəyişiklik Bluetooth 5 spesifikasiyası çərçivəsində Klassik versiyaya təsir etdi: onlar radio yayımının ayrılmasını yaxşılaşdırmaq üçün nəzərdə tutulmuş Slot Availability Mask (SAM) texnologiyasına dəstək əlavə etdilər. Bütün digər dəyişikliklər yalnız Bluetooth LE-yə (və daha yüksək çıxış gücünə də) təsir edir.

Bütün Audio cihazlar yalnız Bluetooth Classic istifadə edir. Qulaqlıqları və dinamikləri Bluetooth Low Energy vasitəsilə birləşdirmək mümkün deyil: LE istifadə edərək səsin ötürülməsi üçün heç bir standart yoxdur. Yüksək keyfiyyətli səsin ötürülməsi üçün istifadə edilən A2DP standartı yalnız Bluetooth Classic vasitəsilə işləyir və LE-də analoqu yoxdur.

Nəticə - yalnız protokolun yeni versiyasına görə Bluetooth 5 ilə audio cihazların alınması mənasızdır. Səs ötürülməsi kontekstində Bluetooth 4.0/4.1/4.2 tam eyni şəkildə işləyəcək.
Əgər yeni qulaqlıqların elanında Bluetooth 5 sayəsində ikiqat iş diapazonu və azaldılmış enerji istehlakından bəhs edilirsə, o zaman bilməlisiniz ki, onlar ya özləri bunu başa düşmürlər, ya da sizi aldadırlar. Təəccüblü deyil, çünki hətta Bluetooth çiplərinin istehsalçıları öz elanlarında standartın yeni versiyası arasındakı fərqlər barədə çaşqınlıq yaşayırlar və bəzi Bluetooth 5 çipləri yalnız LE üçün beşinci versiyanı dəstəkləyir və Classic üçün 4.2 istifadə edir.

Audio ötürülmə gecikməsi

Səsdə gecikmənin (lag) miqdarı bir çox amillərdən asılıdır: audio yığınında, Bluetooth yığınında və simsiz oxutma cihazının özündə buferin ölçüsü və kodekin alqoritmik gecikməsi.

SBC, aptX və aptX HD kimi sadə kodeklərin gecikmə müddəti çox kiçikdir, 3-6 ms-dir, buna məhəl qoyula bilməz, lakin AAC və LDAC kimi mürəkkəb kodeklər nəzərəçarpacaq geriliyə səbəb ola bilər. 44.1 kHz üçün AAC alqoritmik gecikmə 60 ms-dir. LDAC - təxminən 30 ms (mənbə kodunun kobud təhlili əsasında. Mən səhv edə bilərəm, amma çox deyil.)

Yaranan gecikmə oxutma cihazından, onun çipsetindən və buferindən çox asılıdır. Testlər zamanı müxtəlif cihazlarda (SBC kodeki ilə) 150 ilə 250 ms arasında yayılma aldım. Əlavə aptX, AAC və LDAC kodeklərini dəstəkləyən cihazların yüksək keyfiyyətli komponentlərdən və kiçik bufer ölçüsündən istifadə etdiyini fərz etsək, aşağıdakı tipik gecikmələri əldə edirik:

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

Xatırladıram: aptX Low Latency əməliyyat sistemlərində dəstəklənmir, buna görə də aşağı gecikmə yalnız ötürücü+qəbuledici və ya ötürücü+qulaqlıq/dinamik kombinasiyası ilə əldə edilə bilər və bütün cihazlar bu kodeki dəstəkləməlidir.

Bluetooth cihazı, sertifikatlaşdırma və loqo problemləri

Yüksək keyfiyyətli səs cihazını ucuz sənətkarlıqdan necə ayırd etmək olar? Görünüşdə, ilk növbədə!

Ucuz Çin qulaqlıqları, dinamikləri və qəbulediciləri üçün:

  1. Qutuda və cihazda “Bluetooth” sözü yoxdur, ən çox “Wireless” və “BT” istifadə olunur
  2. Bluetooth loqosu yoxdur Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı qutuda və ya cihazda
  3. Mavi yanıb-sönən LED yoxdur

Bu elementlərin olmaması cihazın sertifikatlaşdırılmadığını göstərir, yəni potensial olaraq aşağı keyfiyyətli və problemlidir. Məsələn, Bluedio qulaqlıqları Bluetooth sertifikatına malik deyil və A2DP spesifikasiyasına tam uyğun gəlmir. Onlar sertifikatlaşdırmadan keçməzdilər.

Onlardan bir neçə cihazı və qutuları nəzərdən keçirək:
Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Bluetooth vasitəsilə audio: profillər, kodeklər və cihazlar haqqında mümkün qədər ətraflı

Bunlar hamısı sertifikatsız cihazlardır. Təlimatlarda Bluetooth texnologiyasının loqosu və adı ola bilər, lakin ən əsası onların qutuda və/yaxud cihazın özündə olmasıdır.

Qulaqlıqlarınız və ya dinamikiniz “Ze bluetooth dewise uğurla qoşuldu” deyirsə, bu da onların keyfiyyətini göstərmir:

Nəticə

Bluetooth simli qulaqlıqları və qulaqlıqları tamamilə əvəz edə bilərmi? O, bacarıqlıdır, lakin zəif zəng keyfiyyəti, oyunlarda zəhlətökən ola biləcək artan səs gecikməsi və lisenziya haqqı tələb edən və həm smartfonların, həm də qulaqlıqların son qiymətini artıran bir sıra xüsusi kodeklər hesabına.

Alternativ kodeklərin marketinqi çox güclüdür: aptX və LDAC “köhnəlmiş və pis” SBC-nin çoxdan gözlənilən əvəzedicisi kimi təqdim olunur ki, bu da insanların düşündüyü qədər pis deyil.

Məlum oldu ki, SBC bit sürətində Bluetooth yığınlarının süni məhdudiyyətləri yan keçə bilər ki, SBC aptX HD-dən aşağı olmasın. Mən təşəbbüsü öz əllərimə götürdüm və LineageOS mikroproqramı üçün yamaq düzəltdim: AAC, aptX və LDAC kodekləri olmayan qulaqlıqlarda səsi yaxşılaşdırmaq üçün Bluetooth yığınının dəyişdirilməsi

Ətraflı məlumatı saytlarda əldə etmək olar Səsli Uşaqlar и SoundExpert.

Bonus: SBC istinad kodlayıcısı, A2DP bit axını məlumatı və test faylları. Bu fayl əvvəllər Bluetooth veb saytında açıq şəkildə yerləşdirilirdi, lakin indi yalnız Bluetooth SIG üzvləri üçün əlçatandır.

Mənbə: www.habr.com

Добавить комментарий