- Wideband audio codec
- Mobile, VoIP and Voice Conferencing
- Real-time multi-channel implementation
- Optimized for DSPs, RiSC, CISC processors
- ITU-T G.729 Annex A and B compliant
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.
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 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.
- Compliant with G.729, Annex A, Annex B specifications
- Full and half duplex modes of operation
- Passes ITU test vectors
- Optimized for high performance on leading edge DSP architectures
- Multichannel implementation
- Multi-tasking environment compatible
- DAA interface using linear codec at 8.0 kHz sample rate
- Direct interface to 8.0 kHz PCM data stream (A-law or μ-law)
- North American/International Telephony (including caller ID) support available
- Simultaneous DTMF detector operation available – (less than 10 talkoff hits on Bellcore test tape set)
- MF tone detectors, general purpose programmable tone detectors/generators available
- Data/Facsimile/Voice Distinction available
- Common compressed speech frame stream interface to support systems with multiple speech coders
- Dynamic speech coders selection if multiple speech codecs available
- Can be integrated with Acoustic Echo Canceller, G.168 Line Echo Canceller and Tone Detection/Regeneration modules
- Available with VoIP stack
- Multiple ports can be executed on a single DSP
VOCAL’s speech coders are available for the following platforms. Please contact us for specific G.729AB platforms.
- Audio Examples
- MIPS/memory requirements
- PSQM/PSQM+ values
- G.729AB Datasheet
- ITU Recommendation G.729
- RFC 3551 – RTP Packetization
- RTP Parameters