Er was eens een tijd dat het enorm simpel was om muziek van je smartphone via oordoppen je oren in te krijgen. Dat ging via een poort met een diameter van 3,5mm. Daar kon je een stekkertje insteken en vervolgens had je stereogeluid. Gelukkig is de poort er nog steeds op veel smartphones en kun je ook oordopjes bedraad inpluggen via de USB-C-poort van telefoons, hoewel dat niet ideaal is.
Veel mensen vinden bedraad muziek luisteren toch al niet ideaal en draadloze oordoppen zijn in de afgelopen jaren dan ook niet aan te slepen geweest, hoewel bluetooth ook zo zijn nadelen heeft. Bijna alle smartphonefabrikanten hebben wel wat setjes uitgebracht en dan hebben we het nog niet eens over de audiomerken. Van oudsher is bluetooth echter helemaal niet bedoeld voor audio. Bluetooth zelf heeft in de loop der jaren dan ook vele aanpassingen gekregen om het alsnog goed bruikbaar te maken. Bluetooth Low Energy heeft het stroomverbruik verminderd, met Dual Audio kun je met verschillende apparaten tegelijk verbinding maken, en snelheid en bereik zijn in de afgelopen jaren eveneens verbeterd.
Draadloze oordoppen zijn in de afgelopen jaren niet aan te slepen geweest
Dat is fijn, maar de gebruikte codecs hebben natuurlijk ook hun weerslag op de luisterervaring en doorgaans is niet duidelijk welke codec op een bepaald moment wordt gebruikt. Als je lukraak een draadloze koptelefoon of oordopjes koopt, weet je wellicht helemaal niet of de codecs die voor jouw apparaten het best zijn, ondersteund worden. Alleen al daarom is het handig om te weten welke codecs er in de aanbieding zijn en waarmee ze samenwerken. Vandaar dit overzichtsartikel over bluetoothcodecs.
Codecs
Veel tweakers weten ongetwijfeld wat een codec is, al is het maar van het mp3-tijdperk. Als geheugenverfrisser leggen we nog even kort uit wat het is en hoe het werkt. Een codec is software óf hardware die in staat is om te coderen én te decoderen. Wij hebben het in dit artikel over software die de audio aan de kant van het verzendende apparaat codeert en op het ontvangende apparaat decodeert.
Er zijn drie manieren om audio op te slaan: ongecomprimeerd, met lossless compressie en met lossy compressie. Ongecomprimeerde audio ken je bijvoorbeeld van het Wav-bestandsformaat. Al je audio op deze manier opslaan kan natuurlijk, maar is veelal niet handig omdat het veel ruimte in beslag neemt. Dat geldt zeker voor bluetoothaudio.
Je zou misschien denken dat compressie altijd lossy is, waarbij dus gegevens verloren gaan. Dat is niet het geval. Denk maar aan een zip- of een rar-bestand. De audio wordt als het ware simpelweg uitgepakt en vervolgens afgespeeld. Voorbeelden hiervan zijn codecs als het open source FLAC en Apples lossless formaat ALAC. Daarbij wordt de data gecomprimeerd, maar gaat geen data verloren. Lossless gecomprimeerde bestanden zijn nog te groot voor veel toepassingen, maar er zijn steeds meer streamingdiensten die lossless streaming aanbieden, zoals Tidal, Qobuz en sinds kort Apple Music.
Naast deze lossless compressie is er ook lossy compressie, wat je natuurlijk onder meer kent van mp3, maar ook AAC. Mp3 heeft een bitrate van maximaal 320kbit/s en bij AAC is dat 256kbit/s. Dat is beperkt. Deze twee bestandsformaten maken gebruik van psychoakoestische modellen. Sterker nog, het is de essentie van deze audioformaten. Deze modellen bevatten informatie over welke data in theorie weggelaten kan worden zonder dat dit duidelijk hoorbaar is. Dit scheelt een hele hoop data en psychoakoestische modellen worden dan ook nog altijd gebruikt. Bandbreedte en opslag zijn immers niet altijd overvloedig aanwezig en dat geldt ook voor bluetooth.
Omgeving en vertraging
Bluetooth is onderhevig aan storende omgevingsfactoren. Dat kunnen fysieke obstakels zijn of radiofrequenties. Zo kan een magnetron je bluetoothverbinding verstoren. Ook is de afstand tussen zender en ontvanger natuurlijk een factor. Door al deze factoren moet bluetoothaudio vrij 'flexibel' zijn. De maximale bandbreedte kan weliswaar toereikend zijn voor hoge bitrates, maar ideale omstandigheden zijn zeldzaam. Daarom wordt audio voor bluetooth gecomprimeerd.
Aangezien bluetoothaudio wordt verzonden en weer ontvangen, is er sprake van vertraging, ofwel latency. Die wordt uitgedrukt in milliseconden. Hoeveel latency er is, hangt af van veel factoren. Denk aan de rekenkracht van de gebruikte apparaten, maar ook aan de implementatie van de bluetoothstandaard en de gebruikte codec. De latency die voor de diverse individuele codecs staat, is theoretisch en kan in werkelijkheid flink afwijken. Toch nemen we deze factor mee bij het behandelen van de diverse codecs, want hij is bijvoorbeeld belangrijk bij gamen en muziek produceren.
Bluetooth was nooit bedoeld voor audio, maar door recente codecs werkt het inmiddels prima
Bij het afspelen van video is het probleem van vertraging grotendeels opgelost, door A/V-sync. Daarbij wordt de latency van de bluetoothaudio geschat en wordt de video met evenzoveel milliseconden vertraagd. Met de komst van Bluetooth 5 is deze technologie gemeengoed geworden. Op YouTube werkt dit bijvoorbeeld prima en je ziet dan ook dat de video even stilstaat en dan pas gaat spelen.
Bluetooth was nooit bedoeld voor audio, maar door recente codecs werkt het inmiddels prima en is de kwaliteit voor de meesten acceptabel. We komen enigszins in de buurt van bedrade audio.
Een frisse duik in het moeras
Dan nu naar de meestgebruikte bluetoothcodecs van het moment. We beginnen met een overzichtje. Daarbij is het wellicht goed om uit te leggen wat de verschillende specificaties zijn. De bitrate is simpelweg de hoeveelheid data per tijdseenheid, uitgedrukt in kilobit per seconde. De samplerate is het frequentiebereik, uitgedrukt in kilohertz. Samples voor geluid kun je vergelijken met pixels in een afbeelding. Als de samplerate zoals bij cd's 44,1kHz is, dan bevat de audio dus 44.100 samples per seconde. De bitdiepte is het dynamisch bereik. Het is het aantal bits aan informatie per sample, dus eigenlijk de resolutie per sample. Dit is bijvoorbeeld 16bit, zoals bij cd-audio, of 24bit, wat je bij dvd's en blu-rays tegenkomt.
Codec | SBC | AAC | AptX | AptX HD | AptX Adaptive | LDAC | Samsung Scalable | LHDC (HWA) |
Bitrate (kbit/s) | 320 (variabel) | 320 (variabel) | 352/384 (schakelbaar) | 529/576 (schakelbaar) | 279-420 (adaptief) | 330/660/990 (schakelbaar) | 88-512 (adaptief) | 400/560/900 (schakelbaar) |
Samplerate (kHz) | 48 | 44,1/96 | 44,1/48 | 44,1/48 | 44,1/48 | 96 | 96 | 96 |
Bitdiepte (bit) | 16 | 16/24 | 16 | 24 | 16/24 | 24 | 24 | 24 |
Max. latency (ms) | 250 | 150 | 150 | 250 | 80 | 220 | ? | ? |
Het ontvangende apparaat, om het makkelijk te houden gaan we er in dit artikel van uit dat we hebben het over een smartphone die verbinding maakt met oordoppen en met de oordoppen communiceert over de beste codec die kan worden gebruikt. Sony-oordoppen zullen om LDAC vragen en Samsung-oordoppen om de Samsung Scalable Codec. Daarover later meer.
SBC
Je kunt SBC zien als een soort basiscodec. Alle apparaten met bluetooth ondersteunen het in principe. Er kan dus altijd op teruggevallen worden. Meestal is het echter niet de ideale codec om te gebruiken. Hoewel de maximale specificaties prima zijn, zoals je in de tabel kunt zien, heeft het variabele aspect in combinatie met verschillende implementaties van fabrikanten tot gevolg dat de kwaliteit vaak beperkt is in verhouding tot die van de andere bluetoothcodecs die we hier bespreken.
AAC
Dit is de codec die Apple prefereert. AAC gebruikt psychoakoestische modellen, maar je kunt het als Android-gebruiker doorgaans het best vermijden. Dat komt doordat de verschillende Android-fabrikanten er zeer verschillende implementaties op na houden en dat komt weer doordat Android geen gestandaardiseerde manier heeft om met de codec om te gaan. Het is bovendien een energieslurpende codec voor gebruik met Android. Als je echter een Apple-apparaat hebt, is het een prima codec en is de standaardbitrate 245kbit/s.
AptX
AptX is van Qualcomm. Deze codec is vooral belangrijk voor Android-gebruikers en bijna alle Android-telefoons ondersteunen hem. Hij is niet beschikbaar voor iOS-gebruikers. De reden waarom hij te prefereren is boven SBC voor Android-gebruikers, is dat de bitrate en samplerate niet al te zeer variëren. AptX heeft een bitrate van 352 of 384 en een samplerate van 44,1 of 48kHz. Daarmee is de kwaliteit in de praktijk consistenter.
AptX HD is simpelweg de high-definitionvariant van AptX. Met een bitrate van 576kbit/s, een bitdiepte van 24bit en een samplerate van 48kHz is deze codec superieur aan AptX. Je kunt hier zien welke apparaten het ondersteunen en daarmee of het wellicht zin heeft om oordoppen te kopen die het eveneens ondersteunen. Ook de signal-to-noiseverhouding is met AptX HD beter dan bij het reguliere AptX.
Er zijn nog meer AptX-telgen. AptX LL staat voor 'low latency' en heeft maximaal slechts 40ms vertraging. Het komt weinig voor, maar is eventueel interessant voor gaming en muziekproductie. Het wordt vervangen door het vrij nieuwe AptX Adaptive. Het idee ervan is dat het schaalbaarder is zonder de kwaliteit aan te tasten. Dat is althans het doel volgens Qualcomm. De codec heeft dus variabele bitrates tussen 279 en 420kbit/s, in tegenstelling tot de AptX-codecs hierboven. Die kiezen een vaste bitrate. Of Adaptive even goed kan zijn als AptX HD, is de vraag, maar volgens Qualcomm is dat het geval. Doordat de codec efficiënter omspringt met de data, moet de kwaliteit hoger zijn bij dezelfde bitrate dan bij AptX en AptX HD. Waar andere AptX-codecs en bijvoorbeeld LDAC verschillende bitratepresets hebben, schakelt AptX Adaptive daar continu tussen.
Dat is handig, omdat de verstoringen gemonitord worden, zodat teruggeschakeld kan worden naar een iets lagere bitrate als dat nodig is. Uitval kan dan worden vermeden. Daarnaast heeft het weinig zin om audio met lagere bitrates, die door streamingdiensten worden afgespeeld, met hogere bitrates te versturen. Dat kost immers meer bandbreedte en energie.
LDAC
LDAC is van Sony en is een goede high-end codec. Hoewel LDAC zoals je ziet in potentie een hogere samplerate en bitrate heeft, zijn de stappen tussen de verschillende kwaliteiten veel groter. LDAC heeft namelijk een bitrate van 330, 660 of 990kbit/s. AptX Adaptive is dan ook flexibeler en heeft bovendien een veel lagere latency, wat handig is voor bijvoorbeeld gaming. Als je echter lossless audio streamt, zoals met onder meer Tidal mogelijk is, profiteer je van de hogere bitrates en samplerates. Je koptelefoon moet dan uiteraard wel LDAC aankunnen.
Daar moet bij gezegd worden dat de getallen in werkelijkheid niet botweg te vergelijken zijn. Zo hadden we het al over een efficiëntere manier van data inpakken bij AptX Adaptive ten opzichte van de andere AptX-varianten, waardoor dezelfde fidelity gehaald kan worden met een lagere bitrate. Alsnog is dit in theorie de beste codec van dit moment voor de meesten, als je hoge kwaliteit audio wilt beluisteren.
Er is een manier om ervoor te zorgen dat LDAC altijd op de maximale bitrate van 990kbit/s opereert. Je moet dan in de Android-instellingen bij 'info' of 'over de telefoon' of iets dergelijks, afhankelijk van de fabrikant, herhaaldelijk op het Build-nummer tikken. Je krijgt dan ontwikkelaarsopties tot je beschikking. Vervolgens kun je dan terwijl je oordoppen verbonden zijn, onder netwerken de gebruikte audiocodec kiezen en als je LDAC kiest, ook de gewenste bitrate. Je kunt dan last krijgen van een minder consistente verbinding, maar je weet wel dat het geluid dat je hoort, de hoogst mogelijke kwaliteit heeft. Net als aan AptX, heb je als iOS-gebruiker ook weinig aan LDAC, tenzij je een aparte dac aansluit op je iOS-apparaat.
Samsung Scalable-codec
Veel Samsung-apparaten ondersteunen de Samsung Scalable-codec. Ondanks de hoge variatie in bitrate levert deze codec in de praktijk een prima audiokwaliteit en vooral ook stabiliteit. De werking ervan lijkt erg op die van AptX Adaptive. De bluetoothverstoringen worden gemonitord en op basis daarvan wordt de bitrate aangepast. Gebruikers van Samsung-smartphones en Samsung-oordoppen hoeven, net als bij AAC voor iOS-gebruikers, doorgaans niet verder na te denken; deze codec is vrijwel altijd de juiste keuze.
LHDC (HWA)
Een andere interessante codec is de Low Latency High-Definition Audio Codec, ofwel LHDC. Deze is vrij nieuw en is met Android 10 geïntroduceerd. Niet alle fabrikanten ondersteunen de codec. Xiaomi, Huawei en OPPO doen dat wel en dat is best fijn, want mocht je een apparaat bezitten dat ermee om kan gaan, dan is de maximale bitrate hoog. Hoewel we geen betrouwbare, precieze getallen kunnen vinden over de latency, zou die ook lager zijn dan die van veel andere codecs. Vooralsnog zijn er maar weinig koptelefoons die deze codec ondersteunen, maar wat niet is, kan nog komen.
Er zijn nog meer bluetoothcodecs dan we in dit artikel noemen, die minder vaak gebruikt worden. Zo is er bijvoorbeeld ook een lowlatencyversie van LHDC, LLAC genaamd. Deze is handig, je raadt het al, voor gamers. De belangrijkste codecs hebben we nu echter wel behandeld.
Tot slot
Tot zover dit overzicht van audiocodecs. Eigenlijk is er niet enorm veel dat je moet weten om goed geluid te krijgen via bluetooth, zeker als Apple-bezitter. Eigenlijk is de kous voor de meeste iOS-bezitters af bij AAC. Als je nieuwe oordoppen koopt, zorg er dan voor dat AAC ondersteund wordt, want anders ben je tot SBC veroordeeld.
Als Android-gebruiker is het zeker aan te raden om te checken welke codecs worden ondersteund door je verzendende en je ontvangende apparaat. Met de informatie uit dit achtergrondverhaal kun je vervolgens bepalen welke codec voor jou de beste is. Zoals gezegd kun je in de ontwikkelaarsopties van Android checken welke codec wordt gebruikt en eventueel overschakelen naar een andere of, zoals bij LDAC, naar een constante bitrate. Vooral als je een nieuwe hoofdtelefoon overweegt, is het natuurlijk zaak om goed te kijken welke codecs ondersteund worden. Koop je bijvoorbeeld een product als de Galaxy Buds Pro en je hebt geen Samsung-smartphone, dan zit je aan SBC of AAC vast, geen van beide een ideale optie voor Android-gebruikers.
Ben je een Spotify-gebruiker, dan is je maximale bitrate 320kbit/s en heb je aan een codec als AptX op Android voldoende. SBC is niet aan te raden, omdat de implementatie per apparaat erg verschilt en daardoor haal je de maximale 320kbit/s vaak niet in de praktijk. Luister je via streamingdiensten met een hogere kwaliteit, zoals Tidal, Qobuz en Deezer, dan is AptX HD, AptX Adaptive of LDAC in de praktijk vaak een goede keuze. Voor Samsung-gebruikers is Samsung Scalable prima.
Als je vooral naar de specificaties kijkt, kan het zijn dat je een veelgebruikte codec als AptX of zelfs AAC als inferieur beschouwt. Ook wij houden van optimaliseren en kiezen het liefst de hoogste kwaliteit als bijvoorbeeld de streamingdienst een hogere kwaliteit stream aanbiedt. Toch zullen veel mensen het verschil niet horen tussen AAC, AptX, AptX HD, LDAC en LHDC. Dat is echter natuurlijk ook afhankelijk van de kwaliteit van het ontvangende apparaat.
Heb je een dac of koptelefoon van hoge kwaliteit aangesloten die bijvoorbeeld LDAC of AptX HD ondersteunt, dan wil je uiteraard die codec gebruiken en niet SBC of AAC. Met een setje oordoppen van matige kwaliteit maakt het een stuk minder uit. Als je een Android-gebruiker bent: probeer vooral zelf eens uit of je het verschil hoort, door via de ontwikkelaarsopties te schakelen tussen codecs. De audiokwaliteit is echter veel afhankelijker van bijvoorbeeld de dac van je afspeelapparaat en de driver in je oordoppen, en hoe ze getuned zijn. Wat latency betreft is er echter wel veel verschil bij deze codecs onderling en als je aan audioproducties werkt of fervent gamer bent, is dit wel een belangrijke specificatie om op te letten. Zoek je oordopjes dan dus uit op basis van de latencyspec.
Hopelijk heb je na het lezen van dit overzichtsartikel een goed beeld gekregen van de opties en waar je op kunt letten, zodat je luisterervaring voortaan optimaal is.