ADPCM

Adaptive Differential Pulse Coded Modulation

Services
Introduced in Rel-5
ADPCM is a speech coding algorithm used in 3GPP networks for efficient voice transmission. It compresses voice signals by encoding differences between consecutive samples rather than absolute values, adapting quantization steps based on signal characteristics. This provides good voice quality at lower bit rates, conserving network bandwidth while maintaining acceptable speech intelligibility.

Description

Adaptive Differential Pulse Coded Modulation (ADPCM) is a sophisticated speech coding technique standardized within 3GPP specifications for voice services. Unlike traditional PCM which encodes each sample independently, ADPCM employs differential encoding where only the difference between consecutive samples is transmitted. This fundamental approach significantly reduces the required bit rate while maintaining speech quality. The 'adaptive' component refers to the algorithm's ability to dynamically adjust the quantization step size based on the characteristics of the input signal, allowing for more efficient encoding during periods of rapid signal change and finer resolution during stable periods.

At its core, ADPCM operates through a predictive coding structure consisting of an adaptive predictor and an adaptive quantizer. The predictor estimates the next sample value based on previous samples, creating a predicted signal. The difference between the actual input signal and this predicted value (the prediction error) is then quantized using an adaptive quantizer whose step size adjusts according to the signal's variance. This quantized difference is encoded for transmission. At the decoder, the same predictor and adaptive quantizer reconstruct the original signal from the transmitted differences, with synchronization maintained between encoder and decoder adaptation algorithms.

The 3GPP implementation of ADPCM specifies several variants with different bit rates, most notably the 32 kbit/s ADPCM defined in 3GPP TS 26.969. This implementation builds upon the ITU-T G.726 standard but includes specific adaptations for mobile network environments. The algorithm processes speech signals sampled at 8 kHz with 16-bit resolution, compressing them to 4 bits per sample (32 kbit/s). Key components include the adaptive quantizer with 16 possible output levels, the adaptive predictor using pole-zero configuration, and the adaptation logic that controls step size adjustments based on the magnitude of recent quantized differences.

Within 3GPP networks, ADPCM serves as an intermediate codec between traditional 64 kbit/s PCM and more advanced codecs like AMR. It finds application in various scenarios including transcoding operations, circuit-switched voice services, and certain legacy system interfaces. The algorithm's architecture includes tone and transition detectors to handle non-speech signals, synchronization mechanisms to prevent drift between encoder and decoder, and comfort noise generation capabilities for silent periods. While largely superseded by more efficient codecs in modern networks, ADPCM remains relevant for interoperability with legacy systems and specific service scenarios where its balance of quality and complexity is advantageous.

Purpose & Motivation

ADPCM was developed to address the fundamental challenge of bandwidth efficiency in voice communications. Traditional Pulse Code Modulation (PCM) at 64 kbit/s provided excellent voice quality but consumed substantial network resources, particularly problematic in early digital mobile networks with limited capacity. The telecommunications industry needed a method to reduce the bit rate of voice signals while maintaining acceptable quality, enabling more simultaneous calls within the same bandwidth and reducing transmission costs.

Prior to ADPCM, simple compression techniques like logarithmic companding (μ-law/A-law PCM) offered only modest improvements. Differential PCM (DPCM) provided better compression but suffered from quality degradation during rapid signal changes. ADPCM solved these limitations by introducing adaptive quantization that dynamically adjusts to signal characteristics. This allowed the codec to track speech signals more accurately during transitions while using coarser quantization during stable periods, achieving significant bit rate reduction (from 64 kbit/s to 32 kbit/s or lower) with minimal quality impact.

Within 3GPP standardization, ADPCM served as an important transitional technology between first-generation digital voice codecs and more sophisticated algorithms like AMR. It provided a practical solution for network operators migrating from legacy systems while offering better spectral efficiency than PCM. The technology also enabled more efficient use of transmission links in the core network and supported interoperability between different network elements that might use varying speech coding standards. While eventually surpassed by more advanced codecs offering better compression at lower bit rates, ADPCM played a crucial role in the evolution of digital voice services in mobile networks.

Key Features

  • Differential encoding reducing bit rate by transmitting differences between samples
  • Adaptive quantization with dynamic step size adjustment based on signal variance
  • 32 kbit/s operation providing 2:1 compression over standard 64 kbit/s PCM
  • Pole-zero adaptive predictor for accurate signal estimation
  • Tone and transition detection for handling non-speech signals
  • Synchronization mechanisms preventing encoder-decoder mismatch

Evolution Across Releases

Rel-5 Initial

Initial standardization of ADPCM within 3GPP specifications, primarily based on ITU-T G.726 with adaptations for mobile network requirements. Defined the 32 kbit/s ADPCM codec for circuit-switched voice services, including detailed algorithmic descriptions, performance requirements, and test vectors. Established interfaces and transcoding procedures for interoperability with existing PCM-based systems.

Defining Specifications

SpecificationTitle
TS 21.905 3GPP TS 21.905
TS 26.969 3GPP TS 26.969
TS 26.975 3GPP TS 26.975
TS 26.978 3GPP TS 26.978
TS 29.007 3GPP TS 29.007
TS 43.050 3GPP TR 43.050
TS 46.055 3GPP TR 46.055