Complete Communications Engineering

G.729AB vocoder
G.729AB codec uses VAD, CNG and DTX to reduce bandwidth.

G.729AB codec

G.729AB codec is suitable as an internet wideband audio codec for VoIP applications, where normal conversation characteristics may be exploited in order to reduce bandwidth usage.Contact us to discuss your G.729AB vocoder application requirements.

download brochure request demo

VOCAL’s G.729AB source code is optimized for performance on leading DSPs and RISC/CISC processors from TI, ADI, AMD, ARM, Intel and other vendors. VOCAL offers G.729AB voice compression as a standalone algorithm, as part of a modular software library suite, as well as with a VoIP stack. Custom designs are also available to meet your specific G.729AB  codec needs.

G.729AB

G.729AB is a reduced complexity Conjugate-Structure Algebraic-Code-Excited Linear Prediction (CS-ACELP) speech compression algorithm that uses discontinuous transmission to reduce bandwidth. It is described in ITU-T G.729 Annex A and Annex B.

G.729AB requires 10 ms input frames and generates frames of 80 bits in length. Since G.729AB is based on the Code-Excited Linear Prediction (CELP) model, each 80 bit frame produced contains linear prediction coefficients, excitation code book indices, and gain parameters that are used by the decoder in order to reproduce speech. The inputs/outputs of G.729AB are 16 bit linear PCM samples that are converted from/to an 8 kbps compressed data stream. G.729AB has the same total algorithmic delay of 15 ms as the G.729 speech coder.

G.729AB contains the same reduced complexity modifications present in the G.729A speech coder. In addition, it also uses the G.729 Annex B specifications to reduce transmission during periods of silence. In conversations, it is normal that periods of silence may occur with no voice present in the signal. During these times, it is possible to calculate the background noise characteristics and transmit these parameters instead, and only update values if the background noise changes significantly.

The G.729AB encoder uses Voice Activity Detection (VAD) to determine if voice is present in the input signal. If so, the frame is constructed in accordance with G.729A. Otherwise, the noise characteristics are calculated and a Silence Insertion Description (SID) frame is sent instead; only 10 bits are present in a SID frame. The decoder will use this information for Comfort Noise Generation (CNG), as talkers expect some level of background noise during periods of silence. It is only necessary to transmit new SID frames when the background noise level changes. Discontinuous Transmission (DTX) reduces bandwidth usage by only transmitting voice or SID frames; during silence, only SID frames are sent when necessary to describe the current level of background noise.

Features

Configurations

Platforms

supported-platforms

VOCAL’s speech coders are available for the following platforms. Please contact us for specific G.729AB platforms.

ProcessorsOperating Systems
  • Texas Instruments – C6000 (TMS320C62x, TMS320C64x, TMS320C645x, TMS320C66x, TMS320C67x), DaVinci, OMAP, C5000 (TMS320C54x, TMS320C55x)
  • Analog Devices – Blackfin, ADSP-21xx, TigerSHARC, SHARC
  • PowerPC
  • MIPS – MIPS32, MIPS64, MIPS4Kc
  • ARM – ARM7, ARM9, ARM9E, ARM10E, ARM11, StrongARM, ARM Cortex-A8, Cortex-M1
  • Intel / AMD – x86, x64 (both 32 and 64 bit modes)
  • Google Android
  • Apple iOS / iPhone / iPad & MacOS
  • Unix,  Linux, μClinux, BSD
  • Microsoft Windows ACM / RTC / CE / Mobile
  • Symbian
  • eCOS / eCOSPro
  • Wind River VxWorks
  • Green Hills Integrity
  • VOCAL LANsEND
  • Micrium μCOS

More Information