SBC (codec) - SBC (codec)
SBC , sau codec de sub-bandă de complexitate redusă, este un codec de sub-bandă audio specificat de Bluetooth Special Interest Group (SIG) pentru Advanced Audio Distribution Profile (A2DP). SBC este un codificator și decodor audio digital utilizat pentru a transfera date către dispozitive de ieșire audio Bluetooth, cum ar fi căștile sau difuzoarele. Poate fi folosit și pe internet. A fost proiectat având în vedere limitele lățimii de bandă Bluetooth și puterea de procesare pentru a obține o calitate audio rezonabilă de bună la rate de biți medii, cu o complexitate de calcul scăzută. Începând cu versiunea A2DP 1.3, codarea sub-bandă cu complexitate redusă rămâne codecul implicit și implementarea sa este obligatorie pentru dispozitivele care acceptă acel profil, dar furnizorii sunt liberi să adauge propriile codecuri pentru a se potrivi nevoilor lor.
La CES 2020, Bluetooth SIG a anunțat LC3 ca succesor al SBC. LC3 este utilizat în protocolul audio LE bazat pe specificațiile de bază Bluetooth 5.2.
Proiecta
SBC acceptă fluxuri mono și stereo și anumite frecvențe de eșantionare de până la 48 kHz. Rata maximă de biți necesară pentru a fi acceptată de decodoare este de 320 kbit / s pentru mono și 512 kbit / s pentru fluxurile stereo. Folosește 4 sau 8 sub-benzi, un algoritm de alocare a bitului adaptiv în combinație cu un cuantificator PCM cu bloc adaptiv. Frans de Bont a bazat codecul audio SBC pe lucrările sale anterioare și - în parte - pe standardul MPEG-1 Audio Layer II . În plus, SBC se bazează pe algoritmii descriși în EP-0400755B1. Proprietarii de brevete au scris că permit utilizarea gratuită a SBC în aplicațiile Bluetooth, cu scopul de a spori utilizarea acestei tehnologii.
Variante
Prezentare generală
fluxul principal | flux înapoi | (pentru trimitere) | |||||
---|---|---|---|---|---|---|---|
misc. | Lansa | - | Mai 2003 | Martie 2008 | - | ||
Brevete conexe | EP 0400755B1 (expirat) | - | US 9398620B1 (expirat) | - | |||
Implementări gratuite | BlueZ libsbc | PulseAudio , PipeWire | PipeWire , patch-uri pentru PulseAudio | - | |||
Implementări proprietare | - | implementări hardware multiple | implementarea hardware în cipurile Qualcomm | - | |||
Codificare audio |
Canale | Mono (1) Stereo comun (2) |
Stereo comun (2) |
Stereo comun (2) |
Mono (1) |
Stereo (2) |
|
Rata de eșantionare | 16 kHz 32 kHz 44,1 kHz 48 kHz |
44,1 kHz 48 kHz |
44,1 kHz 48 kHz |
16 kHz |
44,1 kHz |
||
Rata de biți | până la 510 kbit / s (@ 44,1 kHz) până la 507 kbit / s (@ 48 kHz) |
229 kbit / s (@ 44,1 kHz) 237 kbit / s (@ 48 kHz) |
328 kbit / s (@ 44,1 kHz) 345 kbit / s (@ 48 kHz) |
212 kbit / s (@ 48 kHz) | 72 kbit / s (@ 16 kHz) | 1411 kbit / s (@ 44,1 kHz) | |
Sub-benzi | 4 sau 8 | 8 | ? | ||||
Bitpool | 2 - 86 (@ 44,1 kHz) 2 - 78 (@ 48 kHz) |
35 (@ 44,1 kHz) 33 (@ 48 kHz) |
53 (@ 44,1 kHz) 51 (@ 48 kHz) |
29 | 32 | ? |
Calitate medie și înaltă
A2DP recomandă codificatoare pentru a sprijini presetările de calitate medie și de înaltă calitate, după cum se specifică în tabelul de mai sus. Ca urmare, majoritatea sistemelor de operare utilizează profilul de înaltă calitate ca implicit sau chiar singurul profil de codificare acceptat.
Variante de calitate superioară
Cu toate acestea, A2DP necesită decodoare pentru a suporta fluxuri de calitate superioară, de până la 512 kbit / s, și există unele codificatoare experimentale care folosesc această caracteristică: de exemplu, SBC XQ, utilizat de Lineage OS . Cu o rată de biți mai mare, calitatea audio este comparabilă cu aptX HD (529 kbit / s).
FastStream
În timp ce A2DP acceptă oficial doar fluxuri audio unidirecționale, CSR a găsit o modalitate de a trimite un flux de voce înapoi opus fluxului stereo principal, făcând posibilă utilizarea A2DP în căștile cu microfoane. A fost implementat în codecul FastStream, care este codecul SBC cu parametrii setați și fluxul de voce înapoi adăugat.
Implementări
Specificația de testare A2DP (V1.0) conține o implementare de referință a codificatorului și decodificatorului pentru codecul SBC. O implementare Linux este disponibilă la BlueZ - Stiva Linux Bluetooth.