Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Tungod sa mass production sa mga smartphone nga walay 3.5 mm audio jack, ang wireless Bluetooth headphones nahimong nag-unang paagi alang sa kadaghanan sa pagpaminaw sa musika ug pagpakigsulti sa headset mode.
Ang mga tiggama sa wireless nga mga himan dili kanunay magsulat og detalyado nga mga detalye sa produkto, ug ang mga artikulo mahitungod sa Bluetooth audio sa Internet nagkasumpaki, usahay dili husto, dili maghisgot mahitungod sa tanan nga mga bahin, ug kasagaran magkopya sa sama nga impormasyon nga dili katumbas sa kamatuoran.
Atong sulayan nga masabtan ang protocol, ang mga kapabilidad sa Bluetooth OS stacks, headphone ug speaker, Bluetooth codecs para sa musika ug sinultihan, hibal-i kung unsa ang makaapekto sa kalidad sa gipasa nga tingog ug latency, pagkat-on unsaon pagkolekta ug pag-decode sa impormasyon mahitungod sa gisuportahan nga mga codec ug uban pang device. mga kapabilidad.

TL; DR:

  • SBC - normal nga codec
  • Ang mga headphone adunay kaugalingon nga equalizer ug post-processing alang sa matag codec nga gilain
  • Ang aptX dili sama ka maayo sa gi-advertise
  • Ang LDAC mao ang marketing bullshit
  • Ang kalidad sa tawag dili gihapon maayo
  • Mahimo nimong i-embed ang mga C audio encoder sa imong browser pinaagi sa pag-compile niini sa WebAssembly pinaagi sa emscripten, ug dili kaayo sila mohinay.

Musika pinaagi sa Bluetooth

Ang functional component sa Bluetooth gitino pinaagi sa mga profile - mga detalye sa piho nga mga gimbuhaton. Ang Bluetooth music streaming naggamit ug taas nga kalidad nga A2DP unidirectional audio transmission profile. Ang A2DP nga sumbanan gisagop sa 2003 ug wala kaayo mausab sukad niadto.
Sulod sa profile, 1 ka mandatory nga codec sa ubos nga computational complexity SBC, nga gimugna alang sa Bluetooth, ug 3 ka dugang ang gi-standardize. Posible usab nga gamiton ang dili dokumentado nga mga codec sa imong kaugalingon nga pagpatuman.

Hangtod sa Hunyo 2019 kami sa xkcd komiks nga adunay 14 ka A2DP codec:

  • SBC ← gi-standardize sa A2DP, gisuportahan sa tanan nga mga aparato
  • MPEG-1/2 Layer 1/2/3 ← estandard sa A2DP: ilado kaayo MP3, gigamit sa digital TV MP2, ug wala mailhi MP1
  • MPEG-2/4 AAC ← estandard sa A2DP
  • ATTRAC ← daan nga codec gikan sa Sony, gi-standardize sa A2DP
  • LDAC ← bag-ong codec gikan sa Sony
  • aptX ← codec gikan sa 1988
  • aptXHD ← parehas sa aptX, adunay lainlain nga kapilian sa pag-encode
  • aptX Ubos nga Latency ← hingpit nga lahi nga codec, walay software nga pagpatuman
  • aptX Adaptive ← laing codec gikan sa Qualcomm
  • FastStream ← pseudo codec, bidirectional nga pagbag-o sa SBC
  • HWA LHDC ← bag-ong codec gikan sa Huawei
  • Samsung HD ← gisuportahan sa 2 mga aparato
  • Samsung Scalable ← gisuportahan sa 2 mga aparato
  • Samsung UHQ-BT ← gisuportahan sa 3 mga aparato

Ngano nga kinahanglan namon ang mga codec, mangutana ka, kung ang Bluetooth adunay EDR, nga nagtugot kanimo sa pagbalhin sa datos sa katulin nga 2 ug 3 Mbit / s, ug alang sa wala ma-compress nga duha ka channel nga 16-bit PCM, igo na ang 1.4 Mbit / s?

Pagbalhin sa datos pinaagi sa Bluetooth

Adunay duha ka matang sa pagbalhin sa data sa Bluetooth: Asynchronous Connection Less (ACL) alang sa asynchronous nga pagbalhin nga walay koneksyon nga pagtukod, ug Synchronous Connection Oriented (SCO), alang sa synchronous nga pagbalhin nga adunay preliminary connection negotiation.
Ang transmission gihimo gamit ang time division scheme ug pagpili sa transmission channel alang sa matag pakete nga gilain (Frequency-Hop/Time-Division-Duplex, FH/TDD), diin ang oras gibahin ngadto sa 625-microsecond intervals nga gitawag ug slots. Ang usa sa mga himan nagpasa sa parehas nga numero nga mga slot, ang lain sa odd-numbered nga mga slot. Ang gipasa nga packet mahimong mag-okupar sa 1, 3 o 5 nga mga slots, depende sa gidak-on sa datos ug sa set nga matang sa transmission, sa kini nga kaso, ang transmission sa usa ka device gihimo sa even ug odd nga mga slots hangtud sa katapusan sa transmission. Sa kinatibuk-an, hangtod sa 1600 ka mga pakete ang mahimong madawat ug ipadala matag segundo, kung ang matag usa kanila nag-okupar sa 1 nga slot, ug ang duha nga mga aparato nagpadala ug nakadawat usa ka butang nga wala’y hunong.

Ang 2 ug 3 Mbit/s para sa EDR, nga makita sa mga pahibalo ug sa Bluetooth nga website, mao ang pinakataas nga channel transfer rate sa tanang data sa kinatibuk-an (lakip ang teknikal nga mga header sa tanang protocol diin ang data kinahanglang i-encapsulated), sa duha ka direksyon. dungan. Ang aktuwal nga gikusgon sa pagbalhin sa datos magkalahi kaayo.

Aron mapadala ang musika, gigamit ang usa ka asynchronous nga pamaagi, hapit kanunay nga gigamit ang mga pakete sama sa 2-DH5 ug 3-DH5, nga nagdala sa labing kadaghan nga datos sa EDR mode nga 2 Mbit / s ug 3 Mbit / s, matag usa, ug nag-okupar sa 5 ka oras. -pagpakigbahin slots.

Eskematiko nga representasyon sa transmission gamit ang 5 ka slots sa usa ka device ug 1 slot sa lain (DH5/DH1):
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Tungod sa prinsipyo sa time division sa mga airwaves, napugos kami sa paghulat sa usa ka 625-microsecond time slot pagkahuman sa pagpadala sa usa ka pakete kung ang ikaduha nga aparato wala magpadala bisan unsa sa amon o nagpadala usa ka gamay nga pakete, ug daghang oras kung ang ikaduha nga aparato nagpadala. sa dagkong mga pakete. Kung labaw pa sa usa ka aparato ang konektado sa telepono (pananglitan, mga headphone, relo ug usa ka fitness bracelet), nan ang oras sa pagbalhin gibahin sa tanan nila.

Ang panginahanglan sa pag-encapsulate sa audio sa espesyal nga transport protocol L2CAP ug AVDTP nagkinahanglan 16 bytes gikan sa posible nga maximum nga gidaghanon sa transmitted audio payload.

Uri sa pakete
Gidaghanon sa mga slots
Max. gidaghanon sa mga byte sa pakete
Max. gidaghanon sa mga byte sa A2DP payload
Max. A2DP payload 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

