首页>
外国专利>
Method of implementing an inverse modified discrete cosine transform (IMDCT) in a dial-mode audio decoder
Method of implementing an inverse modified discrete cosine transform (IMDCT) in a dial-mode audio decoder
展开▼
机译:在拨号模式音频解码器中实现逆修正离散余弦变换(IMDCT)的方法
展开▼
页面导航
摘要
著录项
相似文献
摘要
A method of implementing a dual-mode audio decoder and filter is provided. The inverse modified discrete cosine transform (IMDCT) method and circuit for a dual-mode audio decoder perform the IMDCT with respect to a signal encoded using either the MPEG or Dolby AC-3 standard by utilizing a shared fast Fourier transform (FFT) circuit thereby simplifying the necessary hardware construction. Also, the number of IMDCT outputs used for windowing is reduced by utilizing the properties of the IMDCT outputs of the MPEG bit stream and thus the size of memory necessary for storing the IMDCT outputs is reduced. The invented method includes identifying an AC-3 or MPEG bit stream; forming either an AC-3 sequence or an MPEG sequence; (a) multiplying the AC-3 sequence by a predetermined pre-twiddling factor, performing an inverse FFT on the pre-twiddled AC-3; and multiplying by a predetermined post-twiddling factor; or (b) performing an FFT on the MPEG sequence and multiplying by a predetermined twiddling factor; and rearranging the twiddled MPEG function. Forming the MPEG sequence preferably includes adding a mirror image of the MPEG bit stream to the received MPEG bit stream. An IMDCT circuit includes storage for the bit streams and the IMDCT output signals; a butterfly module for Fourier transforming; a ROM for storing Fourier transform coefficients; storage for the bit streams, the real parts, and the imaginary parts of the sequences; generating addresses of the storage and the ROM; and a state machine for generating control signals for controlling the butterfly module, the address generator, and the storage. Briefly, storage of the IMDCT outputs is reduced by applying stored window coefficients to an array of IMDCT output blocks, whereby alternate multiplication and storage of ranges of IMDCT outputs and window coefficients are stored in successive ranges of the window, shifting the array by one block, inputting new IMDCT outputs, and overlapping and adding the multiplied ranges of stored IMDCT outputs.
展开▼