]> rtime.felk.cvut.cz Git - frescor/ffmpeg.git/commitdiff
Simpliy exp*table init, based on patch by reimar.
authormichael <michael@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Sat, 7 Nov 2009 20:10:02 +0000 (20:10 +0000)
committermichael <michael@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Sat, 7 Nov 2009 20:10:02 +0000 (20:10 +0000)
git-svn-id: file:///var/local/repositories/ffmpeg/trunk@20470 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b

libavcodec/mpegaudio_tablegen.h

index 362c30b4beb15a774adb583ce42ec84283b0b5fe..9c9ab496654e852ce21f6717d1a3e080d6d2b585 100644 (file)
@@ -40,7 +40,7 @@ static uint32_t expval_table[512][16];
 
 static void mpegaudio_tableinit(void)
 {
-    int i;
+    int i, value, exponent;
     for(i=1;i<TABLE_4_3_SIZE;i++) {
         double value = i/4;
         double f, fm;
@@ -54,13 +54,13 @@ static void mpegaudio_tableinit(void)
         table_4_3_value[i] = m;
         table_4_3_exp[i] = -e;
     }
-    for(i=0; i<512*16; i++){
-        double value = i & 15;
-        int exponent= (i>>4);
-        double f= value * cbrtf(value) * pow(2, (exponent-400)*0.25 + FRAC_BITS + 5);
-        expval_table[exponent][i&15]= llrint(f);
-        if((i&15)==1)
-            exp_table[exponent]= llrint(f);
+    for(exponent=0; exponent<512; exponent++) {
+        for(value=0; value<16; value++) {
+            int i= value + 16*exponent;
+            double f= (double)value * cbrtf(value) * pow(2, (exponent-400)*0.25 + FRAC_BITS + 5);
+            expval_table[exponent][value]= llrint(f);
+        }
+        exp_table[exponent]= expval_table[exponent][1];
     }
 }
 #endif /* CONFIG_HARDCODED_TABLES */