cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_SignalLPC2LSP_S16(mlib_s16 *lsp, const mlib_s16 *lpc, mlib_s32 lscale, mlib_s32 order);
The mlib_SignalLPC2LSP_S16() function converts linear prediction coefficients to line spectral pair 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 function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.
See attributes(5) for descriptions of the following attributes: