lpc

From STX Wiki
Jump to navigationJump to search

Compute the linear prediction coefficients using the autocorrelation method. This function implements an all-pole filter approximation of the acoustic tube modell of the vocal tract. The implementation is based on the book "Linear Prediction of Speech" (J.D. Markel & A.H. Gray, Springer 1976).

Usage
lpc(x, m, p {, type {, lfft}})
x
the signal vector; this should be a speech signal without windowing function (because the hamming-window is applied to x by this function)
m
number of coefficients
rule of thumb: m ~ samplingrate / 1000 * 1.25
p
differentiation factor; 0 ≤ p ≤ 1 (default=0)
type
output selector; 0 ≤ type ≤ 4 (default=0)
lfft
the length of the fft to be used for the computation of the transfer function (amplitude spectrum) of the inverse filter; m+1 < lfft
note: if necessary, the value of lfft is automatically corrected to the next possible value
Description
  1. apply differentiation to signal x
  2. apply hamming window to signal x
  3. use the autocorelation method to compute the inverse filter coefficients ai, the reflection coefficients rc and the error (or residual) energy alpha
  4. convert coefficients to the selected result
Result
A vector y containing the result of the function.
type y nrow(y) description
0 amplitude spectrum of the inverse filter lfft/2+1 this function can be used in speech analysis to compute the transfer function of the vocal tract (e.g. for formant extraction)
1 y[0]=alpha
y[1..M+1]=ai[0..m]
m+2 the error energy (alpha) and the m+1 inverse filter coefficients ai
2 y[0]=alpha
y[1..M]=rc[0..m-1]
m+1 the error energy (alpha) and the m reflection coefficients rc
3 y[0]=alpha
y[1..M+1]=ar[0..m]
m+2 the error energy (alpha) and the m area coefficients ar
(ar[i] ~ area of section i)
4 y[0]=alpha
y[1..M+1]=lar[0..m]
m+2 the error energy (alpha) and the m log. area coefficients lar
(lar[i] ~ diameter of section i)
See also
fft, ifft, dft, dct, cepstrum

<function list>

Navigation menu

Personal tools