SBC (codec) - SBC (codec)
SBC , eller sub-codec med låg komplexitet, är en codec för ljudunderband som specificeras av Bluetooth Special Interest Group (SIG) för Advanced Audio Distribution Profile (A2DP). SBC är en digital ljudkodare och avkodare som används för att överföra data till Bluetooth -ljudutmatningsenheter som hörlurar eller högtalare. Det kan också användas på Internet. Den var utformad med begränsningar för Bluetooth -bandbredd och processorkraft i åtanke för att få en rimligt bra ljudkvalitet vid medelhöga bithastigheter med låg beräkningskomplexitet. Från och med A2DP version 1.3 förblir Low Complexity Subband Coding standard -codec och dess implementering är obligatorisk för enheter som stöder den profilen, men leverantörer är fria att lägga till sina egna codecs för att matcha deras behov.
Vid CES 2020 meddelade Bluetooth SIG LC3 som efterträdare till SBC. LC3 används i LE Audio -protokollet baserat på Bluetooth 5.2 Core Specification.
Design
SBC stöder mono- och stereoströmmar och vissa samplingsfrekvenser upp till 48 kHz. Maximal bithastighet som krävs för att stödjas av avkodare är 320 kbit/s för mono och 512 kbit/s för stereoströmmar. Den använder 4 eller 8 delband, en adaptiv bitallokeringsalgoritm i kombination med en adaptiv block PCM -kvantiserare. Frans de Bont har baserat SBC-ljudkodek på sitt tidigare arbete och-i delar-på MPEG-1 Audio Layer II- standarden. Dessutom är SBC baserat på algoritmerna som beskrivs i EP-0400755B1. Patentägarna skrev att de tillåter gratis användning av SBC i Bluetooth -applikationer med målet att öka användningen av denna teknik.
Varianter
Översikt
vanliga | tillbaka ström | (som referens) | |||||
---|---|---|---|---|---|---|---|
diverse. | Lansera | - | Maj 2003 | Mars 2008 | - | ||
Relaterade patent | EP 0400755B1 ( utgången ) | - | US 9398620B1 ( utgången ) | - | |||
Gratis implementeringar | BlueZ libsbc | PulseAudio , PipeWire | PipeWire , patchar för PulseAudio | - | |||
Proprietära implementeringar | - | flera hårdvaruimplementeringar | hårdvaruimplementering i Qualcomm -chips | - | |||
Audio Encoding |
Kanaler | Mono (1) Joint Stereo (2) |
Joint Stereo (2) |
Joint Stereo (2) |
Mono (1) |
Stereo (2) |
|
Samplingshastighet | 16 kHz 32 kHz 44,1 kHz 48 kHz |
44,1 kHz 48 kHz |
44,1 kHz 48 kHz |
16 kHz |
44,1 kHz |
||
Bithastighet | upp till 510 kbit/s (@ 44,1 kHz) upp till 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) | |
Delband | 4 eller 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 | ? |
Mellan och hög kvalitet
A2DP rekommenderar kodare att stödja förinställningar av medelkvalitet och hög kvalitet enligt specifikationen i tabellen ovan. Som ett resultat använder de flesta operativsystem profilen Hög kvalitet som standard eller till och med den enda som stöds för kodningsprofil.
Varianter av högre kvalitet
A2DP kräver dock att avkodare stöder strömmar av högre kvalitet, upp till 512 kbit/s, och det finns några experimentella kodare som använder den här funktionen: till exempel SBC XQ, som används av Lineage OS . Med högre bithastighet är ljudkvaliteten jämförbar med aptX HD (529 kbit/s).
FastStream
Medan A2DP officiellt endast stöder envägs ljudströmmar, har CSR hittat ett sätt att skicka en röstback-ström motsatt huvudstreamen, vilket gör det möjligt att använda A2DP i headset med mikrofoner. Det implementerades i FastStream-codecen, som är SBC-codecen med inställda parametrar och röst-tillbaka-strömmen tillagd.
Implementeringar
A2DP -testspecifikationen (V1.0) innehåller en referensimplementering av kodaren och avkodaren för SBC -codec. En Linux -implementering är tillgänglig på BlueZ - Linux Bluetooth -stacken.