Royalty Free Encoding/Decoding Library for Speech Compression, Decompression
Microchip Technology has announced a speech encoding (compression) and decoding (decompression) library for its 16-bit dsPICG Digital Signal Controllers (DSCs). The dsPIC30F Speech Encoding/Decoding Library is based on the Speex open source compression format, and it achieves a 16:1 compression ratio and toll quality speech (PESQ 3.7-4.2). The library enables embedded designers to transmit more messages over a given bandwidth, or store longer amounts of speech in a given memory space, while maintaining desirable sound quality and intelligibility. Any embedded application that transmits voice over limited bandwidth or has memory constrained playback is appropriate for this speech compression/decompression library. Specific example applications include VoIP, tapeless answering machines, voice announcement systems, medical equipment, appliances, building and home safety systems, intercoms, and proprietary communications equipment. The library has a documented Application Programmer’s Interface (API) for incorporating speech compression and/or decompression into an application. The library also supports optional voice activity detection. The speech encoder samples data at 8 kHz, using either the dsPIC DSC’s on-chip 12-bit ADC or a 16-bit input obtained from an external CODEC, via the on-chip codec interface port. The encoder achieves up to a 16:1 compression ratio and generates a fixed 8 kbps output rate. Output of decoded speech can be accomplished using the dsPIC DSC’s standard PWM or via the interface to an external CODEC. The encoder requires 19 MIPS (worst case), 33 KB of program memory and 6.2 KB of RAM. The decoder requires 3 MIPS, 15 KB of program memory and 3.2 KB of RAM. Storing speech requires 1 KB of memory for each second of speech. The library permits the compressed speech data to be stored in on-chip memory (Flash, EEPROM or RAM) or to an external Flash memory.
13-Dec-2005