Content deleted Content added
m →top |
IznoRepeat (talk | contribs) m add WP:TEMPLATECAT to remove from template; genfixes |
||
(26 intermediate revisions by 18 users not shown) | |||
Line 1:
{{Short description|Speech coding algorithm}}
'''Code-excited linear prediction''' ('''CELP''') is a [[speech coding]] algorithm originally proposed by [[Manfred_R._Schroeder|M. R. Schroeder]] and [[Bishnu S. Atal|B. S. Atal]] in 1985. At the time, it provided significantly better quality than existing low bit-rate algorithms, such as [[residual-excited linear prediction]] and [[linear predictive coding]] [[vocoders]] (e.g., [[FS-1015]]). Along with its variants, such as [[algebraic CELP]], [[relaxed CELP]], [[low-delay CELP]] and [[vector sum excited linear prediction]], it is currently the most widely used speech coding algorithm. It is also used in [[MPEG-4 Audio]] speech coding. CELP is commonly used as a generic term for a class of algorithms and not for a particular codec.▼
{{No footnotes|date=May 2022}}
▲'''Code-excited linear prediction''' ('''CELP''') is a [[linear predictive coding|linear predictive]] [[speech coding]] algorithm originally proposed by [[
==
The CELP algorithm is based on four main ideas:
* Using the [[source-filter model of speech production]] through [[linear prediction]] (LP) (see the textbook "speech coding algorithm");
* Using an adaptive and a fixed codebook as the input (excitation) of the LP model;
* Performing a search in closed-loop in a
* Applying [[vector quantization]] (VQ)
Line 13 ⟶ 15:
[[File:Celp decoder.svg|300px|thumb|Figure 1: CELP decoder]]
Before exploring the complex encoding process of CELP we introduce the decoder here. Figure 1 describes a generic CELP decoder. The excitation is produced by summing the contributions from
:<math>e[n]=
where <math>e_{
The filter that shapes the excitation has an all-pole model of the form <math>1/A(z)</math>, where <math>A(z)</math> is called the prediction filter and is obtained using linear prediction ([[Levinson recursion|Levinson–Durbin algorithm]]). An all-pole filter is used because it is a good representation of the human vocal tract and because it is easy to compute.
==CELP encoder==
The main principle behind CELP is called
In order to achieve real-time encoding using limited computing resources, the CELP search is broken down into smaller, more manageable, sequential searches using a simple perceptual weighting function. Typically, the encoding is performed in the following order:
* [[Linear
* The
* The fixed (innovation) codebook is searched.
===Noise weighting===
Line 38 ⟶ 41:
==See also==
* [[MPEG-4 Part 3]] (CELP as an MPEG-4 Audio Object Type)
* [[G.728]]
* [[G.718]]
* [[G.729.1]]
* [[Comparison of audio
* [[CELT]] is a related audio codec that borrows some ideas from CELP.
==References==▼
* B.S. Atal, "The History of Linear Prediction," ''IEEE Signal Processing Magazine'', vol. 23, no. 2, March 2006, pp. 154–161.▼
* M. R. Schroeder and B. S. Atal, "Code-excited linear prediction (CELP): high-quality speech at very low bit rates," in ''Proceedings of the IEEE [[International Conference on Acoustics, Speech, and Signal Processing]]'' (ICASSP), vol. 10, pp. 937–940, 1985.▼
==External links==
* This article is based on a [http://people.xiph.org/~jm/papers/speex_lca2006.pdf paper] presented at [http://linux.conf.au/ Linux.Conf.Au]
* Some parts based on the [[Speex]] codec [
* [http://www.speech.cs.cmu.edu/comp.speech/Section3/Software/celp-3.2a.html reference implementations] of CELP 1016A (CELP 3.2a) and LPC 10e. {{Webarchive|url=https://web.archive.org/web/20161212000335/http://www.speech.cs.cmu.edu/comp.speech/Section3/Software/celp-3.2a.html |date=2016-12-12 }}
* [https://web.archive.org/web/20090602220112/http://www.otolith.com/otolith/olt/lpc.html Linear Predictive Coding (LPC)]
=== Selected readings ===
* [
* [
▲==References==
▲* B.S. Atal, "The History of Linear Prediction," ''IEEE Signal Processing Magazine'', vol. 23, no. 2, March 2006, pp. 154–161.
▲* M. R. Schroeder and B. S. Atal, "Code-excited linear prediction (CELP): high-quality speech at very low bit rates," in ''Proceedings of the IEEE [[International Conference on Acoustics, Speech, and Signal Processing]]'' (ICASSP), vol. 10, pp. 937–940, 1985.
{{Compression Methods}}
Line 62 ⟶ 65:
[[Category:Speech codecs]]
[[Category:Data compression]]
|