next up previous contents
Next: A Fast MDCT Implementation Up: Transforming Previous: Transforming

Modified Discrete Cosine Transform (MDCT)

  The MDCT is a linear orthogonal lapped transform, based on the idea of time domain aliasing cancellation (TDAC). It was first introduced in [7], and further developed in [8].

MDCT is critically sampled, which means that though it is 50% overlapped, a sequence data after MDCT has the same number of coefficients as samples before the transform (after overlap-and-add). This means, that a single block of IMDCT data does not correspond to the original block on which the MDCT was performed. When subsequent blocks of inverse transformed data are added (still using 50% overlap), the errors introduced by the transform cancels out tex2html_wrap_inline1074 TDAC. Thanks to the overlapping feature, the MDCT is very useful for quantization. It effectively removes the otherwise easily detectable blocking artifact between transform blocks. The used definition of MDCT is (a slight modification from [9]) is:


and the IMDCT:


where f(x) is a window with certain properties (see [9]). The sine window


has the right properties, and is used in this coder. The MDCT in the coder is performed with a length of 512, and thus 256 new samples are used for every block.

Bosse Lincoln
Sat Mar 7 16:27:43 PST 1998