lsp: convert variable-length arrays to fixed size
Max LP order is defined to be 16, fixed-size buffers are OK. Originally committed as revision 23795 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
@@ -90,8 +90,8 @@ static void lsp2poly(int* f, const int16_t* lsp, int lp_half_order)
|
|||||||
void ff_acelp_lsp2lpc(int16_t* lp, const int16_t* lsp, int lp_half_order)
|
void ff_acelp_lsp2lpc(int16_t* lp, const int16_t* lsp, int lp_half_order)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int f1[lp_half_order+1]; // (3.22)
|
int f1[MAX_LP_HALF_ORDER+1]; // (3.22)
|
||||||
int f2[lp_half_order+1]; // (3.22)
|
int f2[MAX_LP_HALF_ORDER+1]; // (3.22)
|
||||||
|
|
||||||
lsp2poly(f1, lsp , lp_half_order);
|
lsp2poly(f1, lsp , lp_half_order);
|
||||||
lsp2poly(f2, lsp+1, lp_half_order);
|
lsp2poly(f2, lsp+1, lp_half_order);
|
||||||
@@ -111,7 +111,7 @@ void ff_acelp_lsp2lpc(int16_t* lp, const int16_t* lsp, int lp_half_order)
|
|||||||
|
|
||||||
void ff_acelp_lp_decode(int16_t* lp_1st, int16_t* lp_2nd, const int16_t* lsp_2nd, const int16_t* lsp_prev, int lp_order)
|
void ff_acelp_lp_decode(int16_t* lp_1st, int16_t* lp_2nd, const int16_t* lsp_2nd, const int16_t* lsp_prev, int lp_order)
|
||||||
{
|
{
|
||||||
int16_t lsp_1st[lp_order]; // (0.15)
|
int16_t lsp_1st[MAX_LP_ORDER]; // (0.15)
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* LSP values for first subframe (3.2.5 of G.729, Equation 24)*/
|
/* LSP values for first subframe (3.2.5 of G.729, Equation 24)*/
|
||||||
|
|||||||
@@ -82,6 +82,7 @@ void ff_acelp_lp_decode(int16_t* lp_1st, int16_t* lp_2nd, const int16_t* lsp_2nd
|
|||||||
|
|
||||||
|
|
||||||
#define MAX_LP_HALF_ORDER 8
|
#define MAX_LP_HALF_ORDER 8
|
||||||
|
#define MAX_LP_ORDER (2*MAX_LP_HALF_ORDER)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reconstructs LPC coefficients from the line spectral pair frequencies.
|
* Reconstructs LPC coefficients from the line spectral pair frequencies.
|
||||||
|
|||||||
Reference in New Issue
Block a user