Alles wat je wil weten over bluetooth-codecs
Bluetooth kennen we allemaal, maar met bluetooth-codecs wordt het al wat ingewikkelder. Waarom zijn er verschillende codecs en wat doen ze precies? We zetten ze hier voor je op een rij, met tekst en uitleg.
Lees eerst: Alles wat je wil weten over bluetooth
Data wordt bij bluetooth v2.0/2.1+edr in de praktijk met 2,1 Mbit/s overgedragen. In theorie is het maximaal 3 Mbit/s, maar door allerlei overhead is de beschikbare datapijp in de praktijk veel smaller. Een cd-stream verbruikt ruim 1,4 Mbit/s. Dat zou de bluetooth-verbinding direct doen opstroppen: voor andere aangesloten apparaten blijft er nauwelijks voldoende bandbreedte over om te functioneren.
Om zoiets te vermijden, wordt audio in ‘real time’ gecomprimeerd door een codec, zodat er bandbreedte genoeg overblijft voor andere bluetooth-toepassingen. Het a2dp-profiel verplicht het gebruik van de low complexity subband codec of sbc. Zowel de ‘source’ als de ‘sink’ moeten die ondersteunen.
Minder bekend is dat het a2dp-profiel nog drie optionele codecs toelaat, namelijk mpeg-1,2 layer 1/2/3 (mp1/mp2/mp3), mpeg-2,4 aac en atrac. Zender en ontvanger moeten minstens één daarvan ondersteunen. Vbr of variable bit rate-ondersteuning is overigens verplicht voor de ontvanger, maar niet voor de zender.
Om het helemaal ingewikkeld te maken, zijn daarnaast ook nog optionele fabrikant specifieke codecs toegestaan. De bekendste daarvan zijn Qualcomm aptx en Sony ldac, maar in theorie mag elke fabrikant eigen codecs gebruiken. Addertje onder het gras is wel dat zender én ontvanger dezelfde bedrijfseigen codec moeten ondersteunen.
De verplichte sbc-codec neemt het altijd over wanneer de eventuele optionele codecs niet herkend worden door de ontvanger, of ontbreken op de zender.
Sbc-codec
De door het a2dp-profiel verplichte sbc-codec kwamen we al tegen als wideband-codec voor de hsp- en hsf-profielen. Daar wordt die in mono-vorm (msbc) gebruikt, bovendien met de laagst mogelijke kwaliteitsinstellingen. Bij a2dp werkt sbc met een hogere bemonsteringsfrequentie van naar keuze 44,1 kHz of 48 kHz. De luisterapparatuur (‘sink’) moet deze hogere bemonsteringsfrequenties verplicht ondersteunen. Optioneel mogen ook de lagere bemonsteringsfrequenties van 16 en 32 kHz worden ondersteund. De speler (‘source’) moet verplicht één van beide hoogste bemonsteringsfrequenties ondersteunen en mag optioneel de drie andere ook ondersteunen.
De sbc-decoder in de ‘sink’ of ontvanger moet mono-, stereo-, dual-channel- en joint-stereo-modussen aankunnen. De sbc-encoder in de ‘source’ moet verplicht mono ondersteunen en daarnaast minimaal één van de drie vermelde stereo-methodes. De sbc-code ondersteunt bitrates tussen 127 en 356 Kbit/s.
Aac-codes (Apple)
Mpeg-2 aac en mpeg-4 aac zijn optioneel toegelaten codecs in het bluetooth-a2dp-profiel. Het luisterapparaat moet verplicht de 44,1 en 48 kHz bemonsteringsfrequenties aankunnen en de zender verplicht minstens één van beide. Optioneel zijn echter alle bemonsteringsfrequenties toegelaten tussen 8 en 96 kHz.
iOS-apparatuur ondersteunt niet alleen de standaard sbc-codec, maar ook de optionele mpeg-2/4 aac-codec. Apple raadt fabrikanten van accessoires voor Mac, iPad, iPod en iPhone trouwens aan om bij voorkeur aac te gebruiken, omwille van de hogere audiokwaliteit bij een vergelijkbare bitrate. iOS-apparatuur streamt aac-stereogeluid met een bemonsteringsfrequentie van 44,1 kHz en een bitrate van 264 Kbit/s. Variabele bitrates worden eveneens ondersteund.
Android O, dat dit najaar uitkomt, voegt de aac-codec toe aan de Android aosp-basiscode. Gebruikers van de nieuwe Android-versie zullen in de toekomst daarom vrij kunnen kiezen tussen sbc, aac, aptx, aptx hd en ldac.
Aptx-codec (Qualcomm)
De aptx-codec, intussen eigendom van chipfabrikant Qualcomm, levert volgens de makers bij een beperkte bitrate ‘cd-achtige audiokwaliteit’. Zender en ontvanger moeten het beide ondersteunen. Omdat fabrikanten er extra voor betalen, vind je het alleen bij duurdere bluetooth-apparatuur. Jammer genoeg is er geen verplicht logo, zodat het niet altijd duidelijk is of deze codec op een apparaat aanwezig is.
Er bestaan intussen drie aptx-versies, die gelukkig wel achterwaarts compatibel zijn. De originele aptx-codec gebruikt een bemonsteringsfrequentie van 48 kHz bij 16 bits. Aptx le (low latency) is aptx met een kleinere vertragingsfactor (slechts 40 ms tegenover 130 ms voor het origineel). Dat zorgt voor een betere synchronisatie tussen beeld en geluid, van belang voor gaming en video. Je vindt het bijvoorbeeld terug op draadloze gaming-headsets en draadloze soundbars. Aptx hd ten slotte is de highres-audiovariant met een bemonsteringsfrequentie van 48 kHz bij 24 bits. De bitrate voor aptx varieert tussen 176 en 352 Kbit/s.
Android O voegt aptx en aptx hd toe aan de Android aosp-basiscode. Gebruik ervan is gratis voor Android-apparatuur. Maar fabrikanten van afspeelapparatuur moeten aan Qualcomm wel een licentie voor aptx betalen.
Ldac-codec (Sony)
Herinner je dat atrac nog? Het is een bedrijfseigen codec van Sony, dat één van de optionele codecs is in het originele a2dp-bluetooth-audioprofiel. Sony-ingenieurs ontwikkelden dit compressiealgoritme oorspronkelijk in 1992 voor de MiniDisc. In bluetooth-apparatuur wordt atrac buiten Japan echter sinds 2008 niet meer gebruikt. Sony geeft intussen de voorkeur aan een andere bedrijfseigen codec, namelijk ldac. Je treft het voorlopig alleen aan op Sony-apparatuur. Overigens maakt Sony ook nog bluetooth-apparatuur met de aac- en aptx-codecs.
Ldac levert net zoals aptx bijna cd-kwaliteit. Het heeft drie kwaliteitsinstellingen: quality (bitrate van 960 Kbit/s), normal (600 Kbit/s) en connection priority (330 Kbit/s). De Sony-codec ondersteunt cd-audio (44,1 kHz / 16 bit) en hr-audio (96 kHz / 24 bit). Je vindt het terug op duurdere Xperia-smartphones, Sony Walkmans, Sony-koptelefoons en Sony actieve speakers.
Android O voegt de ldac-codec toe aan de Android aosp-basiscode. Gebruik ervan is gratis voor Android-apparatuur. Fabrikanten van afspeelapparatuur moeten Sony echter betalen om ldac te mogen gebruiken.
Hoor je eigenlijk verschil?
Geluidskwaliteit hangt van veel meer factoren af dan de codec in een bluetooth-apparaat. Is wat je wil beluisteren losless of gecodeerd? Zo ja, met welke codec? Een slecht mp3’tje met een lage bitrate tover je niet om in hr-audio, hoe goed je apparatuur ook is. Is het bronmateriaal in orde, dan klinkt dat natuurlijk nooit goed op een slechte koptelefoon of speaker, hoezeer bluetooth verder ook zijn best doet. De standaard sbc-codec is, wanneer hij correct wordt toegepast (wat niet altijd het geval is bij goedkope bluetooth-apparatuur), beslist bruikbaar. Sbc voldoet vaak, zeker bij typische gebruiksscenario’s, zoals muziek beluisteren tijdens het wandelen, sporten of in de wagen.
Maar ben je een kritische luisteraar, dan merk je met de juiste apparatuur bij goed bronmateriaal zeker subtiele verschillen tussen de codecs. De verschillen objectief testen is niet eenvoudig, maar bij min of meer correcte a/b-vergelijkingen klinken aptx, ldac en aac subtiel beter dan sbc en mp3. Deze codecs snijden alle tonen boven de 20 kHz af; bij sbc zelfs soms nog lager, afhankelijk van de dynamiek van het stukje muziek. De meeste mensen horen weliswaar weinig of niets boven 15 kHz (ruwweg de kwaliteit van een fm-radio), maar hoge tonen spelen wel degelijk een rol in hoe ruimtelijk en subtiel muziek in de praktijk klinkt. Verder veroorzaken aptx, aac en ldac door de band genomen minder digitale vervorming dan mp3 of sbc. Er zijn ook nadelen. Zo voegt aptx hoorbaar ruis toe, wat vooral in een stille omgeving opvalt.
Wil je zelf het verschil horen tussen losless audio en audio gecomprimeerd met respectievelijk aptx, sbc en mp3 320 Kbit/s (ldac ontbreekt helaas), dan vind je op deze website voorbeeldbestanden.