Linear prediction analysis
To actually calculate the LPC coefficients, the idea is very simple:
for each frame (of 5–10 ms duration) we need to find parameters, a
1 to ap such that the error term e[t
] is as small as possible. However, to put this into practise requires a
knowledge of mathematics beyond the level of this course (see Schroeder 1985:
55–6 for the details). And in general, we do not need to understand the method
in order to use it in practise. My program lpcana.c
, for instance, uses the function memcof, taken from Press
et al. (1992: 568–9). This takes a vector of data (an array of e.g.
80 consecutive samples), the size of each frame n, and the number
of desired coefficients m (i.e. the prediction order), and returns
an array d containing the m coefficients. (It also returns
the mean square error, though we do not use this, as we have to calculate
the sample-by-sample error anyway, in order to obtain the residual.)
Next: Trying it out