Speex is specially designed for speech, it is adapted to Internet applications and it offers a variety of features that are not found in other codecs.
This format is based on CELP and bitrates can range from 2 to 44 kbps. The key features of Speex are packet loss concealment, fixed-point port, noise suppression, acoustic echo canceller, discontinuous transmission (DTX), variable bitrate operation (VBR), voice activity detection (VAD), intensity stereo encoding, and variable compression in the same bitstream: narrowband (8kHz), wideband (16 kHz), and ultra-wideband (32 kHz).
The features that are found in Speex but not in other codecs are intensity stereo encoding, a VBR mode and integration of multiple sampling rates in the same bitstream (embedded coding).
Speex has been discontinued and now its features are found in Opus.
The final versions of Speex included changes such as moving the non-codec components (preprocessor, jitter buffer, and echo cancellation) to a new libspeexdsp library.
A new jitter buffer algorithm was included with Speex 1.2 beta 3 and libspeex could be built without any floating point support. API additions from the 1.1.x branch were included, while being backward compatible to ensure an easy transition from 1.0.x to 1.1.x.
Although replaced by Opus, which is superior in many aspects, Speex remains a reliable codec highly recommended for speech encoding.
The purpose of Speex is offering users a free alternative to costly proprietary speech codecs and easing the entry of new voice applications.