Differential pulse code modulation (DPCM) is a signal encoder that uses the pulse code modulation (PCM) baseline but adds some functionality based on the prediction of signal samples. The input can be an analog signal or a digital signal.
If the input is a continuous time analog signal, it needs to be sampled first so that a discrete time signal is the input to the DPCM encoder.
• Option 1: take the values of two consecutive samples; if they are analog samples, quantifying them; calculate the difference between the first and the next; the output is the difference, and may be more coded entropy.
• Option 2: instead of taking a difference from an earlier input sample, take the difference with respect to the output of a local decoder process model; in this option, the difference can be quantified, which allows a good way to incorporate a controlled loss in coding.
By applying one of these two processes, the short-term redundancy (positive correlation of near values) of the signal is eliminated; compression ratios of the order of 2 to 4 can be achieved if the differences are subsequently encoded by entropy because the entropy of the difference signal is much smaller than that of the original discrete signal treated as independent samples. DPCM was invented by C. Chapin Cutler at Bell Labs in 1950; its patent includes both methods.