Codebook Excited Linear Prediction (CELP) synthesis starts with an excitation using a signal obtained from a codebook of signals. The excitation signal is fed into a long-term (pitch) filter followed by a short-term (LPC) filter and a short-term pole-zero postfilter with adaptive spectral tilt compensation. LPC parameters (34 bits/frame) are received as 10 line spectral parameters once per frame. Pitch delay (28 bits/frame), gain (20 bits/frame), codebook index (36 bits/frame), and codebook gain (20 bits/frame) are sent once per subframe (4 times per frame). Error correction (4 bits/frame), synchronization (1 bit/frame), and an expansion bit are also transmitted once per frame. The transmitter's CELP analyzer contains a replica of the receiver's synthesizer (minus the postfilter) that, in the absence of transmission errors, generates speech identical to the receiver's. This approximation is subtracted from the input speech and the difference is perceptually weighted. This perceptually weighted error is then used to drive an analysis-by-synthesis (closed-loop) error minimization gain-shape vector quantization (VQ) search procedure. The search finds the adaptive and stochastic codebook indicies and gains that minimize the perceptually weighted error. Other characteristics of CELP are described below: [1]
[1] J.P. Campbell Jr., V.C. Welch, T.E. Tremain, "An Expandable Error-Protected 4800 BPS CELP Coder (U.S. Federal Standard 4800 BPS Voice Coder)," IEEE International Conference on Acoustics, Speech, and Signal Processing, 1989, pp. 735-737.
Performance Measures - Evaluation results of the 4.8kbps CELP algorithm were compared to 2.4kbps MELP and other DoD Voice Processors in a poster session presented at the IEEE International Conference on Acoustics, Speech, and Signal Processing in Munich Germany, 1997 (ICASSP '97) entitled: A Comparison of the New 2400 BPS MELP Federal Standard with Other Standard Coders
| Acoustic Environment | Talkers | |
| Quiet | Male | Female |
| Office | Male | Female |
| HMMWV | Male | Female |
| E-3A AWACS | Male | Female |
Sound Samples - The accompanying table entries are links to sound samples of the 4.8kbps CELP algorithm. These are 8KHz sampled, 16 bit linear PCM files in WAV format. To learn more about these and other test conditions used by the DDVPC for narrowband digital voice, visit the DDVPC TEC webpage.
Source Code - ARCON Corporation(external
link), as part of it's technical support of the DDVPC, has provided an ftp
site for the housing and distribution of narrowband digital voice compression
algorithms. Two implementations of FS1016 CELP are available. Some UNIX to DOS
conversion will be necessary to implement either in a PC environment. Version
3.2 was developed under BSD UNIX. The CELP_3.2 package includes the FORTRAN
source code, a C language translation, input and processed speech files, and
some utilities. Version 3.3 was developed under System V and is an ANSI C
implementation tested for portability and is considerably more readable than the
3.2 translated version.
Speech generated by the version 3.2 FORTRAN code and it's C code
translation match. Speech generated by the version 3.3 C code matches version
3.2 if the ANSI compatibility compile option is turned off. With the ANSI
compatibility option turned on, versions 3.3 and 3.2 do not match exactly.
However, this slight mismatch appears to be within the arithmetic precision
difference expected between compiled FORTRAN and C. In it's optimum
configuration, CELP_3.3 outperforms CELP_3.2.
The CELP_3.2 package is available in one compressed tar file (celp_3_2a_tar.z, 2.64MB) via ftp. A copy of the included "README" file is available to view before download:CELP3.2 README file. Simply point and click on the hyperlink below to begin the ftp transfer.
Download: 4.8kbps CELP Source Code Version 3.2 (2.64MB)
The CELP_3.3 package is available in one compressed tar file (celp3.3_9Jan98.tar.gz, 89KB) via ftp. A copy of the included "README" file is available to view before download:CELP3.3 README file. Simply point and click on the button below to begin the ftp transfer.
Download: 4.8kbps CELP Source Code Version 3.3 (89KB)
Please note the size of the files and the filename extensions (.z and .gz). Make sure your browser is setup to save *.z and *.gz files to disk and be aware of the time it will take to download.
Algorithmic Delay - The 4.8kbps CELP algorithm, implemented with minimal buffering, has a speech throughput delay of 105.0 msecs.
This website is sponsored by ARCON Corporation for the DDVPC and as such must conform to DoD policies concerning websites. Please read this disclaimer for more information.
Comments concerning design and content of these pages should be sent to info@arcon.com. This page was last updated on 26 October 2001.