Fast synthesis sub-band filtering method for digital signal decoding
AssigneeSTMicroelectronics Asia Pacific Pte Ltd
InventorsGeorge Sapna, Haiyun Yang
Life of this patent
Estimating the term…
Abstract
In order to reproduce audio signals which have been compressed or encoded for storage or transmission using, for example, MPEG audio encoding, a synthesis sub-band filter is employed which performs an inverse modified discrete cosine transform. The computational cost of the IMDCT implementation is reduced by pre-calculating arrays of sum and difference data. The arrays of sum and difference data are then used in two separate transform calculations, the results of which can be used in the generation of pulse code modulation audio data.
Claims20
A method of decoding electronically stored digital audio data, comprising:
- retrieving with a first electronic circuit an input sequence of data elements representing encoded audio samples;
- pre-processing the input sequence of data elements with a second electronic circuit to produce an array of sum data and an array of difference data using selected data elements from the input sequence;
- producing with the second electronic circuit a first sequence of output values using the array of sum data;
- producing with the second electronic circuit a second sequence of output values using the array of difference data;
- and
- forming with the second electronic circuit decoded audio signals from the first and second sequences of output values by post-processing the first and second sequences of output values to form the decoded audio signals.
A method to reduce power during decode of digital audio data, comprising
- unpacking a stored sequence of N samples of digital audio data;
- storing a sum array of N/2 samples of digital audio data, forming the sum array by a plurality of addition operations of different first and second samples from the sequence of N samples of digital audio data such that each entry of the sequence of N samples of digital audio data has been used once;
- storing a difference array of N/2 samples of digital audio data, forming the difference array by a plurality of subtraction operations of different first and second samples corresponding to the different first and second samples used to form the sum array;
- transformationally calculating a first sequence of decoded values using the sum array of N/2 samples of digital audio data;
- transformationally calculating a second sequence of decoded values using the difference array of N/2 samples of digital audio data;
- and
- storing a sequence of N output values, the sequence formed by alternately drawing samples from the first sequence of decoded values and second sequence of decoded values.
A computer readable media storing instructions that are executable by an audio decoder circuit to cause an electronic chipset to:
- obtain an input sequence of N encoded audio samples;
- divide the input sequence into two equal segments;
- preprocess the input sequence of N encoded audio samples to produce an array of sum data and an array of difference data using selected data elements from the two segments;
- produce a first sequence of output values using the array of sum data;
- produce a second sequence of output values using the array of difference data;
- and
- form a sequence of N decoded audio signals from the first and second sequences of output values.
A low power digital audio decoder, comprising:
- a bitstream unpacking and decoding circuit configured to retrieve and unpack a sequence of N samples of digital audio data;
- a reconstruction circuit configured to store a sum array of N/2 samples of digital audio data, the sum array formed by a plurality of addition operations of different first and second samples from the sequence of N samples of digital audio data such that each entry of the sequence of N samples of digital audio data has been used once, the reconstruction circuit further configured to store a difference array of N/2 samples of digital audio data, the difference array formed by a plurality of subtraction operations of different first and second samples corresponding to the different first and second samples used to form the sum array;
- and
- an inverse mapping circuit configured to transformationally calculate a first sequence of decoded values using the sum array of N/2 samples of digital audio data and transformationally calculate a second sequence of decoded values using the difference array of N/2 samples of digital audio data;
- and
- an output configured to store a sequence of N output values, the sequence formed by alternately drawing samples from the first sequence of decoded values and the second sequence of decoded values.
Dependencies are inferred from the claim text.