Ang 1414 ug 1429 kbps siguradong dili igo aron ipadala ang wala ma-compress nga audio sa tinuod nga mga kondisyon, nga adunay saba nga 2.4 GHz nga sakup ug ang panginahanglan sa pagpadala sa datos sa serbisyo. Ang EDR 3 Mbit/s nangayo sa transmission power ug kasaba sa hangin, busa, bisan sa 3-DH5 mode, ang komportable nga PCM transmission imposible, adunay kanunay nga mga short-term interruptions, ug ang tanan molihok lamang sa layo nga usa duha ka metros.
Sa praktis, bisan ang 990 kbit/s audio stream (LDAC 990 kbit/s) lisod ipadala.

Balik ta sa mga codec.

SBC

Codec gikinahanglan alang sa tanang mga himan nga nagsuporta sa A2DP standard. Ang labing kaayo ug labing daotan nga codec sa parehas nga oras.

Kadaghanon sa sampling
Kapasidad
Bitrate
Suporta sa pag-encode
Suporta sa pag-decode

16, 32, 44.1, 48 kHz
16 gamay
10-1500 kbps
Tanang device
Tanang device

Ang SBC usa ka yano ug paspas nga komputasyon nga codec, nga adunay usa ka primitive nga psychoacoustic nga modelo (pag-mask lamang sa mga hilom nga tunog ang gigamit), gamit ang adaptive pulse code modulation (APCM).
Ang detalye sa A2DP nagrekomendar sa duha ka profile para gamiton: Tunga nga Kalidad ug Taas nga Kalidad.
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Ang codec adunay daghang mga setting nga nagtugot kanimo nga makontrol ang paglangan sa algorithm, ang gidaghanon sa mga sample sa usa ka bloke, ang algorithm sa pag-apod-apod sa gamay, apan halos bisan diin gigamit ang parehas nga mga parameter nga girekomenda sa detalye: Joint Stereo, 8 frequency band, 16 block sa usa ka audio frame, Loudness bit distribution method.
Gisuportahan sa SBC ang dinamikong pagbag-o sa parameter sa Bitpool, nga direktang makaapekto sa bitrate. Kung ang mga airwave nabara, ang mga pakete nawala, o ang mga himan nahimutang sa layo nga mga distansya, ang tinubdan sa audio mahimong makapakunhod sa Bitpool hangtud nga ang komunikasyon mobalik sa normal.

Kadaghanan sa mga tiggama sa headphone nagtakda sa pinakataas nga bili sa Bitpool ngadto sa 53, nga naglimite sa bitrate ngadto sa 328 kilobits kada segundo kon gamiton ang girekomendar nga profile.
Bisan kung ang tiggama sa headphone nagtakda sa labing kataas nga kantidad sa Bitpool nga labaw sa 53 (ang ingon nga mga modelo makit-an, pananglitan: Beats SoloΒ³, JBL Everest Elite 750NC, Apple AirPods, nakit-an usab sa pipila nga mga tigdawat ug mga yunit sa ulo sa awto), nan ang kadaghanan sa OS dili motugot. ang paggamit sa dugang nga bitrates tungod sa pagbutang sa internal nga limitasyon sa bili sa Bluetooth stacks.
Dugang pa, ang pipila nga mga tiggama nagtakda sa labing kadaghan nga kantidad sa Bitpool nga mubu alang sa pipila nga mga aparato. Pananglitan, alang sa Bluedio T kini 39, alang sa Samsung Gear IconX kini 37, nga naghatag dili maayo nga kalidad sa tunog.

Ang mga artipisyal nga pagdili sa bahin sa mga nag-develop sa Bluetooth stacks lagmit nga mitungha tungod sa dili pagkaangay sa pipila nga mga aparato nga adunay daghang mga kantidad sa Bitpool o dili tipikal nga mga profile, bisan kung gireport nila ang suporta alang kanila, ug dili igo nga pagsulay sa panahon sa sertipikasyon. Mas sayon ​​alang sa mga tagsulat sa Bluetooth stacks nga limitahan ang ilang mga kaugalingon sa pag-uyon sa girekomendar nga profile, kay sa paghimo sa mga database sa mga sayop nga mga himan (bisan tuod karon gibuhat nila kini alang sa uban nga sayop nga nagtrabaho function).

Ang SBC dinamikong naggahin sa mga tipik sa quantization sa mga frequency band sa ubos hangtod sa taas nga sukaranan, nga adunay lainlaing mga gibug-aton. Kung ang tanan nga bitrate gigamit alang sa ubos ug tunga nga mga frequency, ang taas nga mga frequency "maputol" (adunay kahilom na hinuon).

Pananglitan SBC 328 kbps. Sa ibabaw mao ang orihinal, sa ubos mao ang SBC, matag karon ug unya sa pagbalhin tali sa mga track. Ang audio sa video file naggamit sa FLAC lossless compression codec. Ang paggamit sa FLAC sa usa ka mp4 nga sudlanan dili opisyal nga gi-standardize, mao nga dili garantiya nga ang imong browser magdula niini, apan kini kinahanglan nga magamit sa pinakabag-o nga bersyon sa desktop Chrome ug Firefox. Kung wala kay tingog, mahimo nimong i-download ang file ug ablihan kini sa bug-os nga video player.
ZZ Top - Tawo nga Hait nga Nagsinina

Ang spectrogram nagpakita sa gutlo sa pagbalhin: Ang SBC matag karon ug unya nagputol sa hilom nga mga tingog nga labaw sa 17.5 kHz, ug wala maggahin ug bisan unsa nga mga bit para sa banda nga labaw sa 20 kHz. Ang bug-os nga spectrogram magamit pinaagi sa pag-klik (1.7 MB).
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Wala koy nadungog nga kalainan tali sa orihinal ug SBC niini nga track.

Atong kuhaon ang usa ka butang nga mas bag-o ug i-simulate ang audio nga makuha gamit ang Samsung Gear IconX headphones nga adunay Bitpool 37 (ibabaw - ang orihinal nga signal, sa ubos - SBC 239 kbps, audio sa FLAC).
Walay Hunahuna nga Pagpatuyang sa Kaugalingon - Saksi

Nakadungog ko nga nagkisikisi, dili kaayo stereo effect ug usa ka dili maayo nga "clunking" nga tunog sa taas nga frequency sa mga vocal.

Bisan tuod ang SBC usa ka flexible kaayo nga codec, mahimo kining i-configure alang sa ubos nga latency, naghatag og maayo nga kalidad sa audio sa taas nga bitrates (452+ kbps) ug maayo kaayo alang sa kadaghanan sa mga tawo sa standard High Quality (328 kbps), tungod sa kamatuoran nga kana ang A2DP nga sumbanan wala magtino sa mga fixed profile (apan naghatag lamang og mga rekomendasyon), ang mga stack developers nagtakda og artipisyal nga mga pagdili sa Bitpool, ang mga parameter sa gipasa nga audio wala gipakita sa user interface, ug ang mga tiggama sa headphone libre sa pagtakda sa ilang kaugalingong mga setting ug dili gayud. nagpakita sa bili sa Bitpool sa teknikal nga mga detalye sa produkto, ang codec nahimong bantogan tungod sa ubos nga kalidad sa tingog, bisan tuod kini dili usa ka problema sa codec sa ingon.
Ang parameter sa Bitpool direktang makaapekto sa bitrate sulod lamang sa usa ka profile. Ang parehas nga Bitpool 53 nga kantidad makahatag sa parehas nga bitrate nga 328 kbps nga adunay girekomenda nga High Quality profile, ug 1212 kbps nga adunay Dual Channel ug 4 frequency band, mao nga ang mga tagsulat sa OS, dugang sa mga pagdili sa Bitpool, nagtakda ug limitasyon ug sa Bitrate. Sa akong nakita, kini nga sitwasyon mitumaw tungod sa usa ka sayup sa A2DP standard: gikinahanglan nga makigsabot sa bitrate, dili Bitpool.

