Real-time digital audio compression/decompression system
First Claim
1. Apparatus for compressing a stream of coded digital data samples, the compressing apparatus comprising:
- comparison apparatus responsive to a first data sample value and a second consecutive data sample value in the stream for forming a difference value between the first data sample value and the second data sample value;
output apparatus for forming a compressed data stream, the output apparatus being responsive to the difference value and to the second data sample value, for inserting the difference value into the compressed data stream in place of the second data sample value when the difference value occupies less storage space than the second data sample value; and
flag apparatus responsive to the output apparatus for inserting a predetermined flag value into the compressed data stream when the difference value occupies at least the same storage space as the second data sample value.
1 Assignment
0 Petitions
Accused Products
Abstract
Digitized audio information is compressed by retrieving a first audio sample from a digitized audio signal and storing it in its entire, uncompressed, form. The next audio sample is then retrieved and a signed difference between the first audio sample value and the next audio sample value is computed. If this difference value can be represented in fewer data segments than would be required to represent the next audio sample, the difference value is stored, rather than the value of the next sample, otherwise the next sample is stored. The invention proceeds in this fashion until the entire PCM audio signal is compressed and stored. The compressed data stream is decompressed to generate an output data stream by retrieving a stored sample and examining it to ascertain whether it is a difference value or a flag which indicates that the following data represents a coded amplitude value. If the sample is a difference value it is digitally added to the previous value (taking into account the sign) and the sum is inserted into the output data stream. The sum value is retained in order to be used to compute the next output value if the following sample is also a difference value. Alternatively, if the sample is a flag value it is discarded and the next sample is retrieved and inserted into the output data stream.
44 Citations
12 Claims
-
1. Apparatus for compressing a stream of coded digital data samples, the compressing apparatus comprising:
-
comparison apparatus responsive to a first data sample value and a second consecutive data sample value in the stream for forming a difference value between the first data sample value and the second data sample value; output apparatus for forming a compressed data stream, the output apparatus being responsive to the difference value and to the second data sample value, for inserting the difference value into the compressed data stream in place of the second data sample value when the difference value occupies less storage space than the second data sample value; and flag apparatus responsive to the output apparatus for inserting a predetermined flag value into the compressed data stream when the difference value occupies at least the same storage space as the second data sample value. - View Dependent Claims (2, 3, 4)
-
-
5. A data compression system for use with a stream of coded digital data samples each having a first predetermined number of data bytes, the compression system comprising:
-
a computing device responsive to a first data sample value and to a consecutive second data sample value for computing a signed difference value between the first data sample value and a second data sample value, the difference value having a second number of bytes; an output device for generating a compressed data stream, the output device being responsive to the difference value for inserting the difference value into the compressed data stream when the second number of bytes is less than the first number of bytes and for inserting said consecutive data sample value into the compressed data stream when the second number of bytes is equal to, or greater than, the first number of bytes; and
flag apparatus responsive to the output device for inserting a predetermined flag value into the compressed data stream when the second number of bytes is equal to, or greater than, the first predetermined number of data bytes. - View Dependent Claims (6, 7, 8)
-
-
9. A method for compressing a stream of coded digital data samples, the method of comprising the steps of:
-
A. forming a difference value between a first data sample value and a second data sample value; B. comparing the difference value to the second data sample value; C. forming a compressed data stream by inserting the difference value into the compressed data stream in place of the second data sample value when the difference value occupies less storage space than the second data sample value; and D. inserting a predetermined flag value into the compressed data stream when the difference value occupies at least the same amount of storage space as the second data sample value. - View Dependent Claims (10, 11, 12)
-
Specification