Quality improvement techniques in an audio encoder
First Claim
1. A computer system comprising a processing unit and memory, wherein the computer system implements an audio encoder adapted to perform a method comprising:
- receiving audio in multiple channels;
encoding the audio to produce encoded audio information, including;
truncating the audio in a second set of one or more spectral bands higher in frequency than a first set of one or more spectral bands, leaving the audio in the first set of one or more spectral bands;
encoding the audio in the first set of one or more spectral bands as quantized spectral information, including;
selectively performing a multi-channel transform between the multiple channels for the audio in the first set of one or more spectral bands;
performing perceptual weighting for the audio in the first set of one or more spectral bands;
performing entropy encoding for the audio in the first set of one or more spectral bands;
encoding the audio in the second set of one or more spectral bands as parameters instead of quantized spectral information, wherein the parameters at least in part indicate forms of patterns to be generated during decoding to represent the audio in the second set of one or more spectral bands, the patterns that represent the audio in the second set of one or more spectral bands to be combined with results of decoding the quantized spectral information for the audio in the first set of one or more spectral bands, and wherein the encoding the audio in the second set of one or more spectral bands comprises;
when the multiple channels are independently coded, using a different array of noise parameters for each of the multiple independently coded channels, wherein the different array of noise parameters for each of the multiple independently coded channels includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the independently coded channel; and
when the multiple channels are jointly coded, using an array of noise parameters for the joint coding channel, wherein the array of noise parameters for the joint coding channel includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the joint coding channel; and
outputting the encoded audio information in a bit stream.
1 Assignment
0 Petitions
Accused Products
Abstract
An audio encoder implements multi-channel coding decision, band truncation, multi-channel rematrixing, and header reduction techniques to improve quality and coding efficiency. In the multi-channel coding decision technique, the audio encoder dynamically selects between joint and independent coding of a multi-channel audio signal via an open-loop decision based upon (a) energy separation between the coding channels, and (b) the disparity between excitation patterns of the separate input channels. In the band truncation technique, the audio encoder performs open-loop band truncation at a cut-off frequency based on a target perceptual quality measure. In multi-channel rematrixing technique, the audio encoder suppresses certain coefficients of a difference channel by scaling according to a scale factor, which is based on current average levels of perceptual quality, current rate control buffer fullness, coding mode, and the amount of channel separation in the source. In the header reduction technique, the audio encoder selectively modifies the quantization step size of zeroed quantization bands so as to encode in fewer frame header bits.
266 Citations
24 Claims
-
1. A computer system comprising a processing unit and memory, wherein the computer system implements an audio encoder adapted to perform a method comprising:
-
receiving audio in multiple channels; encoding the audio to produce encoded audio information, including; truncating the audio in a second set of one or more spectral bands higher in frequency than a first set of one or more spectral bands, leaving the audio in the first set of one or more spectral bands; encoding the audio in the first set of one or more spectral bands as quantized spectral information, including; selectively performing a multi-channel transform between the multiple channels for the audio in the first set of one or more spectral bands; performing perceptual weighting for the audio in the first set of one or more spectral bands; performing entropy encoding for the audio in the first set of one or more spectral bands; encoding the audio in the second set of one or more spectral bands as parameters instead of quantized spectral information, wherein the parameters at least in part indicate forms of patterns to be generated during decoding to represent the audio in the second set of one or more spectral bands, the patterns that represent the audio in the second set of one or more spectral bands to be combined with results of decoding the quantized spectral information for the audio in the first set of one or more spectral bands, and wherein the encoding the audio in the second set of one or more spectral bands comprises; when the multiple channels are independently coded, using a different array of noise parameters for each of the multiple independently coded channels, wherein the different array of noise parameters for each of the multiple independently coded channels includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the independently coded channel; and when the multiple channels are jointly coded, using an array of noise parameters for the joint coding channel, wherein the array of noise parameters for the joint coding channel includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the joint coding channel; and outputting the encoded audio information in a bit stream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. One or more computer-readable media storing instructions for causing a processing unit programmed thereby to perform a method of audio decoding, the one or more computer-readable media being selected from a group consisting of volatile memory, non-volatile memory, magnetic storage media and optical storage media, the method comprising:
-
receiving audio in multiple channels; encoding the audio to produce encoded audio information, including; truncating the audio in a second set of one or more spectral bands higher in frequency than a first set of one or more spectral bands, leaving the audio in the first set of one or more spectral bands; encoding the audio in the first set of one or more spectral bands as quantized spectral information, including; selectively performing a multi-channel transform between the multiple channels for the audio in the first set of one or more spectral bands; performing perceptual weighting for the audio in the first set of one or more spectral bands; performing entropy encoding for the audio in the first set of one or more spectral bands; encoding the audio in the second set of one or more spectral bands as parameters instead of quantized spectral information, wherein the parameters at least in part indicate forms of patterns to be generated during decoding to represent the audio in the second set of one or more spectral bands, the patterns that represent the audio in the second set of one or more spectral bands to be combined with results of decoding the quantized spectral information for the audio in the first set of one or more spectral bands, and wherein the encoding the audio in the second set of one or more spectral bands comprises; when the multiple channels are independently coded, using a different array of noise parameters for each of the multiple independently coded channels, wherein the different array of noise parameters for each of the multiple independently coded channels includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the independently coded channel; and when the multiple channels are jointly coded, using an array of noise parameters for the joint coding channel, wherein the array of noise parameters for the joint coding channel includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the joint coding channel; and outputting the encoded audio information in a bit stream. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer system comprising a processing unit and memory, wherein the computer system implements an audio encoder adapted to perform a method comprising:
-
receiving audio in multiple channels; encoding the audio to produce encoded audio information, including; identifying a cutoff frequency between a first set of spectral bands and a second set of spectral bands higher in frequency than the first set of one or more spectral bands; truncating the audio in the second set of one or more spectral bands, leaving the audio in the first set of one or more spectral bands; encoding the audio in the first set of one or more spectral bands as quantized spectral information, including; selectively performing a multi-channel transform between the multiple channels for the audio in the first set of one or more spectral bands; performing perceptual weighting for the audio in the first set of one or more spectral bands; performing entropy encoding for the audio in the first set of one or more spectral bands; encoding the audio in the second set of one or more spectral bands as parameters instead of quantized spectral information, wherein the parameters at least in part indicate forms of patterns to be generated during decoding to represent the audio in the second set of one or more spectral bands, the patterns that represent the audio in the second set of one or more spectral bands to be combined with results of decoding the quantized spectral information for the audio in the first set of one or more spectral bands, and wherein the encoding the audio in the second set of one or more spectral bands comprises; when the multiple channels are independently coded, using a different array of noise parameters for each of the multiple independently coded channels, wherein the different array of noise parameters for each of the multiple independently coded channels includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the independently coded channel; and when the multiple channels are jointly coded, using an array of noise parameters for the joint coding channel, wherein the array of noise parameters for the joint coding channel includes one or more noise parameters, each of the one or more noise parameters indicating a noise parameter value for a frequency band of one or more of the spectral bands in the second set over a time window of the joint coding channel; and outputting the encoded audio information in a bit stream. - View Dependent Claims (21, 22, 23, 24)
-
Specification