Talaan sa suporta alang sa mga kapabilidad sa SBC sa lainlaing OS:

OS
Gisuportahan nga sampling rates
Limitahan ang max. Bitpool
Limitahan ang max. Bitrate
Kasagaran nga Bitrate
Bitpool dinamikong pag-adjust

Windows 10
44.1 ΠΊΠ“Ρ†
53
512 kbps
328 kbps
βœ“*

Linux (BlueZ + PulseAudio)
16, 32, 44.1, 48 kHz
64 (para sa umaabot nga mga koneksyon), 53 (alang sa mga outgoing nga koneksyon)
Wala’y utlanan
328 kbps
βœ“*

macOS High Sierra
44.1 ΠΊΠ“Ρ†
64, default 53***
Wala mailhi
328 kbps
βœ—

Ang Android 4.4-9
44.1/48 kHz**
53
328 kbps
328 kbps
βœ—

Ang Android 4.1-4.3.1
44.1, 48 kHz**
53
229 kbps
229 kbps
βœ—

Blackberry OS 10
48 ΠΊΠ“Ρ†
53
Wala’y utlanan
328 kbps
βœ—

* Ang Bitpool mikunhod lamang, apan dili awtomatikong motaas, kung ang mga kondisyon sa pagbalhin molambo. Aron mapasig-uli ang Bitpool kinahanglan nimo nga hunongon ang playback, paghulat pipila ka segundo ug sugdi pag-usab ang audio.
** Ang default nga kantidad nagdepende sa mga setting sa stack nga gitakda sa pag-compile sa firmware. Sa Android 8/8.1 ang frequency kay 44.1 kHz o 48 kHz lang, depende sa mga setting sa panahon sa compilation, sa ubang version 44.1 kHz ug 48 kHz gisuportahan dungan.
*** Ang bili sa Bitpool mahimong madugangan sa programa sa Bluetooth Explorer.

aptX ug aptX HD

Ang aptX usa ka yano ug paspas nga komputasyon nga codec, nga wala’y psychoacoustics, gamit ang adaptive differential pulse code modulation (ADPCM). Nagpakita mga 1988 (petsa sa pag-file patente pinetsahan og Pebrero 1988), sa wala pa ang Bluetooth, gigamit kini ilabina sa propesyonal nga wireless audio equipment. Sa pagkakaron gipanag-iya sa Qualcomm, nanginahanglan ug licensing ug royalties. Sukad sa 2014: $6000 kausa ug β‰ˆ$1 kada device, para sa mga batch nga hangtod sa 10000 ka device (tinubdan, p. 16).
Ang aptX ug aptX HD parehas nga codec, nga adunay lainlaing mga profile sa pag-encode.

Ang codec adunay usa ra ka parameter - pagpili sa frequency sa sampling. Adunay, bisan pa, usa ka pagpili sa numero / mode sa mga channel, apan sa tanan nga mga aparato nga nahibal-an nako (70+ ka piraso) Stereo ra ang gisuportahan.

Codec
Kadaghanon sa sampling
Kapasidad
Bitrate
Suporta sa pag-encode
Suporta sa pag-decode

aptX
16, 32, 44.1, 48 kHz
16 gamay
128 / 256 / 352 / 384 kbps (depende sa sampling rate)
Windows 10 (desktop ug mobile), macOS, Android 4.4+/7*, Blackberry OS 10
Lapad nga mga audio device (hardware)

* Ang mga bersyon hangtod sa 7 nanginahanglan pagbag-o sa Bluetooth stack. Ang codec gisuportahan lamang kung ang tiggama sa Android device adunay lisensya sa codec gikan sa Qualcomm (kung ang OS adunay mga librarya sa pag-encode).

Gibahin sa aptX ang audio ngadto sa 4 ka frequency band ug gi-quantize kini sa parehas nga gidaghanon sa mga bits kanunay: 8 bits para sa 0-5.5 kHz, 4 bits para sa 5.5-11 kHz, 2 bits para sa 11-16.5 kHz, 2 bits para sa 16.5-22 kHz ( mga numero alang sa sampling rate 44.1 kHz).

Pananglitan sa aptX audio (sa ibabaw - ang orihinal nga signal, sa ubos - aptX, spectrograms sa wala nga mga channel, tingog sa FLAC):

Ang taas nahimong mas pula og gamay, apan dili nimo madungog ang kalainan.

Tungod sa pirmi nga pag-apod-apod sa mga tipik sa quantization, ang codec dili "makabalhin sa mga tipik" ngadto sa mga frequency nga labing nagkinahanglan niini. Dili sama sa SBC, ang aptX dili "magputol" sa mga frequency, apan magdugang sa quantization noise ngadto kanila, nga makunhuran ang dinamikong hanay sa audio.

Dili angay isipon nga ang paggamit, pananglitan, ang 2 bits kada banda makapakunhod sa dinamikong range ngadto sa 12 dB: Ang ADPCM nagtugot sa hangtod sa 96 dB nga dinamikong range bisan pa sa paggamit sa 2 quantization bits, apan alang lamang sa usa ka signal.
Ang ADPCM nagtipig sa numerical nga kalainan tali sa kasamtangan nga sample ug sa sunod nga sample, imbes nga tipigan ang hingpit nga bili sama sa PCM. Gitugotan ka niini nga makunhuran ang mga kinahanglanon alang sa gidaghanon sa mga piraso nga gikinahanglan aron tipigan ang parehas (walay pagkawala) o hapit parehas (nga adunay gamay nga sayup sa paglibot) nga kasayuran. Aron makunhuran ang mga sayup sa rounding, gigamit ang mga coefficient table.
Sa paghimo sa codec, gikalkula sa mga tagsulat ang mga coefficient sa ADPCM sa usa ka set sa mga audio file sa musika. Ang mas duol sa audio signal mao ang set sa musika diin ang mga lamesa gitukod, ang dili kaayo quantization errors (saba) aptX nagmugna.

Tungod niini, ang sintetikong mga pagsulay kanunay magpatunghag mas grabe nga mga resulta kaysa musika. Naghimo ako usa ka espesyal nga sintetikong pananglitan diin ang aptX nagpakita sa dili maayo nga mga sangputanan - usa ka sine wave nga adunay frequency nga 12.4 kHz (ibabaw - ang orihinal nga signal, sa ubos - aptX. Audio sa FLAC. Ipaubos ang volume!):

Spectrum graph:
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Ang mga kasaba klaro nga madungog.

Bisan pa, kung makamugna ka usa ka sine wave nga adunay gamay nga amplitude aron kini mas hilom, ang kasaba mahimo usab nga hilom, nga nagpakita sa usa ka halapad nga dinamikong range:

Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Aron madungog ang kalainan tali sa orihinal nga track sa musika ug sa gi-compress, mahimo nimong balit-aron ang usa sa mga signal ug idugang ang channel sa mga track pinaagi sa channel. Kini nga pamaagi, sa kinatibuk-an, dili husto, ug dili makahatag og maayong mga resulta sa mas komplikado nga mga codec, apan ilabi na alang sa ADPCM kini angayan.
Ang kalainan tali sa orihinal ug aptX
Ang root mean square difference sa mga signal anaa sa lebel nga -37.4 dB, nga dili kaayo alang sa maong compressed music.

