Cosine-/Sine-Modulated Filter Banks pp 99-206 | Cite as

# Fast MDCT/MDST, MLT, ELT, and MCLT Algorithms

## Abstract

The perfect reconstruction cosine/sine-modulated analysis/synthesis filter banks such as the MDCT, MLT, MDST, ELT, and MCLT are fundamental processing components for the time-to-frequency transformation of an audio data block in many international audio coding standards, proprietary audio compression algorithms, broadcasting/speech/data communication codecs, as well as open-source royalty free audio/speech codecs for high quality audio/speech compression. Since the computations of cosine/sine-modulated filter banks are the most time-consuming operations in audio coding schemes, the crucial aspect for their applicability is the existence of fast algorithms that allow their efficient software/hardware implementation compared to the direct implementation via their corresponding analytical forms. In this chapter, fast algorithms for the efficient implementation of the forward/backward evenly stacked MDCT/MDST, oddly stacked MDCT/MDST, MLT, ELT, and MCLT block transforms are presented. The emphasis is imposed particularly on basic steps, various tricks (trigonometric and algebraic), and approaches leading to the derivation of final formulae of a fast algorithm. For each fast algorithm complete formulae or a sparse block matrix factorization, a corresponding generalized signal flow graph, the total computational complexity, and a possible structural simplification of the algorithm are presented.

## References

- 1.M. Bosi, R.E. Goldberg,
*Introduction to Digital Audio Coding and Standards*(Springer Science+Business Media, New York, 2003)Google Scholar - 2.H.S. Malvar,
*Signal Processing with Lapped Transforms*(Artech House, Norwood, MA, 1992)zbMATHGoogle Scholar - 3.H. Malvar, A modulated complex lapped transform and its applications to audio processing, in
*Proceedings of the IEEE ICASSP’99*, Phoenix, AR, May 1999, pp. 1421–1424Google Scholar - 4.J.P. Princen, A.B. Bradley, Analysis/synthesis filter bank design based on time domain aliasing cancellation. IEEE Trans. Acoust. Speech Signal Process.
**ASSP-34**(5), 1153–1161 (1986)Google Scholar - 5.J.P. Princen, A.W. Johnson, A.B. Bradley, Subband/transform coding using filter bank designs based on time domain aliasing cancellation, in
*Proceedings of the IEEE ICASSP’87*, Dallas, TX, April 1987, pp. 2161–2164Google Scholar - 6.A. Spanias, T. Painter, V. Atti,
*Audio Signal Processing and Coding*(Wiley-Interscience, Hoboken, NJ, 2007)Google Scholar

## Fast Algorithms for the Evenly Stacked MDCT/MDST

- 7.V. Britanak, An efficient computing of oddly stacked MDCT/MDST computation via evenly stacked MDCT/MDST and vice versa. Signal Process.
**85**(7), 1353–1374 (2005)zbMATHGoogle Scholar - 8.V. Britanak, K.R. Rao, A unified fast MDCT/MDST computation in the evenly stacked analysis/synthesis system. Circuits Syst. Signal Process.
**21**(4), 415–426 (2002)MathSciNetzbMATHGoogle Scholar - 9.G. Davidson, L. Fielder, M. Antil, High-quality audio transform coding at 128 kbits/s, in
*Proceedings of the IEEE ICASSP’90*, Alberquerque, NM, April 1990, pp. 1117–1120Google Scholar - 10.G. Davidson, L. Fielder, M. Antil, Low-complexity transform coder for satellite link applications, in
*89th AES Convention*, Los Angeles, CA, September 1990. Preprint #2966Google Scholar - 11.G. Davidson, W. Anderson, A. Lovrich, A low-cost adaptive transform decoder implementation for high-quality audio, in
*Proceedings of the IEEE ICASSP’92*vol. II, San Francisco, CA, April 1992, pp. 93–196Google Scholar - 12.A.G. Elder, S.G. Turner, A real-time PC based implementation of AC-2 digital audio compression, in
*95th AES Convention*, New York, NY, October 1993. Preprint #3773Google Scholar - 13.T.D. Lookabaugh, M.G. Perkins, Application of the Princen–Bradley filter bank to speech and image compression. IEEE Trans. Acoust. Speech Signal Process.
**38**(11), 1914–1926 (1990)Google Scholar - 14.D. Ševič, M. Popovič, Improved implementation of the Princen–Bradley filter bank. IEEE Trans. Signal Process.
**42**(11), 3260–3261 (1994)Google Scholar

## Fast Algorithms for the Oddly Stacked MDCT/MDST

