G.728 Audio Coder

G.728 compression standard toll quality vocoder

G.728 voice codec based on LD-CELP technology delivers toll-quality speech with ultra-low delay for VoIP, packet telephony, voice over cable, and real-time communications applications.

Platforms

Availability

Platforms
Texas Instruments – TI TMS320C7000 C7x | TI TMS320C6000 C64x/C64x+/C66x/C674x | TI TMS320C5000 C55x / Legacy C54x
ADT G.728 is available on the above Platforms: Other configurations are available upon request.

Features

  • Functions are C-callable

  • Can be integrated with echo cancellers, VOX and tone detection/regeneration.

  • The encoder and decoder meet all ITU G.728 compliance and interoperability requirements.

  • Optional in-band synchronization available.

  • Adaptive Digital’s G.728 C54x is xdais compliant.

Description

G.728 Voice Codec

The Adaptive Digital Technologies G.728 Voice Codec is a real-time implementation of the ITU-T G.728 speech compression standard. Based on Low-Delay Code Excited Linear Prediction (LD-CELP) technology, it delivers toll-quality voice transmission with extremely low latency, making it ideal for VoIP, voice over cable, packet-based telephony, gateways, conferencing systems, and other real-time communications applications.

Designed for networks where delay is critical, the G.728 codec operates on short 2.5 ms speech frames, enabling fast processing and responsive voice communications. Its efficient compression algorithm reduces bandwidth requirements while maintaining clear, natural-sounding speech quality.

The Adaptive Digital Technologies G.728 implementation provides reliable real-time encoding and decoding for developers and equipment manufacturers building telecommunications, unified communications, embedded voice, and IP networking solutions. The codec is also specified within the H.320 video conferencing standard, making it suitable for multimedia and conferencing applications.

G.728 Continued…

The decoder also incorporates an adaptive post-filter to enhance performance for multiple transcodings. The post-filter function can be omitted for single coder-decoder operation to reduce the processing power required on the DSP. The Adaptive Digital G.728 software is DAIS compliant.

Unlike other low bit rate voice compression algorithms, G.728, when running at 16 kbps, is able to pass voice band modem signals at up to 2400 bits per second. G.728 is able to pass DTMF tones without an external bypass mechanism that is needed by most low bit rate vocoders.

G.728 Annex H: Variable bit rate LD-CELP which operates at 12.8 kbps, 9.6 kbps

This annex is intended to augment the performance of Recommendation G.728 by providing lower bit rate options in some specific applications, such as in those to be used with digital circuit multiplication equipment (DCME). G.728 Annex H enhances DCME by providing a balance between bit rate, voice quality, and delay that the other DCME codecs like G.723, G.729, and G.726 do not afford.

Specification Tables

NOTE: We specify MIPS (Millions of Instructions Per Second) as MCPS (Millions of Instruction Cycles Per Second). Unless otherwise specified, peak MIPS are indicated.

↓  Click on links below to view specification tables. 

G.728 C64x / C64x+ / C66x / C674x | C7x

CPU Utilization & Memory Requirements
Memory usage is given in units of byte
FunctionMIPS
16000
MIPS
12800
MIPS
9600*
Program MemoryScratchData MemoryPer-Channel Data Memory
Encode16.516.516.54102441226941488
Decode*14.915.115.12144
* Post filter off

G.728 C55x

CPU Utilization & Memory Requirements
Memory usage is given in units of byte
FunctionMIPS
Average
MIPS
Peak
Program MemoryScratch MemoryPer-Channel Data Memory
Encode24.2417.93131524921632
Decode*——2278
Full Duplex*16.516.5108743910
* Post filter off

G.728 C54x

CPU Utilization & Memory Requirements
Memory usage is given in 16-bit word.
FunctionMIPS
16000
MIPS
12800
MIPS
9600*
Program MemoryScratchData Memory
Encode24.2419.6617.93410248.0K724
Decode16.516.516.51057
* Post filter off

API Functions

API function call summary

G728_ADT_initEnc(…);

G728_ADT_initDec(…);

G728_ADT_encode(…);

G728_ADT_decode(…);

Translate »