aptXHD

Ang aptX HD dili usa ka standalone nga codec - kini usa ka gipaayo nga profile sa pag-encode sa aptX codec. Ang mga pagbag-o nakaapekto sa gidaghanon sa mga bits nga gigahin alang sa pag-encode sa frequency range: 10 bits para sa 0-5.5 kHz, 6 bits para sa 5.5-11 kHz, 4 bits para sa 11-16.5 kHz, 4 bits para sa 16.5-22 kHz (digit para sa 44.1 kHz) .

Codec
Kadaghanon sa sampling
Kapasidad
Bitrate
Suporta sa pag-encode
Suporta sa pag-decode

aptXHD
16, 32, 44.1, 48 kHz
24 ka gamay
192 / 384 / 529 / 576 kbps (depende sa sampling rate)
Android 8++
Pipila ka mga audio device (hardware)

* Ang mga bersyon hangtod sa 7 nanginahanglan pagbag-o sa Bluetooth stack. Ang codec gisuportahan lamang kung ang tiggama sa Android device adunay lisensya sa codec gikan sa Qualcomm (kung ang OS adunay mga librarya sa pag-encode).

Dili kaayo komon kay sa aptX: dayag nga nanginahanglan bulag nga lisensya gikan sa Qualcomm, ug lahi nga bayad sa lisensya.

Atong sublion ang pananglitan sa usa ka sine wave sa 12.4 kHz:
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Mas maayo kay sa aptX, pero saba gihapon.

aptX Ubos nga Latency

Usa ka codec gikan sa Qualcomm nga walay bisan unsa nga komon sa standard aptX ug aptX HD, sa paghukom sa limitado nga impormasyon gikan sa mga tawo nga nalambigit sa pagpalambo niini. Gidisenyo alang sa interactive nga low-latency nga pagpasa sa audio (mga salida, mga dula), diin ang paglangan sa audio dili ma-adjust sa software. Wala'y nahibal-an nga pagpatuman sa software sa mga encoder ug decoder; sila gisuportahan lamang sa mga transmitter, receiver, headphone ug speaker, apan dili sa mga smartphone ug kompyuter.

Kadaghanon sa sampling
Bitrate
Suporta sa pag-encode
Suporta sa pag-decode

44.1 ΠΊΠ“Ρ†
276/420 kbps
Ang ubang mga transmiter (hardware)
Pipila ka mga audio device (hardware)

AAC

Ang AAC, o Advanced Audio Coding, usa ka computationally complex nga codec nga adunay seryoso nga psychoacoustic nga modelo. Kaylap nga gigamit alang sa audio sa Internet, ikaduha sa pagkapopular human sa MP3. Nagkinahanglan ug lisensya ug royalties: $15000 kausa (o $1000 para sa mga kompanya nga ubos sa 15 ka empleyado) + $0.98 para sa unang 500000 ka device (tinubdan).
Ang codec gi-estandard sa sulod sa MPEG-2 ug MPEG-4 nga mga detalye, ug sukwahi sa kasagarang sayop nga pagsabot, dili kini iya sa Apple.

Kadaghanon sa sampling
Bitrate
Suporta sa pag-encode
Suporta sa pag-decode

8 - 96 kHz
8 - 576 kbps (para sa stereo), 256 - 320 kbps (kasagaran para sa Bluetooth)
macOS, Android 7++, iOS
Lapad nga mga audio device (hardware)

* lamang sa mga himan kansang mga tiggama mibayad sa mga bayronon sa paglilisensya

Gigamit sa iOS ug macOS ang labing kaayo nga AAC encoder sa Apple karon aron mahatagan ang labing taas nga posible nga kalidad sa audio. Gigamit sa Android ang ikaduha nga pinakataas nga kalidad nga Fraunhofer FDK AAC encoder, apan mahimong mogamit sa lainlaing hardware nga gitukod sa plataporma (SoC) nga wala mailhi nga kalidad sa pag-encode. Sumala sa bag-o nga mga pagsulay sa SoundGuys website, ang kalidad sa pag-encode sa AAC sa lain-laing mga Android phone lahi kaayo:
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Kadaghanan sa mga wireless audio device adunay pinakataas nga bitrate nga 320 kbps para sa AAC, ang uban nagsuporta lamang sa 256 kbps. Ang ubang mga bitrate talagsa ra.
Naghatag ang AAC og maayo kaayo nga kalidad sa 320 ug 256 kbps bitrates, apan gipailalom sa pagkawala sa sunud-sunod nga pag-encode sa na-compress nga sulod, bisan pa, lisud madungog ang bisan unsang mga kalainan sa orihinal sa iOS sa usa ka bitrate nga 256 kbps bisan sa daghang mga sunud-sunod nga pag-encode; sa usa ka pag-encode, pananglitan, MP3 320 kbps hangtod sa AAC 256 kbps, ang mga pagkawala mahimong mapasagdan.
Sama sa ubang mga Bluetooth codec, ang bisan unsang musika una nga gi-decode ug dayon gi-encode sa codec. Kung maminaw sa musika sa format nga AAC, kini una nga gi-decode sa OS, dayon gi-encode sa AAC pag-usab alang sa transmission pinaagi sa Bluetooth. Gikinahanglan kini alang sa pagsagol sa daghang mga audio stream, sama sa musika ug bag-ong mga abiso sa mensahe. Ang iOS dili eksepsiyon. Sa Internet makit-an nimo ang daghang mga pahayag nga sa iOS nga musika sa format nga AAC dili ma-transcode kung ipadala pinaagi sa Bluetooth, nga dili tinuod.

MP1/2/3

Ang mga codec sa MPEG-1/2 Part 3 nga pamilya naglangkob sa ilado ug kaylap nga gigamit nga MP3, ang dili kaayo komon nga MP2 (gigamit kasagaran sa digital TV ug radyo), ug ang hingpit nga wala mailhi nga MP1.

Ang daan nga MP1 ug MP2 nga mga codec wala gyud gisuportahan: Wala akoy nakit-an nga mga headphone o Bluetooth stack nga mag-encode o mag-decode niini.
Ang MP3 decoding gisuportahan sa pipila ka mga headphone, apan ang pag-encode dili suportado sa bisan unsang modernong operating system stack. Kini daw nga ang ikatulo nga-partido BlueSoleil stack alang sa Windows mahimong encode sa MP3 kon kamo sa kamut-usab sa configuration file, apan alang kanako instalar kini modala ngadto sa BSoD sa Windows 10. Konklusyon - ang codec sa pagkatinuod dili magamit alang sa Bluetooth audio.
Kaniadto, sa 2006-2008, sa wala pa ang pagkaylap sa A2DP standard sa mga himan, ang mga tawo naminaw sa MP3 nga musika sa Nokia BH-501 headset pinaagi sa MSI BluePlayer nga programa, nga anaa sa Symbian ug Windows Mobile. Nianang panahona, ang OS nga arkitektura sa mga smartphone nagtugot sa pag-access sa daghang ubos nga lebel nga mga gimbuhaton, ug sa Windows Mobile posible pa gani nga mag-instalar sa mga third-party nga Bluetooth stacks.

Ang katapusang patente sa MP3 codec na-expire na, ang paggamit sa codec wala magkinahanglan ug licensing fees sukad niadtong Abril 23, 2017.

