Flexible frequency and time partitioning in perceptual transform coding of audio
First Claim
1. A method of compressively encoding audio, the method comprising:
- applying a frequency transform to blocks of input audio data to produce sets of spectral coefficients;
quantizing the sets of spectral coefficients;
encoding quantized spectral coefficients in a base frequency region of the sets up to an upper bound frequency position in a compressed audio bit stream;
determining a band structure for partitioning spectral holes and an extension region above the upper bound frequency position into bands for vector quantization coding, where the spectral holes are runs of consecutive spectral coefficients in the base frequency region that were quantized to a zero value;
wherein said determining a band structure for partitioning in the case of spectral holes comprises;
detecting any spectral holes in the base frequency region having a width larger than a minimum hole size threshold; and
for a detected spectral hole, determining a number of bands having a band size not exceeding a maximum band size threshold and that evenly divide the detected spectral hole; and
encoding spectral coefficients at the frequency positions of the spectral holes and the extension region using vector quantization coding in the compressed audio bit stream.
2 Assignments
0 Petitions
Accused Products
Abstract
An audio encoder/decoder performs band partitioning for vector quantization encoding of spectral holes and missing high frequencies that result from quantization when encoding at low bit rates. The encoder/decoder determines a band structure for spectral holes based on two threshold parameters: a minimum hole size threshold and a maximum band size threshold. Spectral holes wider than the minimum hole size threshold are partitioned evenly into bands not exceeding the maximum band size threshold in size. Such hole filling bands are configured up to a preset number of hole filling bands. The bands for missing high frequencies are then configured by dividing the high frequency region into bands having binary-increasing, linearly-increasing or arbitrarily-configured band sizes up to a maximum overall number of bands.
-
Citations
21 Claims
-
1. A method of compressively encoding audio, the method comprising:
-
applying a frequency transform to blocks of input audio data to produce sets of spectral coefficients; quantizing the sets of spectral coefficients; encoding quantized spectral coefficients in a base frequency region of the sets up to an upper bound frequency position in a compressed audio bit stream; determining a band structure for partitioning spectral holes and an extension region above the upper bound frequency position into bands for vector quantization coding, where the spectral holes are runs of consecutive spectral coefficients in the base frequency region that were quantized to a zero value; wherein said determining a band structure for partitioning in the case of spectral holes comprises; detecting any spectral holes in the base frequency region having a width larger than a minimum hole size threshold; and for a detected spectral hole, determining a number of bands having a band size not exceeding a maximum band size threshold and that evenly divide the detected spectral hole; and encoding spectral coefficients at the frequency positions of the spectral holes and the extension region using vector quantization coding in the compressed audio bit stream. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. Computer readable memory device comprising computer-executable instructions for performing a method that comprises:
-
applying a frequency transform to blocks of input audio data to produce sets of spectral coefficients; quantizing the sets of spectral coefficients; encoding quantized spectral coefficients in a base frequency region of the sets up to an upper bound frequency position in a compressed audio bit stream; determining a band structure for partitioning spectral holes and an extension region above the upper bound frequency position into bands for vector quantization coding, where the spectral holes are runs of consecutive spectral coefficients in the base frequency region that were quantized to a zero value; wherein said determining a band structure for partitioning in the case of spectral holes comprises; detecting any spectral holes in the base frequency region having a width larger than a minimum hole size threshold; and for a detected spectral hole, determining a number of bands having a band size not exceeding a maximum band size threshold and that evenly divide the detected spectral hole; and encoding spectral coefficients at the frequency positions of the spectral holes and the extension region using vector quantization coding in the compressed audio bit stream. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An audio coder, comprising at least one processor configured to:
-
apply a frequency transform to blocks of input audio data to produce sets of spectral coefficients; quantize the sets of spectral coefficients; encode quantized spectral coefficients in a base frequency region of the sets up to an upper bound frequency position in a compressed audio bit stream; determine a band structure for partitioning spectral holes and an extension region above the upper bound frequency position into bands for vector quantization coding, where the spectral holes are runs of consecutive spectral coefficients in the base frequency region that were quantized to a zero value; wherein said determining a band structure for partitioning in the case of spectral holes comprises; detecting any spectral holes in the base frequency region having a width larger than a minimum hole size threshold; and for a detected spectral hole, determining a number of bands having a band size not exceeding a maximum band size threshold and that evenly divide the detected spectral hole; and encode spectral coefficients at the frequency positions of the spectral holes and the extension region using vector quantization coding in the compressed audio bit stream. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification