Linear Prediction functions
Including, generation of coefficients from the signal, reflection coefficients, line spectral frequencies, areas.
sig2lpc()
void sig2lpc ( const EST_FVector &sig, EST_FVector &acf, EST_FVector &ref, EST_FVector &lpc) Produce the full set of linear prediction coefficients from a frame of speech waveform.
Parameters sig the frame of input waveform
acf the autocorrelation coefficients
ref the reflection coefficients
lpc the LPC coefficients The order of the lpc analysis is given as the size of the <parameter> lpc <parameter> vector - 1. The coefficients are placed in the locations 1 - size, and the energy is placed in location 0.
lpc2cep()
void lpc2cep ( const EST_FVector &lpc, EST_FVector &cep) Calulate cepstral coefficients from lpc coefficients.
It is possible to calculate a set of cepstral coefficients from lpc coefficients using the relationship:
The order of the cepstral analysis can be different from the lpc order. If the cepstral order is greater, interpolation is used (FINISH add equation). Both orders are taken from the lengths of the respective vectors. Note that these cepstral coefficients take on the assumptions (and errors) of the lpc model and hence will not be the same as cepstral coefficients calculated using DFT functions.
Parameters lpc the LPC coefficients (input)
lpc the cepstral coefficients (output)
sig2lpc()
void sig2lpc ( const EST_FVector &sig, EST_FVector &lpc) Produce a set linear prediction coefficients from a frame of speech waveform. {\tt sig} is the frame of input waveform, and {\tt lpc} are the LPC coefficients. The {\bf order} of the lpc analysis is given as the size of the {\tt lpc} vector -1. The coefficients are placed in the locations 1 - size, and the energy is placed in location 0.
sig2ref()
void sig2ref ( const EST_FVector &sig, EST_FVector &ref) Produce a set of reflection coefficients from a frame of speech waveform. {\tt sig} is the frame of input waveform, and {\tt ref} are the LPC coefficients. The {\bf order} of the lpc analysis is given as the size of the {\tt lpc} vector -1. The coefficients are placed in the locations 1 - size, and the energy is placed in location 0.
Area Functions
Using the analogy of the lossless tube, the cross-sectional areas of the sections of this tube are related to the reflection coefficients and can be calculated from the following relationship:
ref2truearea()
void ref2truearea ( const EST_FVector &ref, EST_FVector &area) The area according to the formula
ref2area()
void ref2area ( const EST_FVector &ref, EST_FVector &area) An approximation of the area is calculate by skipping the denominator in the formula
lpc2ref()
void lpc2ref ( const EST_FVector &lpc, EST_FVector &ref) Calculate the reflection coefficients from the lpc coefficients. Note that in the standard linear prediction analysis, the reflection coefficients are generated as a by-product. @see sig2lpc
ref2lpc()
void ref2lpc ( const EST_FVector &ref, EST_FVector &lpc) Calculate the linear prediction coefficients from the reflection coefficients. Use the equation:
lpc2lsf()
void lpc2lsf ( const EST_FVector &lpc, EST_FVector &lsf) Calculate line spectral frequencies from linear prediction coefficients. Use the equation:
lsf2lpc()
void lsf2lpc ( const EST_FVector &lsf, EST_FVector &lpc) Calculate line spectral frequencies from linear prediction coefficients. Use the equation: