Patent US6028541A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6028541A Expired / Lapsed US ⏱️ 0.0 years remaining

Lossless data compression with low complexity

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1998-03-12
•
Granted: 2000-02-22
•
Expires: 2018-03-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An adaptive linear predictor is used to predict samples, and residuals from such predictions are encoded using Golomb-Rice encoding. Linear prediction of samples of a signal which represents digitized sound tends to produce relatively low residuals and those residuals tend to be distributed exponentially. Accordingly, linear prediction combined with Golomb-Rice encoding produces particularly good compression rates with very efficient and simple implementation. A code length used in Golomb-Rice, which is typically referred to as the parameter k, is adapted for each sample in a predictable and repeatable manner to further reduce the size of a Golomb-Rice encoding for each sample. An infinite incident response filter of processed residuals automatically reduces influences of previously processed residuals upon such adaptation as additional samples are processed. In addition, the influence of each residual processed in the adaptation of the code length is directly related to the recency of the processing of the sample to which the residual corresponds. Furthermore, no resetting of the code length adaptation mechanism is required since influence of particularly distant residuals upon the adaptation of the code length diminishes to negligible amounts over time. The efficiency of Golomb-Rice encoding is improved by limiting the predicted samples to an efficient range. The maximum of the efficient range is the maximum valid value of a sample less the maximum positive value of the fixed-length, binary portion of an encoded residual. The adaptive predictor adapts to residuals between actual and predicted samples at a particular rate.

Inventors

  • 👤 Earl Levine

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 15:39
CPC Classifications
H; H03; H03M; H03M7/00; H03M7/30; H03M7/40; H03M7/4031; H03M7/4037; H03M7/4043; H03M7/4068; H03M7/4075

Claims Analysis

