]> git.sesse.net Git - ffmpeg/commitdiff
remove a branch from an inner loop.
authorLoren Merritt <lorenm@u.washington.edu>
Sat, 27 Oct 2007 13:39:19 +0000 (13:39 +0000)
committerLoren Merritt <lorenm@u.washington.edu>
Sat, 27 Oct 2007 13:39:19 +0000 (13:39 +0000)
1% faster flac encoding.

Originally committed as revision 10865 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/flacenc.c

index c0bd830efe127b3349051e4d96d105c3f6199ef8..3e92c06939ee5508045d90cb468fc71127213188 100644 (file)
@@ -474,16 +474,15 @@ static uint32_t calc_optimal_rice_params(RiceContext *rc, int porder,
     uint32_t all_bits;
 
     part = (1 << porder);
-    all_bits = 0;
+    all_bits = 4 * part;
 
     cnt = (n >> porder) - pred_order;
     for(i=0; i<part; i++) {
-        if(i == 1) cnt = (n >> porder);
         k = find_optimal_param(sums[i], cnt);
         rc->params[i] = k;
         all_bits += rice_encode_count(sums[i], cnt, k);
+        cnt = n >> porder;
     }
-    all_bits += (4 * part);
 
     rc->porder = porder;