Apparatus and method for real time data compressor
First Claim
1. Apparatus for performing real time data compression of blocks of digital or analog data of the type having an input data stream converted to a desired digital format data stream of time domain estimated variance samples comprising:
- high speed computing means coupled to said digital data stream for allocating a digital bit to individual estimated variance samples and calculating marginal return values for said samplescomparator means,high speed storage means coupled to said high speed computing means and to said comparator means,look-up table means coupled to said computing means for storing predetermined mean-squared error constants employed for computing the highest marginal return for said digital data samplesaddress generation means coupled to said high speed storage means and to said look-up table means, andcontrol means coupled to said computing means, said comparator means and said address generation means for presenting a sequence of commands to provide a real time stream of blocks of compressed data samples from said computing means, said blocks of compressed data each havinga predetermined number of bits to be allocated for each block of compressed data,each said block of compressed data having an optimum allocation of bits to the highest marginal return samples, anda minimum bit error rate and the highest average marginal return for each block of compressed data.
0 Assignments
0 Petitions
Accused Products
Abstract
High speed computing apparatus for performing real time data compression of analog voice data or digital data to be transmitted over a data link. The incoming data stream is divided into blocks of digital data and the blocks are subdivided into digital samples or elements to be compressed. Each sample is analyzed individually to determine its estimated variance and the marginal return to be gained by alloting the sample one or more of the bits to be employed to define the block of digital data. The bits are assigned samples having the highest estimated variance factor so that an optimum allocation of bits to individual samples is achieved with variable ratio data compression. The allocated bits are employed to encode the samples during real time data compression and transmission.
-
Citations
15 Claims
-
1. Apparatus for performing real time data compression of blocks of digital or analog data of the type having an input data stream converted to a desired digital format data stream of time domain estimated variance samples comprising:
-
high speed computing means coupled to said digital data stream for allocating a digital bit to individual estimated variance samples and calculating marginal return values for said samples comparator means, high speed storage means coupled to said high speed computing means and to said comparator means, look-up table means coupled to said computing means for storing predetermined mean-squared error constants employed for computing the highest marginal return for said digital data samples address generation means coupled to said high speed storage means and to said look-up table means, and control means coupled to said computing means, said comparator means and said address generation means for presenting a sequence of commands to provide a real time stream of blocks of compressed data samples from said computing means, said blocks of compressed data each having a predetermined number of bits to be allocated for each block of compressed data, each said block of compressed data having an optimum allocation of bits to the highest marginal return samples, and a minimum bit error rate and the highest average marginal return for each block of compressed data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of performing real time data compression of an input stream of data comprising the steps of:
-
dividing said input stream of data into blocks of digital data, dividing said blocks of digital data into samples of digital elements, calculating an estimated variance for each digital element sample, arranging said samples of digital data into a diminishing order by magnitude of said estimated variances, examining each sample to determine the sample having the highest marginal return, reducing the marginal return of the sample having the highest marginal return by allocating one bit of a predetermined number of bits to be allocated to define said block of digital data, moving a pointer representative of the number of bits allocated to the particular sample which had the highest marginal return to the next lowest sample in the order of samples, repeating the steps of determining the sample having the highest marginal return and reducing the marginal return of the sample having the highest marginal returns by allocating one bit and moving a pointer representative of the number of bits allocated to the particular sample until all bits to be allocated are allocated, and encoding each said sample with the number of bits so allocated to each individual sample in real time. - View Dependent Claims (13, 14)
-
-
15. A method of performing real time data compression of an input stream of data comprising the steps of:
-
dividing said input stream of data into blocks of digital data, dividing said blocks of digital data into samples of digital elements, examining each sample of digital data to determine the energy content of each sample, sorting said samples in a diminishing order of energy content, determining the cumulative gain related to the energy content applicable to defining any one sample with one or more bits in order to digitally define said sample, determining the maximum number of bits to be employed to define any one sample, positioning a reference marker and other markers which have a fixed ratio relative thereto to the sorted samples, assigning bits to samples between markers in said sorted order to provide an optimum allocation of bits, checking to determine if the total number of bits allotted to define a block of digital data have been allocated, and encoding each said sample of elements of said block of digital data employing an optimum allocation of digital bits.
-
Specification