Commonly Used Codecs

The CLI command core show translation, which displays the table shown earlier, will show you which codecs are available on your system (namely, all those with numbers in their respective columns). The following list briefly examines the most commonly used codecs in Asterisk:

GSM

An Asterisk “classic” and familiar to anyone with GSM mobile phone service. The bandwidth is 13.3kbps, and the quality is acceptable, if not exactly overwhelming.

    • iLBC

iLBC is a sort of secret weapon for use in low-bandwidth situations. The sound quality is excellent, and the bandwidth is limited to between 13.3kbps and 15kbps (depending on frame size). Skype uses a variant of this codec. The problem with iLBC is that it is processor intensive; that is also why it is not implemented in very many hardphones.

    • G.711

Another classic, from the suite of ISDN codecs. This codec offers superb sound quality and requires 64kbps of bandwidth. This is standard for most calls traveling in corporate intranets and is also widely used for calls over the public Internet.

    • G.722

The chances are good that G.722 will eventually replace G.711; at the highest resolution, it offers a much better sound quality than G.711, but while requiring the same bandwidth (only 64kbps). Unfortunately, it not, as yet, supported by many telephones.

    • G.726

Offers the same sound quality as G.711 while needing only half the bandwidth (32kbps). In contrast to G.711, only the data that has changed relative to the previous voice packet is transmitted (similar to the way MPEG video works). The result is the same information transmitted with half the bandwidth. G.726 is not too burdensome, but still requires more processing than G.711.

    • G.729a

G.729a is a patented codec that needs only 8kbps and offers sound quality comparable to GSM. Licenses for Asterisk can be purchased from Digium (www.digium.com). It is not exceptional either in voice quality or performance, but offers a fair balance and is implemented in many VoIP telephones. As such, it is a good option when you need to conserve bandwidth.

    • G.729.1

G.729.1 is an extension offering bitstream interoperability with existing G.729 codecs, as well as a high level of configurability (it supports 8kpbs to 32kbps streams). Of particular interest are the wide-band extensions, which can offer very close to CD-quality sound; as yet, only a few phones support them. To use the wideband extensions, all the devices in the media path must support them.