- 15.K.C. Anup, B.A. Kumar, A new efficient implementation of TDAC synthesis filterbanks based on radix-2 FFT, in
*Proceedings of the 14th EUSIPCO Signal Processing Conference*, Florence, September 2006Google Scholar - 16.M. Bosi-Goldberg, Analysis/synthesis filtering system with efficient oddly stacked single sideband filter bank using time domain aliasing cancellation. US Patent Application No. 5890106, Dolby Labs, San Francisco, CA, March 1999Google Scholar
- 17.V. Britanak, Improved and extended mixed-radix decimation in frequency fast MDCT algorithm. Comput. Inform.
**29**(6), 1001–1012 (2010)MathSciNetzbMATHGoogle Scholar - 18.V. Britanak, K.R. Rao, A new fast algorithm for the unified forward and inverse MDCT/MDST computation. Signal Process.
**82**(3), 433–459 (2002)zbMATHGoogle Scholar - 19.D.-Y. Chan, J.-F. Yang, S.-Y. Chen, Regular implementation algorithms of time domain aliasing cancellation. IEE Proc. Vision Image Signal Process.
**143**(6), 387–392 (1996)Google Scholar - 20.M.-H. Cheng, Y.-H. Hsu, Fast IMDCT and MDCT algorithms – a matrix approach. IEEE Trans. Signal Process.
**51**(1), 221–229 (2003)MathSciNetzbMATHGoogle Scholar - 21.R.K. Chivukula, Y.A. Reznik, Efficient implementation of a class of MDCT/IMDCT filter banks for speech and audio coding applications, in
*Proceedings of the IEEE ICASSP’2008*, Las Vegas, NV, March–April 2008, pp. 213–216Google Scholar - 22.Y.-K. Cho, T.-H. Song, H.-S. Kim, An optimized algorithm for computing the modified discrete cosine transform and its inverse transform, in
*Proceedings of the IEEE Region 10 Conference TENCON’2004*, Chiang Mai, November 2004, pp. 626–628Google Scholar - 23.S. Cramer, R. Gluth, Computationally efficient real-valued filter banks based on a modified
*O*^{2}DFT, in*Proceedings of EUSIPCO’90, Signal Processing V: Theories and Applications*, Elsevier Science Publishers B.V., Barcelona, September 1990, pp. 585–588Google Scholar - 24.P. Duhamel, Y. Mahieux, J.P. Petit, A fast algorithm for the implementation of filter banks based on time domain aliasing cancellation, in
*Proceedings of the IEEE ICASSP’91*, Toronto, May 1991, pp. 2209–2212Google Scholar - 25.R. Gluth, Regular FFT-related transform kernels for DCT/DST-based polyphase filter banks, in
*Proceedings of the IEEE ICASSP’91*, Toronto, May 1991, pp. 2205–2208Google Scholar - 26.Z.G. Gui, Y. Ge, D.Y. Zhang, J.S. Wu, Generalized fast mixed-radix algorithm for the computation of forward and inverse MDCTs. Signal Process.
**92**(2), 363–373 (2012)Google Scholar - 27.Y.-T. Hwang, S.-C. Lai, A novel MDCT/IMDCT computing kernel design, in
*Proceedings of the IEEE Workshop on Signal Processing Systems Design and Implementation*, Athens, November 2005, pp. 526–531Google Scholar - 28.M. Iwadare, A. Sugiyama, F. Hazu, A. Hirano, T. Nishitani, A 128 kb/s hi-fi CODEC based on adaptive transform coding with adaptive block size MDCT. IEEE J. Sel. Areas Commun.
**10**(1), 138–144 (1992)Google Scholar - 29.H.-S. Kim, Y.-K. Cho, W.-P. Lee, A new optimized algorithm for computation of MDCT and its inverse transform, in
*Proceedings of the IEEE International Symposium on Intelligent Signal Processing and Communication Systems (ISPACS’2004)*, Seoul, November 2004, pp. 528–530Google Scholar - 30.S.-W. Lee, Improved algorithm for efficient computation of the forward and backward MDCT in MPEG audio coder. IEEE Trans. Circuits Syst. II, Analog Digit. Signal Process.
**48**(10), 990–994 (2001)Google Scholar - 31.T. Li, R. Zhang, R. Yang, H. Huang, F. Lin, A unified computing kernel for MDCT/IMDCT in modern audio coding standards, in
*Proceedings of the IEEE International Symposium on Communication and Information Technologies (ISCIT’2007)*, Sydney, October 2007, pp. 546–550Google Scholar - 32.B. Lincoln, An experimental high fidelity perceptual audio coder, Project in MUS420 Win97, Center for Computer Research in Music and Acoustics, Stanford University, CA 94305-8180 (1998). Web site: http://ccrma-www.stanford.edu/~bosse/proj/proj.html
- 33.C.-M. Liu, W.-C. Lee, A unified fast algorithm for cosine modulated filter banks in current audio coding standards. J. Audio Eng. Soc.
**47**(12), 1061–1075 (1999)Google Scholar - 34.Y. Mahieux, J.P. Petit, High-quality audio transform coding at 64 kbps. IEEE Trans. Commun.
**42**(11), 3010–3019 (1994)Google Scholar - 35.V. Nikolajevič, G. Fettweis, Improved implementation of MDCT in MP3 audio coding, in
*Proceedings of the IEEE 10th Asian–Pacific Conference on Communications and 5th International Symposium on Multi-Dimensional Mobile Communications (APCC/MDMC’2004)*, vol. 1, Tsinghua University, Beijing, August–September 2004, pp. 309–312Google Scholar - 36.D. Ševič, M. Popovič, A new efficient implementation of the oddly stacked Princen–Bradley filter bank. IEEE Signal Process Lett.
**1**(11), 166–168 (1994)Google Scholar - 37.X. Shao, S.G. Johnson, Type-IV DCT, DST and MDCT algorithms with reduced number of arithmetic operations. Signal Process.
**88**(6), 1313–1326 (2008)zbMATHGoogle Scholar - 38.H. Shu, X. Bao, C. Toumoulin, L. Luo, Radix-3 algorithm for the fast computation of forward and inverse MDCT. IEEE Signal Process. Lett.
**14**(2), 93–96 (2007)Google Scholar - 39.T. Sporer, K. Brandenburg, B. Edler, The use of multirate filter banks for coding of high quality digital audio, in
*Proceedings of the 6th European Signal Processing Conference (EUSIPCO)*, vol. 1, Amsterdam, June 1992, pp. 211–214Google Scholar - 40.T.K. Truong, P.D. Chen, T.C. Cheng, Fast algorithm for computing the forward and inverse MDCT in MPEG audio coding. Signal Process.
**86**(5), 1055–1060 (2006)zbMATHGoogle Scholar - 41.P.-S. Wu, Y.-T. Hwang, Efficient IMDCT core designs for audio signal processing, in
*Proceedings of the IEEE Workshop on Signal Processing Systems (SiPS’2003)*, Seoul, August 2003, pp. 275–280Google Scholar - 42.J.-S. Wu, H.-Z. Shu, L. Senhadji, L.-M. Luo, Mixed-radix algorithm for the computation of forward and inverse MDCTs. IEEE Trans. Circuits Syst. Regul. Pap.
**56**(4), 784–794 (2009)MathSciNetGoogle Scholar - 43.G. Wu, E.-H. Yang, A new efficient method of computing MDCT in MP3 audio coding, in
*Proceedings of the IEEE International Conference on Multimedia Information Networking and Security (MINES’2010)*, Nanjing Yiangsu, November 2010, pp. 63–67Google Scholar - 44.J. Wu, L. Wang, L. Senhadji, H. Shu, Improved radix-3 decimation-in-frequency algorithm for the fast computation of forward and inverse MDCT, in
*Proceedings of the IEEE International Conference on Audio, Language and Image Processing (ICALIP’2010)*, Shanghai, November 2010, pp. 694–699Google Scholar

