cc [ flag... ] file... –lmlib [ library... ] #include <mlib.h> mlib_status mlib_SignalLSP2LPC_F32(mlib_f32 *lpc, const mlib_f32 *lsp, mlib_s32 order);
The mlib_SignalLSP2LPC_F32() function converts line spectral pair coefficients to linear prediction coefficients.
The line spectral pair (LPS) coefficients are defined as the roots of the following two polynomials:
-(M+1) -1 P(z) = A(z) + z * A(z ) -(M+1) -1 Q(z) = A(z) - z * A(z )
where A(z) is the inverse filter
M -i A(z) = 1- SUM a(i) * z i=1
Note that since P(z) is symmetric and Q(z) is antisymmetric all roots of these polynomials are on the unit circle and they alternate each other. P(z) has a root at z = -1 (w = PI) and Q(z) has a root at z = 1 (w = 0).
The line spectral frequency (LPF) are the angular frequency of the line spectral pair (LPS) coefficients.
q = cos(w)
where q is the LPS and w is the LPF.
See Fundamentals of Speech Recognition by Lawrence Rabiner and Biing-Hwang Juang, Prentice Hall, 1993.
The function takes the following arguments:
The linear prediction coefficients.
The line spectral pair coefficients.
The order of the linear prediction filter.
The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.
See attributes(5) for descriptions of the following attributes: