Quality improvement techniques in an audio encoder
First Claim
1. In an audio encoder, a method comprising:
- receiving, at the audio encoder, audio in multiple channels;
with the audio encoder, encoding the audio to produce encoded audio information, including;
encoding the audio in a first set of one or more spectral bands as quantized spectral information, including;
truncating the audio in a second set of one or more spectral bands higher in frequency than the first set of one or more spectral bands, leaving the audio in the first set of one or more spectral bands;
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, from the audio encoder, 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.
282 Citations
19 Claims
-
1. In an audio encoder, a method comprising:
-
receiving, at the audio encoder, audio in multiple channels; with the audio encoder, encoding the audio to produce encoded audio information, including; encoding the audio in a first set of one or more spectral bands as quantized spectral information, including; truncating the audio in a second set of one or more spectral bands higher in frequency than the first set of one or more spectral bands, leaving the audio in the first set of one or more spectral bands; 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, from the audio encoder, the encoded audio information in a bit stream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 14, 15, 16, 17)
-
-
9. In an audio decoder, a method comprising:
-
receiving, at the audio decoder, encoded audio information for audio in multiple channels; with the audio decoder, decoding the encoded audio information to produce reconstructed audio, including; decoding the audio in a first set of one or more spectral bands, the audio in the first set of one or more spectral bands having been encoded as quantized spectral information, wherein the decoding the audio in the first set of one or more spectral bands includes; performing entropy decoding for the audio in the first set of one or more spectral bands; performing inverse quantization for the audio in the first set of one or more spectral bands; and selectively performing an inverse multi-channel transform between the multiple channels of the audio in the first set of one or more spectral bands; decoding the audio in a second set of one or more spectral bands higher in frequency than the first set of one or more spectral bands, the audio in the second set of one or more spectral bands having been truncated during encoding to leave the audio in the first set of one or more spectral bands, wherein the decoding the audio in the second set of one or more spectral bands uses a different array of noise parameters for each independently coded channel when the multiple channels are independently coded, wherein the decoding the audio in the second set of one or more spectral bands uses an array of noise parameters for a joint coding channel when the multiple channels are jointly coded, and wherein the decoding the audio in the second set of one or more spectral bands includes; when the multiple channels are independently coded, for each of the multiple independently coded channels, decoding one or more noise parameters of the different array of noise parameters for the independently coded channel, 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; when the multiple channels are jointly coded, decoding one or more noise parameters of the array of noise parameters for the joint coding channel, 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 based at least in part upon the noise parameters, generating patterns that represent the audio in the second set of spectral bands; combining the patterns that represent the audio in the second set of one or more spectral bands with results of decoding the quantized spectral information for the audio in the first set of one or more spectral bands; and outputting, from the audio decoder, the reconstructed audio for playback. - View Dependent Claims (10, 11, 12, 13)
-
-
18. 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 encoded audio information for audio in multiple channels; decoding the encoded audio information to produce reconstructed audio, including; decoding the audio in a first set of one or more spectral bands, the audio in the first set of one or more spectral bands having been encoded as quantized spectral information, wherein the decoding the audio in the first set of one or more spectral bands includes; performing entropy decoding for the audio in the first set of one or more spectral bands; performing inverse quantization for the audio in the first set of one or more spectral bands; and selectively performing an inverse multi-channel transform between the multiple channels of the audio in the first set of one or more spectral bands; decoding the audio in a second set of one or more spectral bands higher in frequency than the first set of one or more spectral bands, the audio in the second set of one or more spectral bands having been truncated during encoding to leave the audio in the first set of one or more spectral bands, wherein the decoding the audio in the second set of one or more spectral bands uses a different array of noise parameters for each independently coded channel when the multiple channels are independently coded, wherein the decoding the audio in the second set of one or more spectral bands uses an array of noise parameters for a joint coding channel when the multiple channels are jointly coded, and wherein the decoding the audio in the second set of one or more spectral bands includes; when the multiple channels are independently coded, for each of the multiple independently coded channels, decoding one or more noise parameters of the different array of noise parameters for the independently coded channel, 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; when the multiple channels are jointly coded, decoding one or more noise parameters of the array of noise parameters for the joint coding channel, 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 based at least in part upon the noise parameters, generating patterns that represent the audio in the second set of spectral bands; combining the patterns that represent the audio in the second set of one or more spectral bands with results of decoding the quantized spectral information for the audio in the first set of one or more spectral bands; and outputting, from the audio decoder, the reconstructed audio for playback.
-
-
19. A computer system comprising a processing unit, memory and storage media storing computer-executable instructions for causing the processing unit to perform a method of audio decoding, the method comprising:
-
receiving encoded audio information for audio in multiple channels; decoding the encoded audio information to produce reconstructed audio, including; decoding the audio in a first set of one or more spectral bands, the audio in the first set of one or more spectral bands having been encoded as quantized spectral information, wherein the decoding the audio in the first set of one or more spectral bands includes; performing entropy decoding for the audio in the first set of one or more spectral bands; performing inverse quantization for the audio in the first set of one or more spectral bands; and selectively performing an inverse multi-channel transform between the multiple channels of the audio in the first set of one or more spectral bands; decoding the audio in a second set of one or more spectral bands higher in frequency than the first set of one or more spectral bands, the audio in the second set of one or more spectral bands having been truncated during encoding to leave the audio in the first set of one or more spectral bands, wherein the decoding the audio in the second set of one or more spectral bands uses a different array of noise parameters for each independently coded channel when the multiple channels are independently coded, wherein the decoding the audio in the second set of one or more spectral bands uses an array of noise parameters for a joint coding channel when the multiple channels are jointly coded, and wherein the decoding the audio in the second set of one or more spectral bands includes; when the multiple channels are independently coded, for each of the multiple independently coded channels, decoding one or more noise parameters of the different array of noise parameters for the independently coded channel, 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; when the multiple channels are jointly coded, decoding one or more noise parameters of the array of noise parameters for the joint coding channel, 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 based at least in part upon the noise parameters, generating patterns that represent the audio in the second set of spectral bands; combining the patterns that represent the audio in the second set of one or more spectral bands with results of decoding the quantized spectral information for the audio in the first set of one or more spectral bands; and outputting, from the audio decoder, the reconstructed audio for playback.
-
Specification