## Fast MLT and ELT Algorithms

- 45.C.Y. Jing, H.-M. Tai, Fast algorithm for computing modulated lapped transform. Electron. Lett.
**37**(12), 796–797 (2001)Google Scholar - 46.C.Y. Jing, H.-M. Tai, Design and implementation of a fast algorithm for modulated lapped transform. IEE Proc. Image Signal Process.
**149**(1), 27–32 (2002)Google Scholar - 47.H.S. Malvar, Lapped transforms for efficient transform/sub-band coding. IEEE Trans. Acoust. Speech Signal Process.
**38**(6), 969–978 (1990)Google Scholar - 48.H.S. Malvar, Extended lapped transforms: fast algorithms and applications, in
*Proceedings of the IEEE ICASSP’91*, Toronto, May 1991, pp. 1797–1800Google Scholar - 49.H.S. Malvar, Fast algorithm for modulated lapped transform. Electron. Lett.
**27**(9), 775–776 (1991)Google Scholar - 50.H.S. Malvar, Extended lapped transforms: properties, applications, and fast algorithms. IEEE Trans. Signal Process.
**40**(11), 2703–2714 (1992)zbMATHGoogle Scholar - 51.H.S. Malvar, Fast algorithms for orthogonal and biorthogonal modulated lapped transforms, in
*Proceedings of IEEE Symposium on Advances in Digital Filtering and Signal Processing*, Victoria, June 1998, pp. 159–163Google Scholar

