AlgoTron DSP Software for Telecoms & Audio
a TI DSP Third Party Network Member

Home Modems Telephony Audio Utilities Consultancy Glossary Index Contact us

Contact us


Hi-Fi Band Audio Coder DSP C Code

Description: this proprietary audio coder operates a sample rate of 32kHz on an audio bandwidth of 50Hz - 15kHz. The compression is to 96, 112, or 128kb/s, selectable at the main routine interface. The input-output samples are 16-bit as is the coder dynamic range. The algorithm uses Adaptive Differential Pulse Code Modulation (ADPCM) in a sub-band configuration. As such it is a waveform coder and so transcodes many different types of audio signals. Single voice, multiple voices, and music all sound clear and natural through headphones or loudspeakers, though not quite with "CD" quality because of the coder limitations. Hence the coder is termed "Hi-Fi Band" as opposed to proper hi-fi for CD quality which has a wider audio bandwidth (44.1kHz sample rate) and better dynamic range (24 bits).
        The C code is suitable for any processor with an ANSI-compliant C compiler. It is designed especially for efficient operation on low-cost fixed-point DSP- and general-purpose micro-processors. All data memory is specified as 16-bit integer words. Multiplies are integer 16x16-bit with 32-bit products.
        The encoder and decoder routines are operated as separate items with individual main subroutine calls. Each should be called every 8kHz. The encoder requires 4 successive input samples, and generates a single 12-/14-/16-bit ADPCM code per call depending on the data rate set as respectively 96/112/128kb/s. The decoder takes the ADPCM code as input and generates 4 successive output samples.
         A further subroutine call can be made for initialisation of encoder or decoder. The code routine calls are re-entrant to allow multi-channel operation, the memory block associated with each channel being pointer-addressed. A comprehensive user's guide is provided with the code.

Processor Load:

Function MIPS# Data memory (words) Prog memory (kbytes)#
Encoder 24.5 144/channel 2.1
Decoder 22.9 144/channel 2.4
Encoder + Decoder 47.4 288/channel 3.4

- #example figures from compiling for the TI TMS320C5000(C55x) DSP processor

Availability: NOW - sale is under licence - integration support offered

Home Modems Telephony Audio Utilities Consultancy Glossary Index Contact us