@ -34,21 +34,21 @@
* needed for LSP to LPC conversion .
* needed for LSP to LPC conversion .
* We only need to calculate the 6 first elements of the polynomial .
* We only need to calculate the 6 first elements of the polynomial .
*
*
* @ param lspf line spectral pair frequencies
* @ param lsp line spectral pairs in cosine domain
* @ param f [ out ] polynomial input / output as a vector
* @ param f [ out ] polynomial input / output as a vector
*
*
* TIA / EIA / IS - 733 2.4 .3 .3 .5 - 1 / 2
* TIA / EIA / IS - 733 2.4 .3 .3 .5 - 1 / 2
*/
*/
static void lsp2polyf ( const double * lspf , double * f , int lp_half_order )
static void lsp2polyf ( const double * lsp , double * f , int lp_half_order )
{
{
int i , j ;
int i , j ;
f [ 0 ] = 1.0 ;
f [ 0 ] = 1.0 ;
f [ 1 ] = - 2 * lspf [ 0 ] ;
f [ 1 ] = - 2 * lsp [ 0 ] ;
lspf - = 2 ;
lsp - = 2 ;
for ( i = 2 ; i < = lp_half_order ; i + + )
for ( i = 2 ; i < = lp_half_order ; i + + )
{
{
double val = - 2 * lspf [ 2 * i ] ;
double val = - 2 * lsp [ 2 * i ] ;
f [ i ] = val * f [ i - 1 ] + 2 * f [ i - 2 ] ;
f [ i ] = val * f [ i - 1 ] + 2 * f [ i - 2 ] ;
for ( j = i - 1 ; j > 1 ; j - - )
for ( j = i - 1 ; j > 1 ; j - - )
f [ j ] + = f [ j - 1 ] * val + f [ j - 2 ] ;
f [ j ] + = f [ j - 1 ] * val + f [ j - 2 ] ;
@ -59,16 +59,16 @@ static void lsp2polyf(const double *lspf, double *f, int lp_half_order)
/**
/**
* Reconstructs LPC coefficients from the line spectral pair frequencies .
* Reconstructs LPC coefficients from the line spectral pair frequencies .
*
*
* @ param lspf line spectral pair frequencies
* @ param lsp line spectral pairs in cosine domain
* @ param lpc linear predictive coding coefficients
* @ param lpc linear predictive coding coefficients
*/
*/
void ff_celp_lspf 2lpc ( const double * lspf , float * lpc )
void ff_acelp_lspd 2lpc ( const double * lsp , float * lpc )
{
{
double pa [ 6 ] , qa [ 6 ] ;
double pa [ 6 ] , qa [ 6 ] ;
int i ;
int i ;
lsp2polyf ( lspf , pa , 5 ) ;
lsp2polyf ( lsp , pa , 5 ) ;
lsp2polyf ( lspf + 1 , qa , 5 ) ;
lsp2polyf ( lsp + 1 , qa , 5 ) ;
for ( i = 4 ; i > = 0 ; i - - )
for ( i = 4 ; i > = 0 ; i - - )
{
{