Kung ang pinakadugay nga nagpadagan nga patent nga gihisgutan sa nahisgutan nga mga pakisayran gikuha ingon usa ka sukod, nan ang teknolohiya sa MP3 nahimong wala’y patente sa Estados Unidos kaniadtong Abril 16, 2017 sa dihang ang US Patent 6,009,399, nga gihuptan ug gidumala sa Technicolor, natapos.

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

Kadaghanon sa sampling
Bitrate
Suporta sa pag-encode
Suporta sa pag-decode

16 - 48 kHz
8 - 320 kbps
Wala gisuportahan bisan asa
Pipila ka mga audio device (hardware)

LDAC

Usa ka bag-o ug aktibo nga gipasiugda nga "Hi-Res" nga codec gikan sa Sony, nga nagsuporta sa sampling rate hangtod sa 96 kHz ug 24-bit bitrate, nga adunay bitrates hangtod sa 990 kbps. Gi-anunsyo kini isip usa ka audiophile codec, isip usa ka puli sa kasamtangan nga Bluetooth codecs. Kini adunay function sa adaptive bitrate adjustment, depende sa kahimtang sa sibya sa radyo.

LDAC encoder (libldac) gilakip sa standard nga pakete sa Android, mao nga ang pag-encode gisuportahan sa bisan unsang Android smartphone sugod sa OS version 8. Wala’y libre nga magamit nga software decoder, ang detalye sa codec dili magamit sa publiko, bisan pa, sa una nga pagtan-aw sa encoder, ang internal nga istruktura sa codec parehas sa ATRAC9 - Ang codec sa Sony nga gigamit sa PlayStation 4 ug Vita: parehong nagtrabaho sa frequency domain, naggamit ug giusab nga discrete cosine transform (MDCT) ug compression gamit ang Huffman algorithm.

Ang suporta sa LDAC gihatag halos eksklusibo sa mga headphone gikan sa Sony. Ang abilidad sa pag-decode sa LDAC usahay makita sa mga headphone ug DAC gikan sa ubang mga tiggama, apan panagsa ra.

Kadaghanon sa sampling
Bitrate
Suporta sa pag-encode
Suporta sa pag-decode

44.1 - 96 kHz
303/606/909 kbit/s (alang sa 44.1 ug 88.2 kHz), 330/660/990 kbit/s (alang sa 48 ug 96 kHz)
Android 8 +
Ang ubang mga headphone sa Sony ug pipila ka mga himan gikan sa ubang mga tiggama (hardware)

Ang pagpamaligya sa LDAC isip usa ka Hi-Res nga codec makadaot sa teknikal nga bahin niini: binuang ang paggasto sa bitrate sa pagpasa sa mga frequency nga dili madungog sa dalunggan sa tawo ug pagdugang sa gamay nga giladmon, samtang dili igo ang pagpadala sa kalidad sa CD (44.1/16) nga walay pagkawala . Maayo na lang, ang codec adunay duha ka operating mode: CD audio transmission ug Hi-Res audio transmission. Sa unang kaso, 44.1 kHz/16 bits lang ang gipasa sa hangin.

Tungod kay ang usa ka software nga LDAC decoder dili libre nga magamit, imposible nga sulayan ang codec nga wala’y dugang nga mga aparato nga nag-decode sa LDAC. Sumala sa mga resulta sa pagsulay sa LDAC sa usa ka DAC nga adunay suporta niini, nga gikonektar sa mga inhenyero sa SoundGuys.com pinaagi sa digital output ug girekord ang output nga tunog sa mga signal sa pagsulay, ang LDAC 660 ug 990 kbps sa mode nga kalidad sa CD naghatag usa ka signal-to- mas maayo nga ratio sa kasaba kay sa aptX HD.

Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato
Source: www.soundguys.com/ldac-ultimate-bluetooth-guide-20026

Gisuportahan usab sa LDAC ang mga dinamikong bitrates sa gawas sa natukod nga mga profile - gikan sa 138 kbps hangtod 990 kbps, apan sa akong nahibal-an, gigamit ra sa Android ang mga standardized nga profile 303/606/909 ug 330/660/990 kbps.

Ang ubang mga codec

Ang ubang mga A2DP codec dili kaylap nga gigamit. Ang ilang suporta halos wala o magamit lamang sa pipila ka mga modelo sa mga headphone ug smartphone.
Ang ATRAC codec nga gi-standardize sa A2DP wala pa gigamit isip Bluetooth codec bisan sa Sony mismo, Samsung HD, Samsung Scalable ug Samsung UHQ-BT nga mga codec adunay limitado nga suporta gikan sa pagpadala ug pagdawat sa mga himan, ug ang HWA LHDC bag-o ra ug gisuportahan lamang ang tulo (?) mga himan.

Suporta sa codec alang sa mga audio device

Dili tanan nga mga tiggama nagpatik sa tukma nga kasayuran bahin sa mga codec nga gisuportahan sa pipila nga mga wireless headphone, speaker, tigdawat o transmitter. Usahay mahitabo nga ang suporta alang sa usa ka codec alang lamang sa pagpasa, apan dili alang sa pagdawat (may kalabutan alang sa hiniusa nga mga transmitters-receiver), bisan kung ang tiggama yano nga nagpahayag nga "suporta", nga wala’y mga nota (Akong gihunahuna nga ang lahi nga lisensya sa mga encoder ug decoder sa pipila ang mga codec ang mabasol niini). Sa labing barato nga mga aparato, mahimo nga dili nimo makit-an ang gipahayag nga suporta sa aptX.

Ikasubo, ang mga interface sa kadaghanan sa mga operating system wala magpakita sa codec nga gigamit bisan asa. Ang kasayuran bahin niini magamit ra sa Android, sugod sa bersyon 8, ug macOS. Bisan pa, bisan sa kini nga mga OS, ang mga codec ra nga gisuportahan sa parehas nga telepono / kompyuter ug headphone ang ipakita.

Giunsa nimo mahibal-an kung unsang mga codec ang gisuportahan sa imong aparato? Irekord ug analisa ang basura sa trapiko nga adunay mga parameter sa negosasyon sa A2DP!
Mahimo kini sa Linux, macOS ug Android. Sa Linux mahimo nimong gamiton ang Wireshark o hcidump, sa macOS mahimo nimong gamiton ang Bluetooth Explorer, ug sa Android mahimo nimong gamiton ang standard nga Bluetooth HCI dump saving function, nga anaa sa mga himan sa developer. Makadawat ka og dump sa btsnoop format, nga mahimong i-load sa Wireshark analyzer.
Pagtagad: ang saktong dump makuha lang pinaagi sa pagkonektar gikan sa imong telepono/computer ngadto sa mga headphone/speaker (bisan unsa pa kini kataw-anan)! Ang mga headphone mahimo nga independente nga magtukod usa ka koneksyon sa telepono, kung diin mangayo sila usa ka lista sa mga codec gikan sa telepono, ug dili vice versa. Aron masiguro nga ang husto nga dump marekord, una nga i-unpair ang aparato ug dayon ipares ang imong telepono sa mga headphone samtang girekord ang dump.

Gamita ang mosunod nga display filter aron masala ang walay kalabotan nga trapiko:

btavdtp.signal_id

Ingon usa ka sangputanan, kinahanglan nimo nga makita ang usa ka butang nga susama niini:
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Mahimo nimong i-klik ang matag butang sa GetCapabilities nga sugo aron makita ang detalyado nga mga kinaiya sa codec.
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Ang Wireshark wala mahibalo sa tanang codec identifiers, mao nga ang ubang mga codec kinahanglang i-decrypted sa mano-mano, tan-awa ang identifier table sa ubos:

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