## Recursive/Regressive MDCT/MDST Filter Structures (oddly Stacked System)

- 52.C.-H. Chen, B.-D. Liu, J.-F. Yang, Recursive architectures for realizing modified discrete cosine transform and its inverse. IEEE Trans. Circuits Syst. II Analog Digit. Signal Process.
**50**(1), 38–45 (2003)Google Scholar - 53.H.C. Chiang, J.C. Liu, Regressive implementations for the forward and inverse MDCT in MPEG audio coding. IEEE Signal Process. Lett.
**3**(4), 116–118 (1996)Google Scholar - 54.T.W. Fox, A. Carriera, Goertzel implementations of the forward and inverse modified discrete cosine transform, in
*Proceedings of the IEEE Canadian Conference on Electrical and Computer Engineering (CCECE’2004)*, vol. 4, Niagara Falls, May 2004, pp. 2371–2374Google Scholar - 55.R. Koenig, T. Stripf, J. Becker, A novel recursive algorithm for bit-efficient realization of arbitrary length inverse modified cosine transforms, in
*Proceedings of the International Conference on Design, Automation and Test in Europe (DATE’2008)*, Munich, March 2008, pp. 604–609Google Scholar - 56.S.-C. Lai, S.-F. Lei, C.-H. Luo, Common architecture design of novel recursive MDCT and IMDCT algorithms for application to AAC, AAC in DRM, and MP3 codecs. IEEE Trans. Circuits Syst. Express Briefs
**56**(10), 793–797 (2009)Google Scholar - 57.S.-C. Lai, Y.-P. Yeh W.-C. Tseng, S.-F. Lei, Low-cost and high-accuracy design of fast recursive MDCT/MDST/IMDCT/IMDST algorithms and their realization. IEEE Trans. Circuits Syst. Express Briefs
**59**(1), 65–69 (2012)Google Scholar - 58.S.-F. Lei, S.-C. Lai, Y.-T. Hwang, C.-H. Luo, A high-precision algorithm for the forward and inverse MDCT using the unified recursive architecture, in
*Proceedings of the IEEE International Symposium on Consumer Electronics*, Algarve, April 2008, pp. 1–4Google Scholar - 59.S.-F. Lei, S.-C. Lai, P.-Y. Cheng, C.-H. Luo, Low complexity and fast computation for recursive MDCT and IMDCT algorithms. IEEE Trans. Circuits Syst. Express Briefs
**57**(7), 571–575 (2010)Google Scholar - 60.H. Li, P. Li, Y. Wang, An efficient hardware accelerator architecture for implementing fast IMDCT computation. Signal Process.
**90**(8), 2540–2545 (2010)zbMATHGoogle Scholar - 61.V. Nikolajevic, G. Fettweis, New recursive algorithms for the forward and inverse MDCT, in
*Proceedings of the IEEE Workshop on Signal Processing Systems: Design and Implementation (SiPS’2001)*, Antwerp, September 2001, pp. 51–57Google Scholar - 62.V. Nikolajevič, G. Fettweis, Computation of forward and inverse MDCT using Clenshaw’s recurrence formula. IEEE Trans. Signal Process.
**51**(5), 1439–1444 (2003)MathSciNetzbMATHGoogle Scholar - 63.V. Nikolajevič, G. Fettweis, New recursive algorithms for the unified forward and inverse MDCT/MDST. J. VLSI Sig. Proc. Systems Signal Image Video Technol.
**34**(3), 203–208 (2003)zbMATHGoogle Scholar

## Fast MCLT Algorithms

- 64.V. Britanak, New recursive fast radix-2 algorithm for the modulated complex lapped transform. IEEE Trans. Signal Process.
**60**(12), 6703–6708 (2012)MathSciNetzbMATHGoogle Scholar - 65.X. Chen, Q. Dai, A novel DCT-based algorithm for computing the modulated complex lapped transform. IEEE Trans. Signal Process.
**54**(11), 4480–4484 (2006)zbMATHGoogle Scholar - 66.Q. Dai, X. Chen, New algorithm for modulated complex lapped transform with symmetrical window function. IEEE Signal Process. Lett.
**11**(12), 925–928 (2004)Google Scholar - 67.X. Dai, M.D. Wagh, Fast algorithm for modulated complex lapped transform. IEEE Signal Process Lett.
**16**(1), 30–33 (2009)Google Scholar - 68.H. Malvar, Fast algorithm for the modulated complex lapped transform. IEEE Signal Process. Lett.
**10**(1), 8–10 (2003)Google Scholar - 69.H. Shu, J. Wu, L. Senhadji, L. Luo, New fast algorithm for modulated complex lapped transform with sine windowing function. IEEE Signal Process Lett.
**16**(2), 93–96 (2009)Google Scholar - 70.H.-M. Tai, C. Jing, Design and efficient implementation of a modulated complex lapped transform using pipeline technique. IEICE Trans. Fundam. Electron. Commun. Comput. Sci.
**E84-A**(5), 1280–1287 (2001)Google Scholar

