diff --git a/libavcodec/lpc.c b/libavcodec/lpc.c index 5c5d417706dc54c0b346ba6626dbc63a7fef3ace..253267c5aa705f46ec89d5ceb48c7750b3bb25f1 100644 --- a/libavcodec/lpc.c +++ b/libavcodec/lpc.c @@ -37,9 +37,10 @@ static void compute_lpc_coefs(const double *autoc, int max_order, for(i=0; i<max_order; i++) { double r = -autoc[i+1]; - for(j=0; j<i; j++) { + + for(j=0; j<i; j++) r -= lpc_tmp[j] * autoc[i-j]; - } + r /= err; ref[i] = fabs(r); @@ -51,13 +52,12 @@ static void compute_lpc_coefs(const double *autoc, int max_order, lpc_tmp[j] += r * lpc_tmp[i-1-j]; lpc_tmp[i-1-j] += r * tmp; } - if(i & 1) { + + if(i & 1) lpc_tmp[j] += lpc_tmp[j] * r; - } - for(j=0; j<=i; j++) { + for(j=0; j<=i; j++) lpc[i][j] = -lpc_tmp[j]; - } } }