changeset 3384:573fed4bf20f libavcodec

simplify
author michael
date Sun, 02 Jul 2006 09:30:51 +0000
parents 769d68b12d26
children 340e5d35b326
files flacenc.c
diffstat 1 files changed, 6 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/flacenc.c	Sun Jul 02 02:05:35 2006 +0000
+++ b/flacenc.c	Sun Jul 02 09:30:51 2006 +0000
@@ -301,20 +301,19 @@
                       uint32_t sums[][256])
 {
     int i, j;
-    int parts, cnt;
-    uint32_t *res;
+    int parts;
+    uint32_t *res, *res_end;
 
     /* sums for highest level */
     parts = (1 << pmax);
     res = &data[pred_order];
-    cnt = (n >> pmax) - pred_order;
+    res_end = &data[n >> pmax];
     for(i=0; i<parts; i++) {
-        if(i == 1) cnt = (n >> pmax);
-        if(i > 0) res = &data[i*cnt];
         sums[pmax][i] = 0;
-        for(j=0; j<cnt; j++) {
-            sums[pmax][i] += res[j];
+        while(res < res_end){
+            sums[pmax][i] += *(res++);
         }
+        res_end+= n >> pmax;
     }
     /* sums for lower levels */
     for(i=pmax-1; i>=0; i--) {