Differential pulse-code modulation (DPCM) encodes changes between consecutive samples of a signal, rather than the signal's value directly (as done in pulse-code modulation). Decoding might thus be done by some manner of integrating DPCM samples over time. 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 to become a discrete-time signal. Two methods to encode each DPCM value are:

  • Method 1: First, quantize the samples (if not quantized already). The output is the difference between the current and previous sample.
  • Method 2: Quantize the difference between the current sample and the output of a local decoder.

Applying one of these two methods, short-term redundancy (positive correlation of nearby values) of the signal is eliminated; compression ratios on the order of 2 to 4 can be achieved if differences are subsequently entropy coded, because the entropy of the difference signal is much smaller than that of the original discrete signal treated as independent samples. But removing this redundancy makes the encoded signal more fragile.

History

Delta modulation was introduced earlier than and can be considered a special case of DPCM, as it also uses a similar feedback principle.

Predictive quantizing

Cutler's methods also are considered a specific case of the more general concept of predictive quantizing systems, a term sometimes used interchangeably with DPCM. A Bell Labs article by J. B. O'Neal, Jr. says, "A predictive communications system is one in which the difference between the actual signal and an estimate of the signal, based on its past, is transmitted. Both the transmitter and the receiver make an estimate or prediction of the signal's value based on the previously transmitted signal. The transmitter subtracts this prediction from the true value of the signal and transmits this difference. The receiver adds this prediction to the received difference signal yielding the true signal."