Voorkennis: Om de 24 ms timing te begrijpen, moet je de DAB-klok van 2048 kHz begrijpen. In de volgende tekst wordt veel verwezen naar T (de periode van de klok 0,48828125 µs). Zie “Het magische getal 2048“.
Hoe passen verschillende soorten audiocompressie in hetzelfde 24 ms frame?
Om DAB/DAB+ audiotransport te begrijpen, moet je weten dat audiostreams bestaan uit een continue opeenvolging van zogenaamde audioframes. De audioframes volgen elkaar op om de continuïteit van de getransporteerde audio te garanderen. Elk frame transporteert een brok audio van een specifieke duur. Voor het transportmechanisme in DAB/DAB+ is de duur van een audioframe 24ms. Bijgevolg moeten deze audioframes (met de audiobits) om de 24 ms getransporteerd worden.
Hoe past 24 ms in de DAB-timing?
24 ms is vier keer 96 ms (de lengte van het DAB-transmissieframe of 196608 T klokperioden).
1 CIF is 196608 / 4 = 49152 T of 49152 T/2048 kHz = 24 ms
- Audioframes worden elke 24 ms verzonden door de multiplexer en komen aan op de ingang van de zender als ETI(LI)-frames
- Common Interleave Frames (CIF’s) worden elke 24 ms verzonden
- Het DAB/DAB+ zendframe is altijd een veelvoud van 24 ms!
- DAB Mode I 96 ms (zenden van 4 CIF’s per zendframe)
- DAB Mode II 24 ms (zenden van 1 CIF per zendframe)
- DAB Mode III 24 ms (1 CIF per frame uitzenden)
- DAB Mode IV 48 ms (2 CIF’s per frame uitzenden)
Een DAB Mode I-zender moet vier ETI-frames van 24 ms ontvangen om één zendframe van 96 ms uit te zenden. Hieruit blijkt al hoe belangrijk de 24 ms timing in de DAB-apparatuur is.
Wat is de oorsprong van de 24 ms timing?
Deze tijdsperiode komt voort uit de audio-encodering die gebaseerd is op een conversie van tijddomein naar frequentiedomein. Het omzetten van tijddomein naar frequentiedomein kan niet per sample worden gedaan. Om de conversie uit te voeren moet een groot aantal samples (een venster genoemd) in één keer verwerkt worden. Het aantal samples en hun bemonsteringsfrequentie bepalen de timing van het venster.
Het originele DAB gebruikt de MPEG 1/2-laag II audiocodec, die 1152 inputsamples per frame (PCM) omzet van tijd naar frequentiedomein. Layer II gebruikt altijd 1152 samples per frame om de conversie van tijd naar frequentiedomein te maken.
Destijds waren er twee sample rates beschikbaar in DAB 48 kHz en 24 kHz. Bij een samplefrequentie van 48 kHz geeft dit een frameduur van 24 ms.
1152 samples / 48kHz = 24 ms
Hier vinden we de oorsprong van de 24 ms. Bij een samplefrequentie van 24 kHz geeft dit een frameduur van 48 ms.
1152 samples / 24kHz = 48 ms
We zetten dus één 24 kHz bemonsterd frame in twee opeenvolgende DAB-frames van 24 ms.
Hoe zit het met het transporteren van MPEG 2 Layer III (MP3) via DAB?
MPEG 2 laag 3 is een speciaal geval met 576 samples per frame. Bij een bemonsteringsfrequentie van 48 kHz komen we uit op frames met een duur van 12 ms.
Berekening: 576 samples / 48kHz = 12 ms
Dit betekent dat je MP3 frames kunt transporteren met het DAB-systeem. Je hebt alleen twee opeenvolgende MP3 frames nodig om het DAB frame van 24 ms te vullen.
Het is echter onwaarschijnlijk dat DAB(+)-ontvangers de audio kunnen reproduceren, aangezien dit niet wordt ondersteund in de DAB(+)-specificaties.
Hoe zit het met het transporteren van HE-AAC over DAB?
Om DAB klaar te maken voor DAB+ (met HE-AAC) werd het iets ingewikkelder. Afhankelijk van de sample rate hebben HE-AAC frames een verschillend aantal samples om te converteren naar het frequentiedomein.
In AAC decodeert elk blok naar 1024 tijddomeinsamples. 1024 samples bij een bemonsteringsfrequentie van 48 kHz resulteren in een tijdsverloop van 1024/48 = 21,3333… ms. Houston we hebben een probleem!
De AAC-frameduur van 21.3333… past niet in de DAB-frameduur van 24 ms.
Het frameduurprobleem voor DAB+ oplossen
Eerst wordt het aantal samples/frame voor 48 kHz sample rate teruggebracht van 1024 samples naar 960 samples.
- Standaard AAC gebruikt 1024 samples per frame
- DAB+ gebruikt slechts 960 samples per frame!
- De HE-AAC-codering die we kennen is niet de HE-AAC-codering die wordt gebruikt voor DAB+!
Het aantal samples per frame voor 48 kHz resulteert in een frameduur van precies 20 ms.
960 samples / 48 kHz = 20 ms
Het aantal samples /frame voor 32 kHz sample rate wordt ook gereduceerd tot 960 samples. Dit resulteert in een frameduur van precies 30 ms.
960 samples / 32 kHz = 30 ms
De HE-AAC optie SBR deelt de bemonsteringsfrequentie door 2. Dit betekent dat 48 kHz met SBR de basis bemonsteringsfrequentie 24 kHz wordt.
960 monsters / 24 kHz = 40 ms
Ook de bemonsteringsfrequentie van 32 kHz resulteert in een basissamplefrequentie van 16 kHz. Of een frameduur van 60 ms.
960 samples / 16 kHz = 60 ms
Blijkbaar heeft de reductie van het AAC-frame van 1024 samples naar 960 niet het probleem opgelost van de frames van 24 ms die in DAB worden gebruikt!
120 ms is echter een veelvoud van 24 ms en alle AAC-frameduur 20, 30, 40 en 60 ms. Dit is de sleutel om het probleem op te lossen.
DAB+ werkt met superframes bestaande uit 5 opeenvolgende frames van 24 ms of superframes van 120 ms. Alle AAC frameduur past in het superframe.
- 960 samples bij 48 kHz plaatsen 6 DAB-frames in één DAB-superframe voor DAB+
- 960 samples bij 32 kHz zorgen voor 4 DAB-frames in één DAB-superframe voor DAB+
- 960 samples bij 24 kHz (48 kHz + SBR) brengen 3 DAB-frames in één DAB superframe voor DAB+
- 960 samples bij 16 kHz (32 kHz + SBR) zorgen voor 2 DAB-frames in één DAB-superframe voor DAB+
Desondanks blijft 24 ms een belangrijke sleutel om de DAB frame puzzel compleet te maken
De 24 ms is ook gerelateerd aan de klokperiode van DAB (2048 kHz), namelijk:
24 ms = 49 152 * T (met 1 ms = 2048 T)