Total Claims: 27
Claim 1
Independent Claim 185 words
A method for encoding one or more source samples of a digital signal, the method comprising: receiving a current sample of the one or more source samples; predicting a predicted current sample using one or more previously received ones of the one or more source samples; measuring a residual signal between the received current sample and the predicted current sample; encoding the residual signal by: partitioning the residual signal into a least significant portion which has a number of bits and a most significant portion; representing the least significant portion in binary form using the number of bits; determining a value of the most significant portion; representing the most significant portion as a series of bits having a first predetermined bit value wherein the series has a length equivalent to the value of the most significant portion and is delimited by a bit having a second predetermined bit value; and adapting the number of bits by: applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and adjusting the number of bits in accordance with the filtered residual signal.
Claim 2
Independent Claim 185 words
A method for encoding one or more source samples of a digital signal, the method comprising: receiving a current sample of the one or more source samples; predicting a predicted current sample using one or more previously received ones of the one or more source samples; measuring a residual signal between the received current sample and the predicted current sample; encoding the residual signal by: partitioning the residual signal into a least significant portion which has a number of bits and a most significant portion; representing the least significant portion in binary form using the number of bits; determining a value of the most significant portion; representing the most significant portion as a series of bits having a first predetermined bit value wherein the series has a length equivalent to the value of the most significant portion and is delimited by a bit having a second predetermined bit value; and adapting the number of bits by: applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and adjusting the number of bits in accordance with the filtered residual signal.
Claim 3
Dependent Claim 58 words
The method of claim 1 wherein the step of applying comprises: weighting a previous filtered residual signal with a first weight to form a weighted previous filtered residual signal; combining the residual signal with the weighted previous filtered residual signal to form a combined residual signal; and normalizing the combined residual signal to form the filtered residual signal.
Claim 4
Dependent Claim 83 words
The method of claim 2 wherein the step of weighting comprises: shifting the previous filtered residual signal to the left an integer number of bit places to form a shifted previous filtered residual signal; and subtracting the previous filtered residual signal from the shifted previous filtered residual signal to form the weighted previous filtered residual signal; further wherein the step of normalizing comprises: shifting the combined residual signal to the right the integer number of bit places to form the filtered residual signal.
Claim 5
Independent Claim 152 words
A method for decoding one or more source samples of a digital signal, the method comprising: (a) receiving an encoded residual signal; (b) decoding the encoded residual signal by: (i) parsing the encoded residual signal into a least significant portion binary representation which has a number of bits and a most significant portion unary representation; (ii) deriving a most significant portion value from the most significant portion unary representation; and (iii) concatenating a binary representation of the most significant portion value with the least significant binary representation to form a binary representation of the encoded residual signal; (c) producing a residual signal in accordance with the binary representation of the encoded residual signal; and (d) adapting the number of bits by: (i) applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and (ii) adjusting the number of bits in accordance with the filtered residual signal.
Claim 6
Independent Claim 152 words
A method for decoding one or more source samples of a digital signal, the method comprising: (a) receiving an encoded residual signal; (b) decoding the encoded residual signal by: (i) parsing the encoded residual signal into a least significant portion binary representation which has a number of bits and a most significant portion unary representation; (ii) deriving a most significant portion value from the most significant portion unary representation; and (iii) concatenating a binary representation of the most significant portion value with the least significant binary representation to form a binary representation of the encoded residual signal; (c) producing a residual signal in accordance with the binary representation of the encoded residual signal; and (d) adapting the number of bits by: (i) applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and (ii) adjusting the number of bits in accordance with the filtered residual signal.
Claim 7
Dependent Claim 63 words
The method of claim 4 wherein step (c) comprises: predicting a predicted current sample using one or more previously decoded samples; combining the binary representation of the encoded residual signals with the predicted current sample to form a decoded current sample; and measuring a difference between the decoded current sample and the predicted current sample; and representing the difference as the residual signal.
Claim 8
Dependent Claim 58 words
The method of claim 4 wherein the step of applying comprises: weighting a previous filtered residual signal with a first weight to form a weighted previous filtered residual signal; combining the residual signal with the weighted previous filtered residual signal to form a combined residual signal; and normalizing the combined residual signal to form the filtered residual signal.
Claim 9
Dependent Claim 83 words
The method of claim 6 wherein the step of weighting comprises: shifting the previous filtered residual signal to the left an integer number of bit places to form a shifted previous filtered residual signal; and subtracting the previous filtered residual signal from the shifted previous filtered residual signal to form the weighted previous filtered residual signal; further wherein the step of normalizing comprises: shifting the combined residual signal to the right the integer number of bit places to form the filtered residual signal.
Claim 10
Dependent Claim 216 words
A computer readable medium useful in association with a computer which includes a processor and a memory, the computer readable medium including computer instructions which are configured to cause the computer to encode one or more source samples of a digital signal by performing the steps of: receiving a current sample of the one or more source samples; predicting a predicted current sample using one or more previously received ones of the one or more source samples; measuring a residual signal between the received current sample and the predicted current sample; encoding the residual signal by: partitioning the residual signal into a least significant portion which has a number of bits and a most significant portion; representing the least significant portion in binary form using the number of bits; determining a value of the most significant portion; representing the most significant portion as a series of bits having a first predetermined bit value wherein the series has a length equivalent to the value of the most significant portion and is delimited by a bit having a second predetermined bit value; and adapting the number of bits by: applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and adjusting the number of bits in accordance with the filtered residual signal.
Claim 11
Dependent Claim 216 words
A computer readable medium useful in association with a computer which includes a processor and a memory, the computer readable medium including computer instructions which are configured to cause the computer to encode one or more source samples of a digital signal by performing the steps of: receiving a current sample of the one or more source samples; predicting a predicted current sample using one or more previously received ones of the one or more source samples; measuring a residual signal between the received current sample and the predicted current sample; encoding the residual signal by: partitioning the residual signal into a least significant portion which has a number of bits and a most significant portion; representing the least significant portion in binary form using the number of bits; determining a value of the most significant portion; representing the most significant portion as a series of bits having a first predetermined bit value wherein the series has a length equivalent to the value of the most significant portion and is delimited by a bit having a second predetermined bit value; and adapting the number of bits by: applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and adjusting the number of bits in accordance with the filtered residual signal.
Claim 12
Dependent Claim 60 words
The computer readable medium of claim 8 wherein the step of applying comprises: weighting a previous filtered residual signal with a first weight to form a weighted previous filtered residual signal; combining the residual signal with the weighted previous filtered residual signal to form a combined residual signal; and normalizing the combined residual signal to form the filtered residual signal.
Claim 13
Dependent Claim 85 words
The computer readable medium of claim 9 wherein the step of weighting comprises: shifting the previous filtered residual signal to the left an integer number of bit places to form a shifted previous filtered residual signal; and subtracting the previous filtered residual signal from the shifted previous filtered residual signal to form the weighted previous filtered residual signal; further wherein the step of normalizing comprises: shifting the combined residual signal to the right the integer number of bit places to form the filtered residual signal.
Claim 14
Dependent Claim 183 words
A computer readable medium useful in association with a computer which includes a processor and a memory, the computer readable medium including computer instructions which are configured to cause the computer to decode one or more source samples of a digital signal by performing the steps of: (a) receiving an encoded residual signal; (b) decoding the encoded residual signal by: (i) parsing the encoded residual signal into a least significant portion binary representation which has a number of bits and a most significant portion unary representation; (ii) deriving a most significant portion value from the most significant portion unary representation; and (iii) concatenating a binary representation of the most significant portion value with the least significant binary representation to form a binary representation of the encoded residual signal; (c) producing a residual signal in accordance with the binary representation of the encoded residual signal; and (d) adapting the number of bits by: (i) applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and (ii) adjusting the number of bits in accordance with the filtered residual signal.
Claim 15
Dependent Claim 183 words
A computer readable medium useful in association with a computer which includes a processor and a memory, the computer readable medium including computer instructions which are configured to cause the computer to decode one or more source samples of a digital signal by performing the steps of: (a) receiving an encoded residual signal; (b) decoding the encoded residual signal by: (i) parsing the encoded residual signal into a least significant portion binary representation which has a number of bits and a most significant portion unary representation; (ii) deriving a most significant portion value from the most significant portion unary representation; and (iii) concatenating a binary representation of the most significant portion value with the least significant binary representation to form a binary representation of the encoded residual signal; (c) producing a residual signal in accordance with the binary representation of the encoded residual signal; and (d) adapting the number of bits by: (i) applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and (ii) adjusting the number of bits in accordance with the filtered residual signal.
Claim 16
Dependent Claim 65 words
The computer readable medium of claim 11 wherein step (c) comprises: predicting a predicted current sample using one or more previously decoded samples; combining the binary representation of the encoded residual signals with the predicted current sample to form a decoded current sample; and measuring a difference between the decoded current sample and the predicted current sample; and representing the difference as the residual signal.
Claim 17
Dependent Claim 60 words
The computer readable medium of claim 11 wherein the step of applying comprises: weighting a previous filtered residual signal with a first weight to form a weighted previous filtered residual signal; combining the residual signal with the weighted previous filtered residual signal to form a combined residual signal; and normalizing the combined residual signal to form the filtered residual signal.
Claim 18
Dependent Claim 85 words
The computer readable medium of claim 13 wherein the step of weighting comprises: shifting the previous filtered residual signal to the left an integer number of bit places to form a shifted previous filtered residual signal; and subtracting the previous filtered residual signal from the shifted previous filtered residual signal to form the weighted previous filtered residual signal; further wherein the step of normalizing comprises: shifting the combined residual signal to the right the integer number of bit places to form the filtered residual signal.
Claim 19
Dependent Claim 219 words
A computer system comprising: a processor; a memory operatively coupled to the processor; and an encoder which executes in the processor from the memory and which, when executed by the processor, causes the computer to encode one or more source samples of a digital signal by performing the steps of: receiving a current sample of the one or more source samples; predicting a predicted current sample using one or more previously received ones of the one or more source samples; measuring a residual signal between the received current sample and the predicted current sample; encoding the residual signal by: partitioning the residual signal into a least significant portion which has a number of bits and a most significant portion; representing the least significant portion in binary form using the number of bits; determining a value of the most significant portion; representing the most significant portion as a series of bits having a first predetermined bit value wherein the series has a length equivalent to the value of the most significant portion and is delimited by a bit having a second predetermined bit value; and adapting the number of bits by: applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and adjusting the number of bits in accordance with the filtered residual signal.
Claim 20
Dependent Claim 219 words
A computer system comprising: a processor; a memory operatively coupled to the processor; and an encoder which executes in the processor from the memory and which, when executed by the processor, causes the computer to encode one or more source samples of a digital signal by performing the steps of: receiving a current sample of the one or more source samples; predicting a predicted current sample using one or more previously received ones of the one or more source samples; measuring a residual signal between the received current sample and the predicted current sample; encoding the residual signal by: partitioning the residual signal into a least significant portion which has a number of bits and a most significant portion; representing the least significant portion in binary form using the number of bits; determining a value of the most significant portion; representing the most significant portion as a series of bits having a first predetermined bit value wherein the series has a length equivalent to the value of the most significant portion and is delimited by a bit having a second predetermined bit value; and adapting the number of bits by: applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and adjusting the number of bits in accordance with the filtered residual signal.
Claim 21
Dependent Claim 59 words
The computer system of claim 15 wherein the step of applying comprises: weighting a previous filtered residual signal with a first weight to form a weighted previous filtered residual signal; combining the residual signal with the weighted previous filtered residual signal to form a combined residual signal; and normalizing the combined residual signal to form the filtered residual signal.
Claim 22
Dependent Claim 84 words
The computer system of claim 16 wherein the step of weighting comprises: shifting the previous filtered residual signal to the left an integer number of bit places to form a shifted previous filtered residual signal; and subtracting the previous filtered residual signal from the shifted previous filtered residual signal to form the weighted previous filtered residual signal; further wherein the step of normalizing comprises: shifting the combined residual signal to the right the integer number of bit places to form the filtered residual signal.
Claim 23
Dependent Claim 186 words
A computer system comprising: a processor; a memory operatively coupled to the processor; and a decoder which executes in the processor from the memory and which, when executed by the processor, causes the computer to decode one or more source samples of a digital signal by performing the steps of: (a) receiving an encoded residual signal; (b) decoding the encoded residual signal by: (i) parsing the encoded residual signal into a least significant portion binary representation which has a number of bits and a most significant portion unary representation; (ii) deriving a most significant portion value from the most significant portion unary representation; and (iii) concatenating a binary representation of the most significant portion value with the least significant binary representation to form a binary representation of the encoded residual signal; (c) producing a residual signal in accordance with the binary representation of the encoded residual signal; and (d) adapting the number of bits by: (i) applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and (ii) adjusting the number of bits in accordance with the filtered residual signal.
Claim 24
Dependent Claim 186 words
A computer system comprising: a processor; a memory operatively coupled to the processor; and a decoder which executes in the processor from the memory and which, when executed by the processor, causes the computer to decode one or more source samples of a digital signal by performing the steps of: (a) receiving an encoded residual signal; (b) decoding the encoded residual signal by: (i) parsing the encoded residual signal into a least significant portion binary representation which has a number of bits and a most significant portion unary representation; (ii) deriving a most significant portion value from the most significant portion unary representation; and (iii) concatenating a binary representation of the most significant portion value with the least significant binary representation to form a binary representation of the encoded residual signal; (c) producing a residual signal in accordance with the binary representation of the encoded residual signal; and (d) adapting the number of bits by: (i) applying an infinite impulse response filter to the residual signal to form a filtered residual signal; and (ii) adjusting the number of bits in accordance with the filtered residual signal.
Claim 25
Dependent Claim 64 words
The computer system of claim 18 wherein step (c) comprises: predicting a predicted current sample using one or more previously decoded samples; combining the binary representation of the encoded residual signals with the predicted current sample to form a decoded current sample; and measuring a difference between the decoded current sample and the predicted current sample; and representing the difference as the residual signal.
Claim 26
Dependent Claim 59 words
The computer system of claim 18 wherein the step of applying comprises: weighting a previous filtered residual signal with a first weight to form a weighted previous filtered residual signal; combining the residual signal with the weighted previous filtered residual signal to form a combined residual signal; and normalizing the combined residual signal to form the filtered residual signal.
Claim 27
Dependent Claim 84 words
The computer system of claim 20 wherein the step of weighting comprises: shifting the previous filtered residual signal to the left an integer number of bit places to form a shifted previous filtered residual signal; and subtracting the previous filtered residual signal from the shifted previous filtered residual signal to form the weighted previous filtered residual signal; further wherein the step of normalizing comprises: shifting the combined residual signal to the right the integer number of bit places to form the filtered residual signal.

References Cited (Backward Citations)

US5434948A Cited
US5414796A Cited
US5734823A Cited
US5734891A Cited
US5418713A Cited
US5794217A Cited
US5884269A Cited
US5680129A Cited
US5835034A Cited
US5819215A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-02-21 2003-08-23 2004-02-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-02-21 2007-08-23 2008-02-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-02-21 2011-08-23 2012-02-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag