SPEEX
CODEC OVERVIEW
Speex was developed as an open source standard in the year 2003. The codec operates on each 20 ms frame of 6-bit PCM speech signals sampled at 8 KHz, 16 KHz, or 32 KHz and generates a compressed bit-stream having bit-rates in the range of 2.15 kbps to 42.2 kbps respectively. Speex is based on Code Excited Linear Prediction (CELP) algorithm. The encoder provides an option of selecting the bit-rate using the quality index (varying from 0 – 10) and the degree of codebook search using the complexity index (varying from 0 – 10). The recommended complexity index is between 2 and 4. The decoder supports packet loss concealment and provides an option to generate either narrow band (8 KHz) or wide-band (16 KHz) speech output. Speex is designed for packet networks and voice over IP (VoIP) applications.
SALIENT FEATURES
- Based on Speex open-source standard version 1.2rc1.
 - Fixed-point ANSI C implementation.
 - Re-entrant implementation.
 - C-callable APIs.
 - Operates on 20ms frame size.
 - Operates on speech signals sampled at 16KHz or 8 KHz.
 - Supports bit-rates 2.15, 3.95, 5.95, 8, 11, 15, 18.2, and 24.6 kbps in narrow band (8 KHz) mode.
 - Supports bit-rates 3.95, 5.75, 7.75, 9.8, 12.8, 16.8, 20.6, 23.8, 27.8, 34.2, and 42.2 kbps in wide band. (16 KHz) mode.
 - Supports configuring the complexity level at init-time.
 - Supports configuring the quality or bit-rate at init-time.
 - Supports integrated Packet Loss Concealment (PLC) algorithm.
 - Optional support for xDM APIs for TI implementations.
 
TESTING FEATURES
- Tested for bit-exactness with standard as well as a large database of non-standard test vectors.
 - Module is fully interruptible.
 - ARM implementation tested for any illegal memory access.
 - Tested for compliance with register preservation requirements
 - Tested for Input buffer corruption
 - Tested for I/O buffer alignment requirements
 - Tested for multi-instance implementation
 - Tested for 100% code coverage
 - Range validation for all the API parameters
 - Tested with scratch contamination at frame boundaries
 - Tested for packet loss conditions with 5% loss to 25% loss
 - ARM implementation validated on OMAP3530 (Cortex-A8) and DM6446/DM6467 (ARM926EJ-S) platforms.
 - C55x implementation validated on C5510 and C5505 platforms.
 
AVAILABLE PLATFORM(S)
ARM9E, ARM11, Cortex-A8, Cortex-A9, TI C64x+, TI C66x, and TI C55x.