Life used to be simple in telephony. When we connected a call we knew it was going to be a 4kHz voice band carrying the data, and in E1 and ISDN networks the voice always got digitized into A-law or mu-law at 8000 samples per second, using up a 64kbps bearer channel.

Of course technology has moved on, and GSM networks brought in the “full-rate” codec that can pack human voice into only 13kbps, technology that is being developed even further in 3G networks. In the VoIP world, codecs have gone mad, and there is so much choice, whether to pack as much data in as possible, or wideband codecs that give more fidelity in much less bandwidth than a 64kbps B channel, or self-healing codecs that can cope with high packet loss.

One interesting codec is iLBC (internet Low Bitrate Codec, see ), which is free to use, and even features sample “C” source code in the pages of the RFC (RFC3951). It’s pretty quick to compile the code and get testing.

iLBC can compress audio to about 13 kbps and it does seem remarkably resilient. In tests we did here, even a packet loss of 40% still resulted in understandable speech. Subjectively, it wasn’t any worse from some of the bursts of distortion you get using Skype, or when you have a very poor cellphone connection.

Franz-Joseph Eberle
Eicon Networks
Diva Server Product Manager