]> rtime.felk.cvut.cz Git - frescor/ffmpeg.git/commitdiff
div -> mul
authorlorenm <lorenm@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Mon, 1 Oct 2007 05:56:30 +0000 (05:56 +0000)
committerlorenm <lorenm@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Mon, 1 Oct 2007 05:56:30 +0000 (05:56 +0000)
git-svn-id: file:///var/local/repositories/ffmpeg/trunk@10630 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b

libavcodec/flacenc.c

index d02b3e462691df1f97de7af52cb035d38d2745ab..c0bd830efe127b3349051e4d96d105c3f6199ef8 100644 (file)
@@ -770,7 +770,7 @@ static int lpc_calc_coefs(FlacEncodeContext *s,
         compute_lpc_coefs(autoc, max_order, lpc, ref);
     }else{
         LLSModel m[2];
-        double var[MAX_LPC_ORDER+1], eval, weight;
+        double var[MAX_LPC_ORDER+1], weight;
 
         for(pass=0; pass<use_lpc-1; pass++){
             av_init_lls(&m[pass&1], max_order);
@@ -781,11 +781,14 @@ static int lpc_calc_coefs(FlacEncodeContext *s,
                     var[j]= samples[i-j];
 
                 if(pass){
+                    double eval, inv, rinv;
                     eval= av_evaluate_lls(&m[(pass-1)&1], var+1, max_order-1);
                     eval= (512>>pass) + fabs(eval - var[0]);
+                    inv = 1/eval;
+                    rinv = sqrt(inv);
                     for(j=0; j<=max_order; j++)
-                        var[j]/= sqrt(eval);
-                    weight += 1/eval;
+                        var[j] *= rinv;
+                    weight += inv;
                 }else
                     weight++;