Aron dili manu-mano ang pag-analisar sa mga dump, naghimo ako usa ka serbisyo nga awtomatikong mag-analisar sa tanan: btcodecs.valdikss.org.ru

Pagtandi sa mga codec. Hain nga codec ang mas maayo?

Ang matag codec adunay kaugalingon nga mga bentaha ug disbentaha.
Ang aptX ug aptX HD naggamit ug mga hard-coded nga profile nga dili mausab nga walay pag-usab sa encoder ug decoder. Ang tiggama sa telepono o ang tiggama sa headphone dili makausab sa bitrate o aptX nga mga hinungdan sa pag-encode. Ang tag-iya sa codec, Qualcomm, naghatag usa ka reference encoder sa porma sa usa ka librarya. Kini nga mga kamatuoran mao ang kusog sa aptX - nahibal-an nimo daan kung unsang kalidad sa tunog ang imong makuha, nga wala’y bisan unsang "apan".

Ang SBC, sa kasukwahi, adunay daghang mga parameter nga ma-configure, dinamikong bitrate (ang encoder mahimong makunhuran ang parameter sa bitpool kung ang mga airwaves busy), ug wala’y mga hard-coded nga profile, ang girekomenda lamang nga "medium nga kalidad" ug "taas nga kalidad" nga gidugang sa detalye sa A2DP sa 2003 nga tuig. Ang "taas nga kalidad" dili na ingon ka taas sa mga sumbanan karon, ug kadaghanan sa mga Bluetooth stack wala magtugot kanimo sa paggamit sa mga parameter nga mas maayo kaysa sa "taas nga kalidad" nga profile, bisan kung wala’y mga teknikal nga pagdili alang niini.
Ang Bluetooth SIG walay reperensiya nga SBC encoder isip librarya, ug ang mga tiggama mismo ang nagpatuman niini.
Kini ang mga kahuyang sa SBC - dili gyud klaro kung unsang kalidad sa tunog ang mapaabut gikan sa usa ka partikular nga aparato. Ang SBC makahimo sa ubos ug taas kaayo nga kalidad nga audio, apan ang naulahi dili makab-ot nga walay pag-disable o pag-bypass sa artipisyal nga mga limitasyon sa Bluetooth stacks.

Ang sitwasyon sa AAC dili klaro: sa usa ka bahin, ang teoretikal nga codec kinahanglan nga makahimo og kalidad nga dili mailhan gikan sa orihinal, apan sa praktis, sa paghukom sa mga pagsulay sa SoundGuys laboratory sa lain-laing mga Android device, wala kini gikumpirma. Lagmit, ang sayup anaa sa ubos nga kalidad nga hardware audio encoders nga gitukod sa nagkalain-laing mga chipset sa telepono. Makatarunganon nga gamiton ang AAC sa mga aparato sa Apple, ug sa Android aron limitahan kini sa aptX ug LDAC.

Ang hardware nga nagsuporta sa mga alternatibong codec lagmit nga mas taas ang kalidad, tungod lang kay alang sa barato kaayo, ubos nga kalidad nga mga himan, dili makatarunganon ang pagbayad sa mga bayronon sa paglilisensya aron magamit ang mga codec. Sa akong mga pagsulay, ang SBC maayo kaayo sa kalidad nga kagamitan.

Naghimo ako usa ka serbisyo sa web nga nag-encode sa audio sa SBC, aptX ug aptX HD sa tinuud nga oras, diha mismo sa browser. Uban niini, mahimo nimong sulayan kini nga mga audio codec nga wala gyud magpadala sa audio pinaagi sa Bluetooth, sa bisan unsang mga wired headphone, speaker, ug imong paborito nga musika, ug usba usab ang mga parameter sa pag-encode direkta samtang nagdula og audio:
btcodecs.valdikss.org.ru/sbc-encoder
Gigamit sa serbisyo ang SBC coding libraries gikan sa proyekto sa BlueZ ug libopenaptx gikan sa ffmpeg, nga gihugpong sa WebAssembly ug JavaScript gikan sa C, pinaagi sa emscripten, aron modagan sa browser. Kinsay magdamgo sa ingon nga umaabot!

Ania kung unsa kini tan-awon:

Matikdi kung giunsa pagbag-o ang lebel sa kasaba pagkahuman sa 20 kHz alang sa lainlaing mga codec. Ang orihinal nga MP3 file walay mga frequency nga labaw sa 20 kHz.

Sulayi ang pagbalhin sa mga codec ug tan-awa kung nakadungog ka sa kalainan tali sa orihinal, SBC 53 Joint Stereo (ang sumbanan ug labing komon nga profile), ug aptX/aptX HD.

Nakadungog ko sa kalainan tali sa mga codec sa mga headphone!

Ang mga tawo nga wala makadungog sa kalainan tali sa mga codec sa panahon sa pagsulay pinaagi sa usa ka serbisyo sa web nangangkon nga nadungog nila kini kung naminaw sa musika sa mga wireless headphone. Alaut, dili kini usa ka komedya o epekto sa placebo: ang kalainan madungog gayud, apan dili kini tungod sa mga kalainan mga codec.

Ang kadaghanan sa mga Bluetooth audio chipset nga gigamit sa mga wireless receiving device nasangkapan sa usa ka Digital Signal Processor (DSP), nga nagpatuman sa usa ka equalizer, compander, stereo expander, ug uban pang mga butang nga gidisenyo aron mapaayo (o usbon) ang tunog. Ang mga tiggama sa Bluetooth nga kagamitan mahimong ma-configure ang DSP alang sa matag codec nga gilain, ug kung magbalhinbalhin tali sa mga codec, ang tigpaminaw maghunahuna nga nakadungog sila usa ka kalainan sa operasyon sa mga codec, kung sa tinuud namati sila sa lainlaing mga setting sa DSP.

Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato
DSP Kalimba audio processing pipeline sa mga chips nga gigama sa CSR/Qualcomm

Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato
I-aktibo ang lainlaing mga gimbuhaton sa DSP alang sa matag codec ug output nga gilain

Ang ubang mga premium nga mga himan adunay software nga nagtugot kanimo sa pag-customize sa mga setting sa DSP, apan kadaghanan sa mas barato nga mga headphone wala, ug ang mga tiggamit dili makapatay sa audio post-processing sa mano-mano.

Functional nga mga bahin sa mga device

Ang modernong bersyon sa A2DP nga sumbanan adunay "hingpit nga pagkontrol sa volume" function β€” pagkontrol sa volume sa aparato gamit ang mga espesyal nga mando sa protocol sa AVRCP, nga nag-regulate sa pag-angkon sa yugto sa output, imbes nga pagpakunhod sa gidaghanon sa audio stream pinaagi sa programa. Kung kung imong usbon ang volume sa imong headphone, ang pagbag-o dili mag-sync sa volume sa imong telepono, nan ang imong headphone o telepono dili mosuporta niini nga bahin. Sa kini nga kaso, makatarunganon nga kanunay nga maminaw sa musika nga adunay labing kadaghan nga volume sa telepono, pag-adjust sa aktwal nga volume gamit ang mga buton sa headphone - sa kini nga kaso, ang ratio sa signal-to-noise mahimong labi ka maayo ug ang kalidad sa audio kinahanglan gayud mas taas.
Sa pagkatinuod, adunay makapasubo nga mga sitwasyon. Sa akong RealForce OverDrive D1 headphones alang sa SBC, ang usa ka lig-on nga compander gi-on, ug ang pagdugang sa gidaghanon nagdala ngadto sa pagtaas sa lebel sa hilum nga mga tingog, samtang ang gidaghanon sa kusog nga mga tingog dili mausab (ang signal gi-compress). Tungod niini, kinahanglan nimo nga itakda ang volume sa kompyuter sa hapit katunga, diin halos wala’y epekto sa pag-compress.
Sumala sa akong mga obserbasyon, ang tanan nga mga headphone nga adunay dugang nga mga codec nagsuporta sa hingpit nga function sa pagkontrol sa volume, dayag nga kini usa sa mga kinahanglanon alang sa sertipikasyon sa codec.

