ADPCM (siglas de Adaptive Differential Pulse-Code Modulation, lit. Modulación de código de pulso diferencial adaptativo) es un codificador de forma de onda basado en DPCM que añade algunas funcionalidades. Antes de la digitalización se coge la señal analógica y se divide en bandas de frecuencia gracias a los filtros QMF (“Quadrature Mirror Filter”) (se obtienen sub-bandas de señal).

Funcionamiento

Cada sub-banda es tratada de modo distinto utilizando las propiedades de DPCM, es decir, se lleva a cabo el proceso de muestreo, cuantificación del error de predicción y finalmente se codifica. Una vez que se obtiene la sucesión de bits (“bitstream”) de cada sub-banda, se multiplexan los resultados y ya se puede proceder a almacenar los datos o bien transmitirlos. El decodificador tiene que realizar el proceso inverso, es decir, demultiplexar y decodificar cada sub-banda del “bitstream”.

Por lo que hace a los ámbitos de uso de este codificador, puede ser conveniente en ciertas aplicaciones, como por ejemplo en la codificación de voz, donde lo que se puede hacer es codificar la sub-banda que incluye la voz con más bits que en las otras sub-bandas que no son de tanto interés. Es una manera de reducir el tamaño del fichero resultante.

ADPCM se articula en la recomendación CCITT G.726, que reemplazó a los dos anteriores definiendo estándares para 16, 24, 32 y 40 kbits por segundo (que corresponden a tamaños de muestra de 2, 3, 4 y 5 bits respectivamente).


GitHub QiushiYang/ADPCM ADPCM Codec Encoder and Decoder

ADPCM

Adpcm Converter

ADPCMの実験

GitHub Kalmalyzer/adpcm68k IMA ADPCM codec for PC, and decoder for