G.728 codec
- LD-CELP 16 kbps audio codec
- Video, cellular, and satellite applications
- Similar speech quality as G.726 kbps
- Real-time multi-channel implementation
- Optimized for DSPs, RiSC, CISC processors
- ITU-T G.728 compliant
VOCAL offers the G.728 codec as a standalone algorithm, as part of a modular software library suite, as well as with a VoIP stack. Contact us to discuss your G.728 application requirements.
VOCAL’s G.728 codec software is optimized for multi-channel applications on leading DSPs and conventional processors from TI, ADI, AMD, ARM, Intel and other vendors. Custom designs are also available to meet your specific requirements.
G.728
G.728 Low-Delay Code Excited Linear Prediction (LD-CELP) compression has 16 kbps compression at 8,000 samples per second. As in CELP techniques, LD-CELP performs codebook search using analysis-by-synthesis. However, LD-CELP uses backward adaptation of predictors and gain which results in an algorithmic delay of 0.625 ms. The algorithm transmits only the index to the excitation codebook rather than the entire vector. Backward adaptation of the predictor coefficients and gain are updated through LPC analysis of previously quantized speech and excitation, respectively. Whereas, LPC analysis of the unquantized speech is used to update a perceptual weighting filter.
Compared with G.721, G.728 tends to score worse in objective, but better in subjective tests. A characteristic of CELP algorithms is that they tend to perform poorer than ADPCM in the presence of background noise. However, G.728 has grown in popularity for video, cellular, and satellite applications since it delivers approximately the same quality voice as G.726 32 kbps while using only half the bandwidth.
G.728 Encoder
In the G.728 Encoder, the input signal is converted from A-law or μ-law PCM to uniform PCM and then partitioned into 5 consecutive sample blocks. For each sample, the encoder selects a candidate from a set of 1024 a priori codebook vectors that minimizes a frequency-weighted mean-squared error. The best codevector index is passed to the decoder. Next, gain scaling and synthesis filtering of the codevector are performed to update the filter memory for encoding the next signal vector. The synthesis filter coefficients and gain are also periodically updated with the previous quantized signal and gain-scaled excitation values.
G.728 Decoder
G.728 decoding is also performed on a block-by-block basis. Using the received codebook index, the decoder passes the corresponding codevector through a gain scaling unit and a synthesis filter to produce the current decoded signal vector. As in the encoder processing, the synthesis filter coefficients and gain are updated. Next an adaptive postfilter uses the decoded signal vector to enhance the perceptual quality. The postfilter coefficients are also updated periodically using the decoder information. Finally, the 5 postfilter signal vector samples are converted to corresponding A-law or μ-law PCM samples for output.
Configurations
- 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 150 hits on Bellcore test tape typical)
- 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
Features
- Full and half duplex modes of operation
- Passes ITU test vectors
- Compliant with G.728 specification
- Optimized for high performance on leading edge DSP architectures
- Multichannel implementation
- Multi-tasking environment compatible
More Information
Platforms
VOCAL’s optimized vocoder software is available for the following platforms. Please contact us for specific vocoder supported platforms and performance data.
Processors | Operating Systems |
---|---|
|
|