Claims
- 1. A multi-channel audio decoder for reconstructing multiple audio channels up to a decoder sampling rate from a data stream, in which each audio channel was sampled at an encoder sampling rate that is at least as high as the decoder sampling rate, subdivided into a plurality of frequency subbands, compressed and multiplexed into the data stream at a transmission rate, comprising:
- an input buffer for reading in and storing the data stream a frame at a time, each of said frames including a sync word, a frame header, an audio header, and at least one subframe, which includes audio side information, a plurality of sub-subframes having baseband audio codes over a baseband frequency range, a block of high sampling rate audio codes over a high sampling rate frequency range, and an unpack sync;
- a demultiplexer that a) detects the sync word, b) unpacks the frame header to extract a window size that indicates a number of audio samples in the frame and a frame size that indicates a number of bytes in the frame, said window size being set as a function of the ratio of the transmission rate to the encoder sampling rate so that the frame size is constrained to be less than the size of the input buffer, c) unpacks the audio header to extract the number of subframes in the frame and the number of encoded audio channels, and d) sequentially unpacks each subframe to extract the audio side information including the number of sub-subframes, demultiplex the baseband audio codes in each sub-subframe into the multiple audio channels and unpack each audio channel into its subband audio codes, demultiplex the high sampling rate audio codes into the multiple audio channels up to the decoder sampling rate and skip the remaining high sampling rate audio codes up to the encoder sampling rate, and detects the unpack sync to verify the end of the subframe;
- a baseband decoder that uses the side information to decode the subband audio codes into reconstructed subband signals a subframe at a time without reference to any other subframes;
- a baseband reconstruction filter that combines each channel's reconstructed subband signals into a reconstructed baseband signal a subframe at a time;
- a high sampling rate decoder that uses the side information to decode the high sampling rate audio codes up to the decoder sampling rate into a reconstructed high sampling rate signal for each audio channel a subframe at a time; and
- a channel reconstruction filter that combines the reconstructed baseband and high sampling rate signals into a reconstructed multi-channel audio signal a subframe at a time.
- 2. The multi-channel audio decoder of claim 1, wherein the baseband decoder comprises a plurality of inverse adaptive differential pulse code modulation (ADPCM) coders for decoding the respective subband audio codes, said side information including prediction coefficients for the respective ADPCM coders and a prediction mode (PMODE) for controlling the application of the prediction coefficients to the respective ADPCM coders to selectively enable and disable their prediction capabilities.
- 3. The multi-channel audio decoder of claim 1, wherein said side information comprises:
- a bit allocation table for each channel's subbands, in which each subband's bit rate is fixed over the subframe;
- at least one scale factor for each subband in each channel; and
- a transient mode (TMODE) for each subband in each channel that identifies the number of scale factors and their associated sub-subframes, said baseband decoder scaling the subbands' audio codes by the respective scale factors in accordance with their TMODEs to facilitate decoding.
- 4. The multi-channel audio decoder of claim 1, wherein said baseband decoder comprises:
- an inverse predictive coder for decoding the lower frequency subbands; and
- an inverse vector quantizer (VQ) for decoding the higher frequency subbands.
- 5. The multi-channel audio decoder of claim 1, wherein the baseband frequency range extends from DC to a first break frequency, the high sampling rate frequency range extends from the first break frequency to one-half the encoder sampling rate, and the decoder sampling rate lies between twice the first break frequency and the encoder sampling rate.
- 6. The multi-channel audio decoder of claim 5, wherein the high sampling rate frequency range is subdivided into a plurality of frequency subranges at successively higher break frequencies, said decoder sampling rate being equal to one of said break frequencies.
- 7. The multi-channel audio decoder of claim 1, wherein said audio header includes a joint frequency coding (JFC) index that indicates whether JFC is enabled, which subbands are joint frequency coded, and in which audio channel the subband audio code is located, further comprising:
- a JFC controller that responds to the JFC index by directing the baseband audio codes for the designated subbands from the one designated audio channel to the other JFC channels.
- 8. A multi-channel audio decoder for reconstructing multiple audio channels up to a decoder sampling rate from a data stream, in which each audio channel was sampled at an encoder sampling rate that is at least as high as the decoder sampling rate, subdivided into a plurality of frequency subbands, compressed and multiplexed into the data stream at a transmission rate, comprising:
- an input buffer for reading in and storing the data stream a frame at a time, each of said frames including a sync word, a frame header, an audio header, and at least one subframe, which includes audio side information, a plurality of sub-subframes having baseband audio codes over a baseband frequency range, a block of high sampling rate audio codes over a high sampling rate frequency range, and an unpack sync;
- a demultiplexer that a) detects the sync word, b) unpacks the frame header to extract a window size that indicates a number of audio samples in the frame and a frame size that indicates a number of bytes in the frame, said window size being set as a function of the ratio of the transmission rate to the encoder sampling rate so that the frame size is constrained to be less than the size of the input buffer, c) unpacks the audio header to extract the number of subframes in the frame and the number of encoded audio channels, and d) sequentially unpacks each subframe to extract the audio side information, demultiplex the baseband audio codes in each sub-subframe into the multiple audio channels and unpack each audio channel into its subband audio codes, demultiplex the high sampling rate audio codes into the multiple audio channels up to the decoder sampling rate and skip the remaining high sampling rate audio codes up to the encoder sampling rate, and detects the unpack sync to verify the end of the subframe;
- a baseband decoder that uses the side information to decode the subband audio codes into reconstructed subband signals a subframe at a time without reference to any other subframes;
- a baseband reconstruction filter that combines each channel's reconstructed subband signals into a reconstructed baseband signal a subframe at a time, the baseband reconstruction filter comprising a non-perfect reconstruction (NPR) filterbank and a perfect reconstruction (PR) filterbank, and said frame header including a filter code that selects one of said NPR and PR filterbanks;
- a high sampling rate decoder that uses the side information to decode the high sampling rate audio codes into a reconstructed high sampling rate signal for each audio channel a subframe at a time; and
- a channel reconstruction filter that combines the reconstructed baseband and high sampling rate signals into a reconstructed multi-channel audio signal a subframe at a time.
- 9. A multi-channel audio decoder for reconstructing multiple audio channels from a data stream, in which each audio channel was sampled at an encoder sampling rate, subdivided into a plurality of frequency subbands, compressed and multiplexed into the data stream, comprising:
- an input buffer for reading in and storing the data stream a frame at a time, each of said frames including a sync word, a frame header, an audio header, and at least one subframe, which includes a block of baseband audio codes over a baseband frequency range and a block of high sampling rate audio codes over an high sampling rate frequency range;
- a demultiplexer that a) detects the sync word, b) unpacks the frame header to extract an encoder sampling rate, c) unpacks the audio header to extract a packing arrangement and a coding format for the audio frame, and d) successively unpacks each subframe by demultiplexing each block of baseband audio codes into the multiple audio channels and unpacking each audio channel into its subband audio codes, demultiplexing the block of high sampling rate audio codes into the multiple audio channels up to a decoder sampling rate and skipping the remaining high sampling rate audio codes up to the encoder sampling rate;
- a baseband decoder that decodes the subband audio codes into respective reconstructed subband signals a subframe at a time;
- a baseband reconstruction filter that combines each channel's reconstructed subband signals into a reconstructed baseband signal a subframe at a time;
- a high sampling rate decoder that decodes the high sampling rate audio codes up to the decoder sampling rate into a reconstructed high sampling rate signal for each audio channel a subframe at a time; and
- a channel reconstruction filter that combines the reconstructed baseband and high sampling rate signals into a reconstructed multi-channel audio signal a subframe at a time.
- 10. The multi-channel audio decoder of claim 9, wherein the baseband frequency range extends from DC to a first break frequency and the high sampling rate frequency range is subdivided into a plurality of frequency subranges at successively higher break frequencies, said decoder sampling rate being equal to one of said break frequencies.
- 11. The multi-channel audio decoder of claim 9, wherein each subframe includes side information for that subframe and only that subframe so that the baseband and high sampling rate decoders decode the subband audio codes and high sampling rate audio codes, respectively, a subframe at a time without reference to any of the other subframes.
- 12. A multi-channel audio decoder for reconstructing multiple audio channels from a data stream, in which each audio channel was sampled at an encoder sampling rate, subdivided into a plurality of frequency subbands, compressed and multiplexed into the data stream at a transmission rate, comprising:
- an input buffer for reading in and storing the data stream a frame at a time, each of said frames including a sync word, a frame header, an audio header, and at least one subframe, which includes audio side information, and a plurality of sub-subframes having audio codes;
- a demultiplexer that a) detects the sync word, b) unpacks the frame header to extract a window size that indicates a number of audio samples in the frame and a frame size that indicates a number of bytes in the frame, said window size being set as a function of the ratio of the transmission rate to the encoder sampling rate so that the frame size is constrained to be less than the size of the input buffer, c) unpacks the audio header to extract the number of subframes in the frame and the number of encoded audio channels, and d) sequentially unpacks each subframe to extract the audio side information including the number of sub-subframes, and demultiplex the audio codes in each sub-subframe into the multiple audio channels and unpack each audio channel into its subband audio codes;
- a decoder that uses the side information to decode the subband audio codes into reconstructed subband signals a subframe at a time without reference to any other subframes; and
- a reconstruction filter that combines each channel's reconstructed subband signals into a reconstructed multi-channel audio signal a subframe at a time.
- 13. The multi-channel audio decoder of claim 12, wherein the baseband decoder comprises a plurality of inverse adaptive differential pulse code modulation (ADPCM) coders for decoding the respective subband audio codes, said side information including prediction coefficients for the respective ADPCM coders and a prediction mode (PMODE) for controlling the application of the prediction coefficients to the respective ADPCM coders to selectively enable and disable their prediction capabilities.
- 14. The multi-channel audio decoder of claim 13, wherein said side information comprises:
- a bit allocation table for each channel's subbands, in which each subband's bit rate is fixed over the subframe;
- at least one scale factor for each subband in each channel; and
- a transient mode (TMODE) for each subband in each channel that identifies the number of scale factors and their associated sub-subframes, said baseband decoder scaling the subbands' audio codes by the respective scale factors in accordance with their TMODEs to facilitate decoding.
- 15. The multi-channel audio decoder of claim 13, wherein said baseband decoder comprises:
- an inverse predictive coder for decoding the lower frequency subbands; and
- an inverse vector quantizer (VQ) for decoding the higher frequency subbands.
- 16. A multi-channel audio decoder for reconstructing multiple audio channels from a data stream, in which each audio channel was sampled at an encoder sampling rate, subdivided into a plurality of frequency subbands, compressed and multiplexed into the data stream, comprising:
- an input buffer for reading in and storing the data stream a frame at a time, each of said frames including a sync word, a frame header that includes a filter code that selects one of a non-perfect reconstruction (NPR) filterbank and a perfect reconstruction (PR) filterbank, an audio header, and at least one subframe, which includes a block of baseband audio codes over a baseband frequency range, and a block of high sampling rate audio codes over an high sampling rate frequency range, and an unpack sync;
- a demultiplexer that a) detects the sync word, b) unpacks the frame header to extract an encoder sampling rate, c) unpacks the audio header to extract a packing arrangement and a coding format for the audio frame, and d) successively unpacks each subframe by demultiplexing each block of baseband audio codes into the multiple audio channels and unpacking each audio channel into its subband audio codes, demultiplexing the block of high sampling rate audio codes into the multiple audio channels up to a decoder sampling rate and skipping the remaining high sampling rate audio codes up to the encoder sampling rate;
- a baseband decoder that uses the selected NPR or PR filterbank to decode the subband audio codes into respective reconstructed subband signals a subframe at a time;
- a baseband reconstruction filter that combines each channel's reconstructed subband signals into a reconstructed baseband signal a subframe at a time;
- a high sampling rate decoder that decodes the high sampling rate audio codes into a reconstructed high sampling rate signal for each audio channel a subframe at a time; and
- a channel reconstruction filter that combines the reconstructed baseband and high sampling rate signals into a reconstructed multi-channel audio signal a subframe at a time.
- 17. The multi-channel audio decoder of claim 16, wherein the baseband frequency range extends from DC to a first break frequency, the high sampling rate frequency range extends from the first break frequency to one-half the encoder sampling rate, and the decoder sampling rate lies between twice the first break frequency and the encoder sampling rate.
- 18. The multi-channel audio decoder of claim 17, wherein the high sampling rate frequency range is subdivided into a plurality of frequency subranges at successively higher break frequencies, said decoder sampling rate being equal to one of said break frequencies.
- 19. A multi-channel audio decoder for reconstructing multiple audio channels from a data stream, in which each audio channel was sampled at an encoder sampling rate, subdivided into a plurality of frequency subbands, compressed and multiplexed into the data stream at a transmission rate, comprising:
- an input buffer for reading in and storing the data stream a frame at a time, each of said frames including a frame header, an audio header, and at least one subframe, which includes audio side information and audio codes;
- a demultiplexer that a) unpacks the frame header to extract a window size that indicates a number of audio samples in the frame, said window size being set as a function of the ratio of the transmission rate to the encoder sampling rate so that the frame size is constrained to be less than the size of the input buffer, b) unpacks the audio header to extract the number of subframes in the frame and the number of encoded audio channels, and c) sequentially unpacks each subframe to extract the audio side information, and demultiplex the audio codes into the multiple audio channels and unpack each audio channel into its subband audio codes;
- a decoder that uses the side information to decode the audio codes into reconstructed subband signals a subframe at a time; and
- a reconstruction filter that combines each channel's reconstructed subband signals into a reconstructed multi-channel audio signal a subframe at a time.
- 20. The multi-channel audio decoder of claim 19, wherein each subframe includes side information for that subframe and only that subframe so that the baseband and high sampling rate decoders decode the subband audio codes and high sampling rate audio codes, respectively, a subframe at a time without reference to any of the other subframes.
- 21. The multi-channel audio decoder of claim 20, wherein the reconstruction filter comprises a non-perfect reconstruction (NPR) filterbank and a perfect reconstruction (PR) filterbank, and said frame header includes a filter code that selects one of said NPR and PR filterbanks.
- 22. The multi-channel audio decoder of claim 9, wherein each said subframe in the data stream includes an unpack sync, said demultiplexer detecting the unpack sync to verify the end of the subframe.
RELATED APPLICATION
This application is a divisional of application Ser. No. 08/642,254 filed May 2, 1996 entitled MULTI-CHANNEL PREDICTIVE SUBBAND AUDIO CODER USING PSYCHOACOUSTIC ADAPTIVE BIT ALLOCATION IN FREQUENCY, TIME AND OVER THE MULTIPLE CHANNELS, which is hereby incorporated by reference and which is itself a continuation-in-part of provisional application Ser. No. 60/007,896 filed Dec. 1, 1995.
US Referenced Citations (48)
Foreign Referenced Citations (3)
Number |
Date |
Country |
1550673 |
Aug 1979 |
EPX |
0084125 |
Jul 1983 |
EPX |
492862 A3 |
Dec 1991 |
EPX |
Divisions (1)
|
Number |
Date |
Country |
Parent |
642254 |
May 1996 |
|