Page 223 - Asterisk™: The Future of Telephony
P. 223
G.726
This codec has been around for some time (it used to be G.721, which is now obsolete),
and it is one of the original compressed codecs. It is also known as Adaptive Differential
Pulse-Code Modulation (ADPCM), and it can run at several bitrates. The most com-
mon rates are 16 Kbps, 24 Kbps, and 32 Kbps. As of this writing, Asterisk currently
supports only the ADPCM-32 rate, which is far and away the most popular rate for this
codec.
G.726 offers quality nearly identical to G.711, but it uses only half the bandwidth. This
is possible because rather than sending the result of the quantization measurement, it
sends only enough information to describe the difference between the current sample
and the previous one. G.726 fell from favor in the 1990s due to its inability to carry
modem and fax signals, but because of its bandwidth/CPU performance ratio it is now
making a comeback. G.726 is especially attractive because it does not require a lot of
computational work from the system.
G.729A
Considering how little bandwidth it uses, G.729A delivers impressive sound quality. It
does this through the use of Conjugate-Structure Algebraic-Code-Excited Linear Pre-
‖
diction (CS-ACELP). Because of patents, you can’t use G729A without paying a
licensing fee; however, it is extremely popular and is, thus, well supported on many
different phones and systems.
To achieve its impressive compression ratio, this codec requires an equally impressive
amount of effort from the CPU. In an Asterisk system, the use of heavily compressed
codecs will quickly bog down the CPU.
G.729A uses 8 Kbps of bandwidth.
GSM
GSM is the darling codec of Asterisk. This codec does not come encumbered with a
licensing requirement the way that G.729A does, and it offers outstanding performance
with respect to the demand it places on the CPU. The sound quality is generally con-
sidered to be of a lesser grade than that produced by G.729A, but much of this comes
down to personal opinion; be sure to try it out. GSM operates at 13 Kbps.
‖ CELP is a popular method of compressing speech. By mathematically modeling the various ways humans
make sounds, a codebook of sounds can be built. Rather than sending an actual sampled sound, a code
corresponding to the sound is determined. CELP codecs take this information (which by itself would produce
a very robot-like sound) and attempt to add the personality back in. (Of course, there is much more to it than
that.) Jason Woodward’s Speech Coding page (http://www-mobile.ecs.soton.ac.uk/speech_codecs/) is a source
of helpful information for the non-mathematically inclined. This is fairly heavy stuff, though, so wear your
thinking cap.
Codecs | 195