From: aamer on
Hi Friends,

Any reasons on why MDCT is preferred over FFT in audio codecs(eg. Ogg
Vorbis).

Thanks and regards
aamer
From: dbd on
On Jun 21, 3:58 pm, "aamer" <raqeeb...(a)yahoo.com> wrote:
> Hi Friends,
>
> Any reasons on why MDCT is preferred over FFT in audio codecs(eg. Ogg
> Vorbis).
>
> Thanks and regards
> aamer

Because of the potential for TDAC, see:

http://www-ccrma.stanford.edu/~bosse/proj/node27.html

http://en.wikipedia.org/wiki/Modified_discrete_cosine_transform

Dale B. Dalrymple
http://dbdimages.com
From: Chris Felton on

> Any reasons on why MDCT is preferred over FFT in audio codecs(eg. Ogg
> Vorbis).

Couple reasons, first question is why is the DCT used instead of the
DFT (fast version of both transforms exist, image compression
literature is a good resource for DCT vs. DFT). This is mainly due to
the property of energy compaction. On average the DCT represents the
energy of a signal in less bins than the DFT, this leads to easier/
better compression.

Also as mentioned, TDAC (time domain aliasing cancellation) is where
the MDCT comes into play. Also, version of the "TDAC" for the DFT,
usually use the general overlap and add algorithms (similar to the
MDCT algorithm).

Later compression standards (AAC) doesn't use the poly-phase filter
bank that MP3 does, I am pretty sure Ogg Vorbis is the same. The
audio signal is sent directly to the MDCT and the outputs of the MDCT
is the data that is compressed. The perceptual coding (decision what
to keep) usually uses a standard FFT.


From: glen herrmannsfeldt on
Chris Felton wrote:

> Couple reasons, first question is why is the DCT used instead of the
> DFT (fast version of both transforms exist, image compression
> literature is a good resource for DCT vs. DFT). This is mainly due to
> the property of energy compaction. On average the DCT represents the
> energy of a signal in less bins than the DFT, this leads to easier/
> better compression.

The reason should be that DCT has appropriate boundary conditions,
but then one result is better energy compaction.

Note that DFT has periodic boundary conditions, so that the output
of the inverse transform is the same on both ends. (Both sides of
the unit cell in video terms.) With enough high frequency terms
it can approximate a gradient, but DCT does it much better.

-- glen