These are chat archives for Opendigitalradio/mmbTools

2nd
Jun 2016
Matthias P. Braendli
@mpbraendli
Jun 02 2016 05:45
Hi you're nearly right, but not quite :-) In Transmission Mode I, one DAB frame is 96ms long, and contains the information from four ETI frames (4 * 24ms). The other modes are different, but same idea.
Oh you're speaking about MPEG audio frames!
Then everything I said is not applicable :-/
The only thing I'm certain about, is that one ETI frame contains 24ms worth of audio data.
Gabriel
@vvombat
Jun 02 2016 09:07
This message was deleted
Gabriel
@vvombat
Jun 02 2016 09:42
The only thing I'm certain about, is that one ETI frame contains 24ms worth of audio data.
Does audio data mean the finished encoded DAB+ audio frame? including header, crc etc.? To clarify: with finished I mean the DAB(+) audio frame as shown in ETSI 300 401 - 7.2.2.1 . Thanks for your time!
Gabriel
@vvombat
Jun 02 2016 10:45

Ok I got it now. I had audio coding wrong. One ETI frame contains always(!) 24ms worth of (audio) data as you said. That's why the mux_frame() in DabMultiplexer calls the readFrame of each input with a size of bitrate (in kbit/s) x 3. The input itself uses this size to read size x 5 (in byte) of the inputstream.
I calculated the DAB audio frame size to be bit_rate x 0,024 for 48 kHz sampling frequenzy and bit_rate x 0,048 for 24 kHz sampling frequenzy (in bit not byte!)

Example:
For 96 kbit/s bitrate the mux_frame() sets the size to be 96 x 3 = 288. In the DAB+ audio stream this size x 5 = 1440 byte (11520 bit) for total buffer length. One DAB(+) audio frame is 96000 x 0,024 = 2304 bits (288 byte) long. Meaning 1 ETI from with 24 ms worth of data would contain 5 DAB audio frames. The modulator will align these audio frames depending on transmission mode later on.

Thanks for your help and have a nice day! :)