SPlsfXpc
Routine

void SPlsfXpc (const float lsf[], float pc[], int Np)
Purpose

Convert LSF's to predictor coefficients
Description
This routine converts a vector of line spectral frequencies to the
corresponding vector of predictor coefficients. The LSF's are the
frequencies (angles) corresponding to roots on the unit circle. These roots
are the roots of two polynomials, one symmetric, the other antisymmetric.
The oddnumbered LSF's specify roots of one polynomial, while the even
numbered LSF's specify the roots of the other polynomial. The polynomials
are formed by the polynomial multiplication of the factors representing
conjugate pairs of roots. The predictor coefficients are formed by the
addition of the two polynomials.
Line spectral frequencies and predictor coefficients are usually expressed
algebraically as vectors with oneoffset indexing. The correspondence to the
zerooffset Carrays is as follows.
l(1) <==> lsf[0] first (lowest frequency) line spectral frequency
l(i) <==> lsf[i1] 1 <= i < Np
p(1) <==> pc[0] predictor coefficient corresponding to lag 1
p(i) <==> pc[i1] 1 <= i < Np
Parameters

> const float lsf[]

Array of Np line spectral frequencies. Each line spectral frequency lies
in the range 0 to pi. If the LSF's are wellordered (ascending order),
the resulting predictor corresponds to a minimum phase prediction error
filter.

> int Np

Number of coefficients (at most 50)

< float pc[]

Output array of Np predictor coefficients. These are the coefficients
of the predictor filter, with pc[0] being the predictor coefficient
corresponding to lag 1, and pc[Np1] corresponding to lag Np.

> int Np

Number of coefficients (at most 50)
Author / revision
P. Kabal
/ Revision 1.21 2003/05/09
See Also
SPcepXpc,
SPcorXpc,
SPecXpc,
SPrcXpc
Main Index libtsp