Main Content


Decode using differential pulse code modulation


sig = dpcmdeco(indx,codebook,predictor)
[sig,quanterror] = dpcmdeco(indx,codebook,predictor)


sig = dpcmdeco(indx,codebook,predictor) implements differential pulse code demodulation to decode the vector indx. The vector codebook represents the predictive-error quantization codebook. The vector predictor specifies the predictive transfer function. If the transfer function has predictive order M, predictor has length M+1 and an initial entry of 0. To decode correctly, use the same codebook and predictor in dpcmenco and dpcmdeco.

See Represent Partitions, Represent Codebooks, or the quantiz reference page, for a description of the formats of partition and codebook.

[sig,quanterror] = dpcmdeco(indx,codebook,predictor) is the same as the syntax above, except that the vector quanterror is the quantization of the predictive error based on the quantization parameters. quanterror is the same size as sig.


You can estimate the input parameters codebook, partition, and predictor using the function dpcmopt.


See Example: DPCM Encoding and Decoding and Example: Comparing Optimized and Nonoptimized DPCM Parameters for examples that use dpcmdeco.


[1] Kondoz, A. M., Digital Speech, Chichester, England, John Wiley & Sons, 1994.

Version History

Introduced before R2006a