SBC (Codec) - SBC (codec)

Aus Wikipedia, der freien Enzyklopädie

SBC oder Subband-Codec mit geringer Komplexität ist ein Audio- Subband-Codec, der von der Bluetooth Special Interest Group (SIG) für das Advanced Audio Distribution Profile (A2DP) festgelegt wurde . SBC ist ein digitaler Audio-Encoder und -Decoder, mit dem Daten an Bluetooth-Audioausgabegeräte wie Kopfhörer oder Lautsprecher übertragen werden. Es kann auch im Internet verwendet werden. Es wurde entwickelt, um eine relativ gute Audioqualität bei mittleren Bitraten bei gleichzeitig geringem Rechenaufwand zu erzielen, wobei Einschränkungen der Bluetooth-Bandbreite und der Verarbeitungsleistung berücksichtigt werden. Ab A2DP Version 1.3 bleibt die Subband-Codierung mit geringer Komplexität der Standardcodec, und ihre Implementierung ist für Geräte, die dieses Profil unterstützen, obligatorisch. Es steht den Anbietern jedoch frei, ihre eigenen Codecs hinzuzufügen, um ihren Anforderungen zu entsprechen.

Auf der CES 2020 kündigte die Bluetooth SIG LC3 als Nachfolger von SBC an. LC3 wird im LE Audio-Protokoll verwendet, das auf der Bluetooth 5.2-Kernspezifikation basiert.

Design

SBC unterstützt Mono- und Stereostreams, bestimmte Abtastfrequenzen bis zu 48 kHz. Die maximale Bitrate, die von Decodern unterstützt werden muss, beträgt 320 kbit / s für Mono und 512 kbit / s für Stereostreams. Es verwendet 4 oder 8 Teilbänder, einen adaptiven Bitzuweisungsalgorithmus in Kombination mit einem adaptiven Block-PCM-Quantisierer. Frans de Bont hat den SBC-Audio-Codec auf seine früheren Arbeiten und teilweise auf den MPEG-1 Audio Layer II- Standard gestützt . Darüber hinaus basiert der SBC auf den im EP-0400755B1 beschriebenen Algorithmen. Die Patentinhaber gaben an, dass sie die kostenlose Nutzung von SBC in Bluetooth-Anwendungen erlauben, um die Nutzung dieser Technologie zu fördern.

Varianten

Überblick

SBC SBC-Profile FastStream Audio-CD
Mittlere Qualität Hohe Qualität
Hauptstrom Backstream (als Referenz)
Sonstiges Starten - - Mai 2003 März 2008 - -
Verwandte Patente EP 0400755B1   (abgelaufen) - - US 9398620B1   (abgelaufen) - -
Kostenlose Implementierungen BlueZ libsbc PulseAudio , PipeWire Patches für PulseAudio - -
Proprietäre Implementierungen - - mehrere Hardware-Implementierungen Hardware-Implementierung in Qualcomm- Chips - -
Audio-
Codierung
Kanäle Mono (1)
Joint Stereo (2)

Gemeinsame Stereoanlage (2)

Gemeinsame Stereoanlage (2)
Mono (1)
 

Stereo (2)
Abtastrate 16 kHz
32 kHz
44,1 kHz
48 kHz 


44,1 kHz
48 kHz 


44,1 kHz
48 kHz 
16 kHz


 


44,1 kHz
 
Bitrate bis zu 510 kbit / s (bei 44,1 kHz)
bis zu 507 kbit / s (bei 48 kHz)
229 kbit / s (bei 44,1 kHz)
237 kbit / s (bei 48 kHz)
328 kbit / s (bei 44,1 kHz)
345 kbit / s (bei 48 kHz)
212 kbit / s (bei 48 kHz) 72 kbit / s (bei 16 kHz) 1411 kbit / s (bei 44,1 kHz)
Subbands 4 oder 8 8 ?
Bitpool 2 - 86 (bei 44,1 kHz)
2 - 78 (bei 48 kHz)
35 (bei 44,1 kHz)
33 (bei 48 kHz)
53 (@ 44,1 kHz)
51 (@ 48 kHz)
29 32 ?

Mittlere und hohe Qualität

A2DP empfiehlt Encoder, um die in der obigen Tabelle angegebenen Voreinstellungen für mittlere und hohe Qualität zu unterstützen. Infolgedessen verwenden die meisten Betriebssysteme das Profil "Hohe Qualität" als Standard oder sogar das einzige unterstützte Codierungsprofil.

Varianten mit höherer Qualität

Für A2DP sind jedoch Decoder erforderlich, um Streams mit höherer Qualität von bis zu 512 kbit / s zu unterstützen. Einige experimentelle Encoder verwenden diese Funktion, z. B. SBC XQ, das von Lineage OS verwendet wird . Bei höherer Bitrate ist die Audioqualität mit aptX HD (529 kbit / s) vergleichbar.

FastStream

Während A2DP offiziell nur Einweg-Audio-Streams unterstützt, hat CSR einen Weg gefunden, einen Voice-Back-Stream gegenüber dem Haupt-Stereo-Stream zu senden, sodass A2DP in Headsets mit Mikrofonen verwendet werden kann. Es wurde im FastStream-Codec implementiert, dem SBC-Codec mit festgelegten Parametern und dem hinzugefügten Voice-Back-Stream.

Implementierungen

Die A2DP-Testspezifikation (V1.0) enthält eine Referenzimplementierung des Codierers und Decodierers für den SBC-Codec. Eine Linux-Implementierung ist bei BlueZ verfügbar - Der Linux-Bluetooth-Stack.

Siehe auch

Verweise