
Although other modelling techniques, such as the Real Cepstrum [Deller et al.,2000] exist, LPC offers a computationally efficient and accurate method for estimating speech parameters. As a consequence, it has earned its place as an industry standard technique for speech coding.
Human Speech Production

Figure 1 - The human speech production system
A simplified illustration of the human speech production system is in Figure 1. The process of human speech synthesis may therefore be summarized as follows [Deller et al., 2000]:
Air pushed out from the lungs travels into the trachea, then up into the glottis, where it is periodically interrupted by the movement of the vocal cords. The tension of the vocal cords is adjusted by the larynx so that the chords vibrate in a oscillatory fashion, resulting in the production of voiced speech. During unvoiced speech, constrictions within the vocal tract (oral cavities – mouth, throat, etc.) forces air through the constriction to produce turbulence. An example is the /s/ sound (fricative) in the word "six".
There are many other anatomical components that contribute to the production of speech, such as the velum, teeth, lips and tongue. These are referred to as articulators and move to different positions in order to produce various speech sounds.
Modelling the system

Figure 2 - A general discrete time model for speech production
Analysing Figure 2, we may derive a system transfer function for voiced and unvoiced speech
S(z) = E(z).G(z).H(z).R(z) (voiced speech) (1)
S(z) = E(z).H(z).R(z) (unvoiced speech) (2)
Where, E(z) represents the excitation (Periodic Impulse train or a white noise sequence)
The glottis can be modelled as a two pole signal (where u(n) is a step input sequence):
(3)
The effects of lip radiation may be modelled as a single zero lying just inside the unit circle. However, since we are trying to preserve an all pole structure for LPC, we can represent R(z) as shown in Eqn. (4). Where k is theoretically infinite, but practically finite, since zo < 1
(4)
Pre-emphasis
Eqn. (4) can be simplified further by employing pre-emphasis, P(z). Since, R(z) with its zero near z=1, tends to cancel the spectral effects of one of the glottal poles. Therefore, by introducing a second zero near z=1, P(z), the spectral contributions of G(z) and R(z) have been eliminated from the analysis.
(5)
Speech Coding Example
The Matlab m file, "lpc_example.m" is a simple example designed to give you an idea of how to create an LPC speech coder. For the more adept, see the section on the GSM algorithm.
Download "lpc_example" (requires signal processing tool box)