Method and apparatus for wavelet based data compression having adaptive bit rate control for compression of digital audio or other sensory data
First Claim
1. A method for compressing digitally sampled audio data into an average bit rate of compressed audio data, comprising the steps of:
- a) performing a discrete wavelet transform on the digitally sampled audio data to obtain resultant wavelet coefficients;
b) eliminating according to a predetermined criteria a calculated fractional percentage of wavelet coefficients to achieve the average bit rate;
c) quantizing the wavelet coefficients using a selected quantization level;
d) entropy encoding the quantized coefficients to obtain the compressed audio data; and
e) feeding the number of bits used to represent the entropy encoded coefficients back into the calculation of the fractional percentage of wavelet coefficients which must be eliminated to achieve the average bit rate.
7 Assignments
0 Petitions
Accused Products
Abstract
The compression method utilizes a combination of both lossy and lossless compression to achieve significant compression while retaining very high subjective quality of the reconstructed or decompressed signal. Methods and apparatus for compression and decompression of digital audio data are provided. In one preferred embodiment, the compression method or apparatus has a bit rate control feedback loop particularly well suited to matching the output bit rate of the data compressor to the bandwidth capacity of a communication channel. Embodiments trade-off various error sources in order to keep perceptible distortion levels to a minimum for a fixed bit rate. Preferred embodiments also utilize a unique combination of run length and Huffman encoding methods in order to take advantage of both local and global statistics.
-
Citations
94 Claims
-
1. A method for compressing digitally sampled audio data into an average bit rate of compressed audio data, comprising the steps of:
-
a) performing a discrete wavelet transform on the digitally sampled audio data to obtain resultant wavelet coefficients; b) eliminating according to a predetermined criteria a calculated fractional percentage of wavelet coefficients to achieve the average bit rate; c) quantizing the wavelet coefficients using a selected quantization level; d) entropy encoding the quantized coefficients to obtain the compressed audio data; and e) feeding the number of bits used to represent the entropy encoded coefficients back into the calculation of the fractional percentage of wavelet coefficients which must be eliminated to achieve the average bit rate. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for compressing digitally sampled audio data which has been divided into data frames containing a predefined number of digital audio data samples into an average bit rate of compressed audio data, the method comprising the steps of:
-
a) performing a discrete wavelet transform on the data frame to obtain the corresponding wavelet coefficients; b) calculating a fractional percentage of wavelet coefficients which must be eliminated in this frame in order to achieve the average bit rate; c) eliminating the calculated fractional percentage of wavelet coefficients according to a predefined criteria; d) selecting a quantization level for the wavelet coefficients based on a psychoacoustic model which uses one or more parameters derived from the data in the data frame; e) quantizing the wavelet coefficients at the selected quantization level; f) entropy encoding the quantized wavelet coefficients to obtain the compressed audio data; and g) feeding the number of bits used to represent the entropy encoded coefficients back into the calculation of the fractional percentage of wavelet coefficients which must be eliminated to achieve the average bit rate. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A method for compressing digitally sampled audio data which has been divided into data frames containing a predefined number of digital audio data samples into an average bit rate of compressed audio data, the method comprising the steps of:
-
a) calculating the energy of the data frame; b) performing a discrete wavelet transform on the data frame to obtain the corresponding wavelet coefficients; c) scaling the wavelet coefficients so they lie between -1.0 and +1.0; d) using a number of bits output last data frame to calculate a fractional percentage of wavelet coefficients which must be eliminated in this frame in order to achieve the average bit rate; e) eliminating all wavelet coefficients that fall below a predefined threshold; f) eliminating wavelet coefficients starting with the smallest remaining values until the calculated fractional percentage of wavelet coefficients needed to achieve the average bit rate have been eliminated; g) dividing all wavelet coefficients by a gain, the gain comprising a filtered estimate of the maximum wavelet coefficient in the frame; i) selecting a quantization level for the wavelet coefficients based on a psychoacoustic model which uses the calculated energy of the data frame; j) quantizing the wavelet coefficients at the selected quantization level; and k) entropy encoding the quantized wavelet coefficients using run length encoding of contiguous eliminated wavelet coefficients followed by Huffman encoding to obtain the compressed audio data. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38)
-
-
39. A method of reconstructing digitally sampled audio information which has been previously compressed into compressed digitally sampled audio information, the method comprising the steps of:
-
a) entropy decoding the compressed digitally sampled audio information to obtain entropy decoded information comprising wavelet coefficients wherein the wavelet coefficients are resultant from decimation of a calculated fractional percentage of wavelet coefficients necessary to achieve an average bit rate of the compressed digitally sampled audio information; b) performing an inverse discrete wavelet transform on the entropy decoded information to obtain inverse wavelet transformed data, a portion of which are comprised of interpolated data for mitigating the effects of decimation of wavelet coefficients; and c) resealing the inverse wavelet transformed data into the time domain to obtain the digitally sampled audio information. - View Dependent Claims (40, 41, 42, 43)
-
-
44. An article of manufacture comprising:
a computer usable medium having computer readable program code means embedded therein for compressing digitally sampled audio data, the computer readable program code means comprising; a) means for performing a discrete wavelet transform on the digitally sampled audio data to obtain the resultant wavelet coefficients; b) means for eliminating according to a predetermined criteria a calculated fractional percentage of wavelet coefficients to achieve the average bit rate; c) means for quantizing the wavelet coefficients using a selected quantization level; d) means for entropy encoding the quantized coefficients to obtain the compressed audio data; and e) means for feeding the number of bits used to represent the entropy encoded coefficients back into the means for calculating the fractional percentage of wavelet coefficients which must be eliminated to achieve the average bit rate. - View Dependent Claims (45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64)
-
65. An article of manufacture comprising:
a computer usable medium having computer readable program code means embedded therein for compressing digitally sampled data into an average bit rate of compressed sampled data, the computer readable program code means comprising; a) means for dividing the digitally sampled data into data frames containing a predefined number of digital data samples; b) means for performing a discrete wavelet transform on the data frame to obtain the corresponding wavelet coefficients; c) means for calculating a fractional percentage of wavelet coefficients which must be eliminated in a current data frame in order to achieve a average bit rate; d) means for eliminating the calculated fractional percentage of wavelet coefficients according to a predefined criteria; e) means for selecting a quantization level for the wavelet coefficients based on a psychoacoustic model which uses one or more parameters derived from the data in the current data frame; f) means for quantizing the wavelet coefficients at the selected quantization level; g) means for entropy encoding the quantized wavelet coefficients to obtain the compressed sampled data; and h) means for feeding the number of bits used to represent the entropy encoded coefficients back into the means for calculating the fractional percentage of wavelet coefficients which must be eliminated to achieve the average bit rate. - View Dependent Claims (66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81)
-
82. An article of manufacture comprising:
a computer readable medium having computer readable program code means embedded therein for compressing digitally sampled audio data into an average bit rate of compressed audio data, the computer readable program code means comprising; a) means for dividing the digitally sampled audio data into data frames containing a predefined number of digital audio data samples; b) means for calculating the energy of the data frame; c) means for performing a discrete wavelet transform on the data frame to obtain the corresponding wavelet coefficients; d) means for scaling the wavelet coefficients so they lie between -1.0 and +1.0; e) means for using a number of bits output last data frame to calculate a fractional percentage of wavelet coefficients which must be eliminated in this frame in order to achieve the average bit rate; f) means for eliminating all wavelet coefficients that fall below a predefined threshold; g) means for eliminating wavelet coefficients starting with the smallest remaining values until the calculated fractional percentage of wavelet coefficients needed to achieve the average bit rate have been eliminated; h) means for dividing all wavelet coefficients by a fixed gain, the fixed gain comprising a filtered estimate of the maximum wavelet coefficient in the frame; i) means for selecting a quantization level for the wavelet coefficients based on a psychoacoustic model which uses the calculated energy of the data frame; j) means quantizing the wavelet coefficients at the selected quantization level; and k) means for entropy encoding the quantized wavelet coefficients using run length encoding of contiguous eliminated wavelet coefficients followed by Huffmnan encoding to obtain the compressed audio data. - View Dependent Claims (83, 84, 85, 86, 87, 88, 89)
-
90. An article of manufacture comprising:
a computer usable medium having computer readable code means embedded therein for reconstructing digitally sampled information which has been previously compressed into compressed digitally sampled information, the computer readable code means comprising; a) means for entropy decoding the compressed digitally sampled information to obtain entropy decoded information comprising wavelet coefficients; b) means for performing an inverse discrete wavelet transform on the entropy decoded information to obtain inverse wavelet transformed data; and c) means for rescaling the inverse wavelet transformed data into the time domain to obtain the digitally sampled information. - View Dependent Claims (91, 92, 93, 94)
Specification