











ITU G.728
Low-Delay CELP Vocoder
for TMS320C3x/'C4x
by DSP Software Engineering, Inc.
Software Overview
The G.728 LD-CELP vocoder software is an implementation of ITU (formerly CCITT) G.728 for the
TMS320C3x. G.728 is an international standard for encoding 8-kHz sampled speech signals for
transmission over 16-kbps channels. G.728 provides approximately 4 kHz of speech bandwidth.
G.728 encodes 5 sample frames of 16-bit linear PCM data into 10-bit code words. DSPSE's G.728
implementation offers two additional, non-standard bit rates of 12.8 and 14.4 kbps (8 and 9-bit
code words respectively). G.728 has numerous applications in products that require high-quality
speech coding with very-low delay at 16 kbps. These include videoconferencing, digital telephony,
and multimedia products.
Features and Benefits
• User-selectable processing frame size (any multiple of 5 samples)
• In-band synchronization capable
• 2.5-ms algorithmic delay (using a 5-sample frame size)
• Dynamically-adjustable codebook size
• Object-based interface
• Run-time selectable, optimal post filtering
• Independent, C-callable functions
• SPOX compatible
Processor and System Requirements
• Devices supported: TMS320C3x, TMS320C4x
• Algorithm category: Vocoder
• Requirements:
All memory requirements are in units of 32-bit words. The MIPs ratings presented require the listed
amounts of on-chip, zero-wait-state program and data memory, and a processing frame size of 5
samples. All measurements were made using an executable demonstration built for a third-party PC
plug-in board.
Function
Avg MIPS*
Chip RAM
Data
Program
Encoder (half duplex)
10.7
0.9 k
0.3 k
9.1 k
Decoder (half duplex)
6.8
0.9 k
0.6 k
8.6 k
Full Duplex**
17.5
1.8 k
0.9 k
16 k
* Significant portions of read-only program and data are shared by the encoder and decoder.
* * MIPs may be reduced by operating with a larger processing frame size.
User Functions
The G.728 implementation consists of two independent, C-callable functions that perform encoding
and decoding operations. It also includes functions that reflect the implementation's object-based
interface. The encoder and decoder interface with arrays of 16-bit linear PCM samples and 8-, 9-,
or 10-bit code words.
G.728 Encoder
G728E_create (...)
Dynamically allocates and initializes data memory for encoder
G728E_delete (...)
Frees encoder's usage of dynamically-allocated data memory
G728E_encode (...)
Encodes a frame of 16-bit linear PCM samples into a frame of code words
G.728 Decoder
G728D_create (...)
Dynamically allocates and initializes data memory for decoder
G728D_delete (...)
Frees decoder's usage of dynamically-allocated data memory
G728D_decode (...)
Decodes a frame of code words into a frame of 16-bit linear PCM samples
Availability
• Source and object code currently available for licensing.
Company Background and Contact Information
DSP Software Engineering, Inc (DSPSE), founded in 1989, is a leading provider of highly-complex
digital-signal-processing software used in telecommunications and multimedia applications such as
computer telephony, digital wireless, PSTN, and satellite communications, and videoconferencing.
Contact: DSP Software Engineering, Inc
175 Middlesex Turnpike
Bedford, MA 01730 USA
(617) 275-3733
Fax: (617) 275-4323
e-mail: info@dspse.com
www: http://www.dspnet.com





© Copyright 1996 Texas Instruments Incorporated. All rights reserved.
Trademarks, Important Notice!