speaker
Oxford University logo
Phonetics Laboratory
Faculty of Linguistics, Philology, and Phonetics

Trying it out

The function memcof, which this program uses, is defined in the file memcof.c. This, in turn, refers to a utility file nrutil.c. Thus, to compile lpcana.c, it is also necessary to compile memcof.c and nrutil.c, and then link all three object files together, as follows:


gcc –c nrutil.c
gcc –c memcof.c
gcc –c lpcana.c
gcc –o lpcana.exe nrutil.o memcof.o lpcana.o

The program lpcana.exe can be used to generate a file of coefficients and the corresponding error signal. For instance, lpcana joe.dat joe_err.dat joe_coeffs.dat generates the error signal shown in figure 5.6 (b) . Then, lpcsyn joe_err.dat joe_coeffs.dat joe_syn.dat will generate a synthetic reconstruction of joe.dat.

It is instructive to listen to these signals. joe_lpc.dat , while not identical to joe.dat , is a close copy. There may be a somewhat “bubbly” or “burbling” quality to it, because of inaccuracies in the prediction. The residual, joe_err.dat , is also intelligible, though it is a very rough, whispery version of the original input.


Next: Applications of linear prediction