Adaptive Differential Pulse Code Modulation

From Hydrogenaudio Knowledgebase
Jump to: navigation, search

Adaptive Differential Pulse Code Modulation (ADPCM) is a very widely used lossy coding scheme.

The acronym refers to waveform codecs which instead of quantizing the sound signal directly, like PCM codecs, quantize the difference between the sound signal and a prediction that has been made of the sound signal. If the prediction is accurate then the difference between the real and predicted sound samples will have a lower variance than the real sound samples, and will be accurately quantized with fewer bits than would be needed to quantize the original sound samples. At the decoder the quantized difference signal is added to the predicted signal to give the reconstructed sound signal.

Implementations come from a variety of vendors. Some are proprietary, other are open, and there are drastic variations among them with regards to flexibility and quality:

  • IMA (International Multimedia Association) ADPCM
  • Microsoft ADPCM

(the aforementioned variations are, by far, the most popular ones, specially IMA)

Several game vendors also implemented their own ADPCM variations: EA ADPCM, Sony XA ADPCM, Sierra Online DPCM, Interplay MVE DPCM, Id RoQ DPCM and so on.