Claims
- 1. An audio decoder which comprises:
- a control module; and
- a data path configured to receive input audio samples, to scale audio samples, to add audio samples, and to produce output audio samples in accordance with control signals and coefficients from the control module,
- wherein the control module is configured to direct the data path to carry out a standardized set of downmix equations to convert from a specified number of input audio channels In# to a specified number of output audio channels Out#, wherein the standardized set of equations includes: ##EQU2## and wherein a,b,c,d,e,f g,h,i,j,k,m,n,p,q represent downmix coefficients.
- 2. The audio decoder of claim 1, wherein the specified number of input source channels is a configurable parameter with a value between one and seven.
- 3. The audio decoder of claim 1, wherein the specified number of output source channels is a user-configurable parameter with a value between one and seven, wherein the specified number of output source channels is indicative of an audio system playback capability and is used by the control module to determine a subset of audio downmixing equations to be implemented on the input audio channels.
- 4. The audio decoder of claim 1, wherein when the specified number of output audio channels is one, the control module is configured to direct the data path to carry out the following downmix equation:
- Out0=a.multidot.In0+g.multidot.In1+d.multidot.In2+b.multidot.In3+c.multidot.In4+h.multidot.In5.
- 5.
- 5. The audio decoder of claim 3, wherein the downmix coefficients are programmable to allow any number of input audio channels to be downmixed to any number of output audio channels for both karaoke and conventional input formats including monophonic, stereo, and multi-channel surround sound stereo.
- 6. The audio decoder of claim 1, wherein the control module includes control registers configured to store the specified number of input channels, the specified number of output channels, and the downmix coefficients, and wherein the control module accesses the control registers to implement the downmix equations.
- 7. The audio decoder of claim 1, wherein control module is further configured to direct the data path to transform blocks of coefficients into blocks of input audio samples.
- 8. The audio decoder of claim 7, further comprising an input memory having an input buffer, an intermediate value buffer, and output channel buffers, wherein the data path is configurable to retrieve coefficients from the input buffer and store input audio samples in the intermediate value buffer, wherein the data path is configurable to retrieve input audio samples from the intermediate value buffer and store downmixed samples in the output channel buffers.
- 9. The audio decoder of claim 1, wherein default coefficient values are set according to parameters specified in an encoded audio bitstream.
- 10. The audio decoder of claim 9, wherein the coefficients are programmable by a user.
- 11. The audio decoder of claim 9, wherein the coefficients are programmable for balance control of output channels.
- 12. The audio decoder of claim 11, wherein the coefficients m, n, q are programmable to provide volume control of surround channels Out3, Out4 relative to front channels Out0, Out1, Out2.
- 13. A multimedia decoder which implements a standardized set of audio downmix equations, wherein the multimedia decoder comprises:
- a microprocessor configured to receive a multimedia bitstream and configured to convert the multimedia bitstream into a partially decompressed video data stream and a decompressed audio data stream;
- a memory coupled to the microprocessor to buffer the partially decompressed video data in a video channel buffer and to buffer the decompressed audio data in an audio channel buffer;
- a video decoder coupled to the memory to retrieve the partially decompressed video data and configured to decode the partially decompressed video data to produce a digital video signal; and
- an audio decoder which includes:
- a control module; and
- a data path configured to receive the decompressed audio data stream and configured to scale audio data and add audio data to produce output audio samples in accordance with coefficients and control signals from the control module,
- wherein the control module is configured to direct the data path to carry out a standardized set of downmix equations to convert from a specified number of input audio channels to a specified number of output audio channels, wherein the standardized set of equations includes: ##EQU3## and wherein a,b,c,d,e,f,g,h,i,j,k,m,n,p,q represent downmix coefficients.
- 14. The multimedia decoder of claim 13, wherein the microprocessor is coupled to the control module to program the downmix coefficients in dedicated control registers for use by the control module, wherein the microprocessor determines default downmix coefficient values from the multimedia bitstream.
- 15. The multimedia decoder of claim 13, wherein the microprocessor is coupled to the control module to program the downmix coefficients, wherein the microprocessor determines the downmix coefficients according to a specified output mode indicative of which output channels are desired.
- 16. The multimedia decoder of claim 15, wherein if the specified output mode is karaoke mode, downmix coefficients m, n, p, q are set to zero.
- 17. The multimedia decoder of claim 13, wherein the microprocessor is configured to program the control module with user-specified downmix coefficients.
- 18. A method for converting a first number of encoded audio source channels into a second number of decoded audio output channels, wherein the method comprises:
- transforming a block of encoded audio data from each audio source channel into a respective block of audio samples;
- determining a contribution of an audio sample from each block of source channel audio samples to a corresponding audio sample for each block of output channel audio samples, wherein the determination includes multiplying the audio sample by a downmix coefficient which corresponds to the source channel and the output channel according to the following equation: ##EQU4## whereby compliance with more than one audio compression standard is provided using no more than 15 downmix coefficients a,b,c,d,e,f,g,h,i,j,k,m,n,p,q.
- 19. The method of claim 18, further comprising:
- parsing a compressed audio bitstream to find a specified number of input channels;
- comparing a specified number of output channels to the specified number of input channels; and
- parsing the compressed audio bitstream to find default values for the downmix coefficients.
- 20. The method of claim 18, further comprising:
- parsing a compressed audio bitstream to find a specified number of input channels;
- comparing a user-specified number of output channels to the specified number of input channels; and
- setting the downmix coefficients with user-programmed values.
RELATED APPLICATIONS
This application is a continuation in part of U.S. patent application Ser. No. 08/642,520 entitled "Microarchitecture of audio core for an MPEG-2 and AC-3 decoder", and filed on May 3, 1996 with inventors Mahadev S. Kolluru and Srinivasa R. Malladi. This application is further related to U.S. patent application Ser. No. 09/098,662 entitled "Audio decoder with a reconfigurable downmixing/windowing pipeline and method therefor" with inventors M. Kolluru, P. Kwok and S. Soman, and is filed concurrently therewith.
US Referenced Citations (7)