## Supporting Literature

- 71.M.F. Aburdene, J. Zheng, R.J. Kozick, Computation of discrete cosine transform using Clenshaw’s recurrence formula. IEEE Signal Process Lett.
**2**(8), 155–156 (1995)Google Scholar - 72.G. Bi, Y. Zeng,
*Transforms and Fast Algorithms for Signal Analysis and Representation*, chap. 6 (Birkhäuser, Boston, 2004), pp. 207–245zbMATHGoogle Scholar - 73.E.O. Brigham, FFT transform applications (Chapter 9), in
*The Fast Fourier Transform and its Applications*(Prentice-Hall, Englewood Cliffs, NJ, 1988), pp. 188–191Google Scholar - 74.V. Britanak, K.R. Rao, The fast generalized discrete Fourier transforms: a unified approach to the discrete sinusoidal transforms computation. Signal Process.
**79**(12), 135–150 (1999)zbMATHGoogle Scholar - 75.V. Britanak, P. Yip, K.R. Rao,
*Discrete Cosine and Sine Transforms: General Properties, Fast Algorithms and Integer Approximations*(Academic, Elsevier Science, Amsterdam, 2007)Google Scholar - 76.L.-P. Chau, W.-C. Siu, Recursive algorithm for the discrete cosine transform with general lengths. Electron. Lett.
**30**(3), 197–198 (1994). Errata, Electron. Lett.**30**(7), 608 (1994)Google Scholar - 77.L.-P. Chau, W.-C. Siu, Efficient recursive algorithm for the inverse discrete cosine transform. IEEE Signal Process Lett.
**7**(10), 276–277 (2000)Google Scholar - 78.R.E. Crochiere, L.E. Rabiner, Multirate techniques in filter banks and spectrum analyzers and synthesizers (Chapter 7), in
*Multirate Digital Signal Pocessing*(Prentice-Hall, Englewood Cliffs, NJ, 1983), pp. 289–400Google Scholar - 79.P. Duhamel, Implementation of ‘Split-Radix’ FFT algorithms for complex, real, and real-symmetric data. IEEE Trans. Acoust. Speech Signal Process.
**ASSP-34**(2), 285–295 (1986)MathSciNetGoogle Scholar - 80.P. Duhamel, B. Piron, J.M. Etcheto, On computing the inverse DFT. IEEE Trans. Acoust. Speech Signal Process.
**ASSP-36**(2), 285–286 (1988)zbMATHGoogle Scholar - 81.G. Goertzel, An algorithm for the evaluation of finite trigonometric series. Am. Math. Mon.
**65**, 34–35 (1958)MathSciNetGoogle Scholar - 82.S.G. Johnson, M. Frigo, A modified split-radix FFT with fewer arithmetic operations. IEEE Trans. Signal Process.
**55**(1), 111–119 (2007)MathSciNetzbMATHGoogle Scholar - 83.C.W. Kok, Fast algorithm for computing discrete cosine transform. IEEE Trans. Signal Process.
**45**(3), 757–760 (1997)Google Scholar - 84.K.R. Rao, J.J. Hwang,
*Techniques and Standards for Image, Video, and Audio Coding*(Prentice Hall, Upper Saddle River, NJ, 1996)Google Scholar - 85.H.V. Sorensen, M.T. Heideman, C.S. Burrus, On computing the split-radix FFT, IEEE Trans. Acoust. Speech Signal Process.
**ASSP-34**(1), 152–156 (1986)Google Scholar - 86.H.V. Sorensen, D.L. Jones, M.T. Heideman, Real-valued fast Fourier transform algorithms. IEEE Transactions on Acoustics, Speech and Signal Processing
**ASSP-35**(6), 849–863 (1987)Google Scholar - 87.Z. Wang, G.A. Julien, W.C. Miller, Recursive algorithm for the forward and inverse discrete cosine transform with arbitrary length. IEEE Signal Process. Lett.
**1**(7), 101–102 (1994)Google Scholar