Gisuportahan sa pipila nga mga headphone pagkonektar sa duha ka mga device sa samang higayon. Kini nagtugot kanimo, pananglitan, sa pagpaminaw sa musika gikan sa imong computer ug makadawat og mga tawag gikan sa imong telepono. Bisan pa, kinahanglan nimong mahibal-an nga sa kini nga mode ang mga alternatibong codec gi-disable ug ang SBC ra ang gigamit.

AVDTP 1.3 Paglangan sa Pagreport function Gitugotan ang mga headphone nga ipahibalo ang pagkalangan sa aparato nga nagpadala kung diin ang tunog gipatugtog. Gitugotan ka niini nga i-adjust ang pag-synchronize sa audio sa video samtang nagtan-aw sa mga file sa video: kung adunay mga problema sa transmission sa radyo, ang audio dili mag-atras sa video, apan sa sukwahi, ang video gipahinay sa video player hangtod sa ang audio ug video gi-synchronize pag-usab.
Ang function gisuportahan sa daghang mga headphone, Android 9+ ug Linux nga adunay PulseAudio 12.0+. Wala ako nahibal-an nga suporta alang niini nga bahin sa ubang mga platform.

Bidirectional nga komunikasyon pinaagi sa Bluetooth. Pagpasa sa tingog.

Para sa voice transmission sa Bluetooth, Synchronous Connection Oriented (SCO) ang gigamit - synchronous transmission uban ang preliminary negosasyon sa koneksyon. Ang mode nagtugot kanimo sa pagpadala sa tingog ug tingog sa estrikto nga pagkahan-ay, nga adunay simetriko nga pagpadala ug pagdawat nga mga katulin, nga wala maghulat sa kumpirmasyon sa pagpadala ug pagpadala pag-usab sa mga pakete. Gipamenos niini ang kinatibuk-ang paglangan sa pagpasa sa audio sa channel sa radyo, apan nagpahamtang ug seryoso nga mga pagdili sa gidaghanon sa datos nga gipasa kada yunit sa panahon, ug negatibong makaapekto sa kalidad.
Kung gigamit kini nga mode, ang tingog ug audio gipasa sa parehas nga kalidad.
Ikasubo, sa 2019, ang kalidad sa tingog sa Bluetooth dili gihapon maayo, ug dili klaro kung ngano nga ang Bluetooth SIG wala’y nahimo bahin niini.

CVSD

Ang batakang CVSD speech codec gi-standardize niadtong 2002, ug gisuportahan sa tanang bidirectional Bluetooth communication device. Naghatag kini og audio transmission nga adunay sampling frequency nga 8 kHz, nga katumbas sa kalidad sa conventional wired telephony.

Usa ka pananglitan sa usa ka pagrekord niini nga codec.

mSBC

Ang dugang nga mSBC codec gi-standardize sa 2009, ug sa 2010 nga mga chips nga naggamit niini alang sa voice transmission nagpakita na. Ang mSBC kaylap nga gisuportahan sa lainlaing mga aparato.
Dili kini usa ka independente nga codec, apan usa ka regular nga SBC gikan sa sumbanan nga A2DP, nga adunay usa ka piho nga profile sa pag-encode: 16 kHz, mono, bitpool 26.

Usa ka pananglitan sa usa ka pagrekord niini nga codec.

Dili maayo, apan labi ka maayo kaysa CVSD, apan makalagot gihapon nga gamiton alang sa online nga komunikasyon, labi na kung naggamit ka mga headphone aron makigkomunikar sa in-game - ang audio sa dula ipadala usab sa usa ka sampling rate nga 16 kHz.

Ang kompaniya sa FastStreamCSR nakahukom sa pagpalambo sa ideya sa paggamit sa SBC. Aron malikayan ang mga limitasyon sa SCO protocol ug gamiton ang mas taas nga bitrates, ang CSR miagi sa laing ruta - gipaila nila ang suporta alang sa two-way SBC audio ngadto sa A2DP one-way audio transmission standard, standardized encoding profiles, ug gitawag kini nga "FastStream".

Nagpadala ang FastStream og stereo audio sa 44.1 o 48 kHz nga adunay bitrate nga 212 kbps ngadto sa mga speaker, ug ang mono, 16 kHz, nga adunay bitrate nga 72 kbps gigamit sa pagpasa sa audio gikan sa mikropono (mas maayo gamay kay sa mSBC). Ang ingon nga mga parameter labi ka labi nga haum alang sa komunikasyon sa mga dula sa online - ang tunog sa dula ug ang mga interlocutor adunay taas nga kalidad.

Usa ka pananglitan sa usa ka pagrekord niini nga codec (+ tingog gikan sa mikropono, sama sa mSBC).

Ang kompanya adunay usa ka makapaikag nga saklay, apan tungod sa kamatuoran nga kini sukwahi sa A2DP nga sumbanan, kini gisuportahan lamang sa pipila nga mga transmitter sa kompanya (nga nagtrabaho ingon usa ka USB audio card, dili usa ka aparato nga Bluetooth), apan dili kini molihok. makadawat og suporta sa Bluetooth stacks, bisan pa ang gidaghanon sa mga headphone nga adunay suporta sa FastStream dili kaayo gamay.

Sa pagkakaron, ang suporta sa FastStream sa OS mao ra isip usa ka patch alang sa Linux PulseAudio gikan sa developer nga si Pali RohΓ‘r, kinsa wala maapil sa nag-unang sanga sa programa.

aptX Ubos nga Latency

Daghan sa imong katingala, ang aptX Low Latency nagsuporta usab sa bidirectional audio, nga nagpatuman sa parehas nga prinsipyo sa FastStream.
Dili posible nga gamiton kini nga bahin sa codec bisan asa - walay suporta alang sa Low Latency decoding sa bisan unsang OS o sa bisan unsang Bluetooth stack nga nahibal-an nako.

Bluetooth 5, Klasiko ug Ubos nga Enerhiya

Adunay daghang kalibog sa palibot sa mga detalye ug mga bersyon sa Bluetooth tungod sa presensya sa duha nga dili magkatugma nga mga sumbanan sa ilawom sa parehas nga tatak, nga ang duha kaylap nga gigamit alang sa lainlaing mga katuyoan.

Adunay duha ka lainlain, dili magkatugma nga Bluetooth protocol: Bluetooth Classic ug Bluetooth Low Energy (LE, nailhan usab nga Bluetooth Smart). Adunay usab usa ka ikatulo nga protocol, Bluetooth High Speed, apan kini dili kaylap ug wala gigamit sa mga gamit sa panimalay.

Sugod sa Bluetooth 4.0, ang mga pagbag-o sa espesipikasyon nag-una sa Bluetooth Low Energy, ug ang Classic nga bersyon nakadawat lamang og ginagmay nga mga pag-uswag.

Listahan sa mga kausaban tali sa Bluetooth 4.2 ug Bluetooth 5:

9 KABAG-OHAN GIKAN sa v4.2 HANGTOD 5.0

9.1 BAG-ONG MGA FEATURES

Daghang mga bag-ong bahin ang gipaila sa Bluetooth Core Specification 5.0 Release. Ang mga nag-unang bahin sa pag-uswag mao ang:
β€’ Slot Availability Mask (SAM)
β€’ 2 Msym/s PHY para sa LE
β€’LE Long Range
β€’ Taas nga Duty Cycle Non-Connectable Advertising
β€’ Mga Extension sa LE Advertising
β€’ LE Channel Selection Algorithm #2
9.1.1 Features Gidugang sa CSA5 - Integrated sa v5.0
β€’ Taas nga Output Power

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

Usa ra ka pagbag-o ang nakaapekto sa Classic nga bersyon sa sulod sa balangkas sa Bluetooth 5 nga detalye: gidugang nila ang suporta alang sa teknolohiya sa Slot Availability Mask (SAM), nga gidisenyo aron mapaayo ang pagbulag sa broadcast sa radyo. Ang tanan nga ubang mga pagbag-o makaapekto lamang sa Bluetooth LE (ug Higher Output Power usab).

Ang tanan nga Ang mga audio device naggamit lang sa Bluetooth Classic. Imposible nga makonektar ang mga headphone ug mga mamumulong pinaagi sa Bluetooth Low Energy: walay sumbanan sa pagpasa sa audio gamit ang LE. Ang A2DP standard, nga gigamit alang sa pagpasa sa taas nga kalidad nga audio, nagtrabaho lamang pinaagi sa Bluetooth Classic, ug walay analogue sa LE.

Konklusyon - ang pagpalit sa mga audio device nga adunay Bluetooth 5 tungod lamang sa bag-ong bersyon sa protocol walay kapuslanan. Ang Bluetooth 4.0 / 4.1 / 4.2 sa konteksto sa pagpasa sa audio molihok nga parehas.
Kung ang pag-anunsyo sa bag-ong mga headphone naghisgot sa doble nga sakup sa pag-operate ug pagkunhod sa konsumo sa kuryente salamat sa Bluetooth 5, nan kinahanglan nimo mahibal-an nga dili nila kini masabtan sa ilang kaugalingon o nagpahisalaag kanimo. Dili ikatingala, tungod kay bisan ang mga tiggama sa Bluetooth chips sa ilang mga pahibalo naglibog mahitungod sa mga kalainan tali sa bag-ong bersyon sa standard, ug ang pipila ka Bluetooth 5 chips nagsuporta sa ikalima nga bersyon lamang alang sa LE, ug naggamit sa 4.2 alang sa Classic.

Ang paglangan sa pagpasa sa audio

Ang gidaghanon sa paglangan (lag) sa audio nagdepende sa daghang mga hinungdan: ang gidak-on sa buffer sa audio stack, sa Bluetooth stack ug sa wireless playback device mismo, ug ang algorithmic nga paglangan sa codec.

Ang latency sa yano nga mga codec sama sa SBC, aptX ug aptX HD gamay kaayo, 3-6 ms, nga mahimong mapasagdan, apan ang mga komplikadong codec sama sa AAC ug LDAC mahimong hinungdan sa mamatikdan nga lag. Ang AAC algorithmic latency alang sa 44.1 kHz kay 60 ms. LDAC - mga 30 ms (base sa usa ka kasarangan nga pagtuki sa source code. Mahimong sayup ako, apan dili kaayo.)

Ang resulta nga latency nagdepende pag-ayo sa playback device, sa chipset ug buffer niini. Atol sa mga pagsulay, nakadawat ako usa ka pagkaylap nga 150 hangtod 250 ms sa lainlaing mga aparato (uban ang SBC codec). Kung atong hunahunaon nga ang mga himan nga nagsuporta sa dugang nga mga codec nga aptX, AAC ug LDAC naggamit sa taas nga kalidad nga mga sangkap ug gamay nga buffer nga gidak-on, makuha nato ang mosunod nga tipikal nga mga latency:

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

Pahinumdumon ko ikaw: ang aptX Low Latency dili suportado sa mga operating system, mao nga ang mas ubos nga latency makuha lang gamit ang transmitter+receiver o transmitter+headphones/speaker combination, ug ang tanang device kinahanglang mosuporta niini nga codec.

Mga isyu sa Bluetooth device, sertipikasyon, ug logo

Giunsa ang pag-ila sa usa ka taas nga kalidad nga audio device gikan sa usa ka barato nga craft? Sa hitsura, una sa tanan!

Para sa barato nga Chinese headphones, speakers ug receivers:

  1. Ang pulong nga "Bluetooth" nawala sa kahon ug aparato, "Wireless" ug "BT" ang kasagarang gigamit
  2. Nawala ang logo sa Bluetooth Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato sa kahon o device
  3. Walay asul nga flashing LED

Ang pagkawala sa kini nga mga elemento nagpakita nga ang aparato wala pa sertipikado, nga nagpasabut nga kini adunay potensyal nga ubos ang kalidad ug problema. Pananglitan, ang mga headphone sa Bluedio dili sertipikado sa Bluetooth ug dili hingpit nga nagsunod sa detalye sa A2DP. Dili unta sila makapasar sa sertipikasyon.

Atong tagdon ang pipila ka mga himan ug mga kahon gikan kanila:
Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Audio pinaagi sa Bluetooth: kutob sa mahimo nga detalye bahin sa mga profile, codec ug mga aparato

Kining tanan mga dili sertipikado nga mga himan. Ang mga panudlo mahimong adunay usa ka logo ug ang ngalan sa teknolohiya sa Bluetooth, apan ang labing hinungdanon nga butang mao nga kini naa sa kahon ug / o ang aparato mismo.

Kung ang imong mga headphone o speaker nag-ingon nga "Ang ze bluetooth dewise malampuson nga konektado", wala usab kini magpakita sa ilang kalidad:

konklusyon

Mahimo bang bug-os nga mapulihan sa Bluetooth ang mga wired headphone ug headset? Mahimo kini, apan sa gasto sa dili maayo nga kalidad sa tawag, nadugangan nga latency sa audio nga mahimong makalagot sa mga dula, ug daghang mga proprietary codec nga nanginahanglan bayad sa paglilisensya ug pagtaas sa katapusan nga gasto sa parehas nga mga smartphone ug headphone.

Ang pagpamaligya sa mga alternatibong codec kusog kaayo: ang aptX ug LDAC gipresentar isip usa ka dugay nang gipaabot nga kapuli sa "karaan ug dili maayo" nga SBC, nga dili ingon ka daotan sama sa gihunahuna sa mga tawo.

Ingon sa nahimo, ang artipisyal nga mga limitasyon sa Bluetooth stacks sa SBC bitrate mahimong ma-bypass, aron ang SBC dili ubos sa aptX HD. Gikuha nako ang inisyatiba sa akong kaugalingon nga mga kamot ug naghimo usa ka patch alang sa firmware sa LineageOS: Among giusab ang Bluetooth stack aron mapalambo ang tingog sa mga headphone nga walay AAC, aptX ug LDAC codec

Dugang nga impormasyon makita sa mga website Sound Guys ΠΈ SoundExpert.

bonus: SBC reference encoder, A2DP bitstream nga impormasyon ug test files. Kini nga file kaniadto gi-post sa publiko sa Bluetooth website, apan karon magamit na lang sa mga miyembro sa Bluetooth SIG.

Source: www.habr.com

Idugang sa usa ka comment