Browse code

right shift the values by 8 in GAQ remap "B" table. data now fits in int8_t.

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

Justin Ruggles authored on 2008/08/25 09:15:29
Showing 2 changed files
... ...
@@ -87,18 +87,19 @@ const int16_t ff_eac3_gaq_remap_2_4_a[9][2] = {
87 87
 /**
88 88
  * Table E3.6, Gk=2 & Gk=4, B
89 89
  * Large mantissa inverse quantization, negative mantissa remapping offsets
90
+ * Table values from the spec are right-shifted by 8 to simplify calculations.
90 91
  * ff_eac3_gaq_remap_3_4_b[hebap-8][Gk=2,4]
91 92
  */
92
-const int16_t ff_eac3_gaq_remap_2_4_b[9][2] = {
93
-    {  -5461, -1170},
94
-    { -11703, -4915},
95
-    { -14199, -6606},
96
-    { -15327, -7412},
97
-    { -15864, -7805},
98
-    { -16126, -7999},
99
-    { -16255, -8096},
100
-    { -16320, -8144},
101
-    { -16352, -8168}
93
+const int8_t ff_eac3_gaq_remap_2_4_b[9][2] = {
94
+    { -22,  -5 },
95
+    { -46, -20 },
96
+    { -56, -26 },
97
+    { -60, -29 },
98
+    { -62, -31 },
99
+    { -63, -32 },
100
+    { -64, -32 },
101
+    { -64, -32 },
102
+    { -64, -32 },
102 103
 };
103 104
 
104 105
 static const int16_t vq_hebap1[4][6] = {
... ...
@@ -29,7 +29,7 @@ extern const uint8_t ff_eac3_hebap_tab[64];
29 29
 extern const uint8_t ff_eac3_bits_vs_hebap[20];
30 30
 extern const int16_t ff_eac3_gaq_remap_1[12];
31 31
 extern const int16_t ff_eac3_gaq_remap_2_4_a[9][2];
32
-extern const int16_t ff_eac3_gaq_remap_2_4_b[9][2];
32
+extern const int8_t  ff_eac3_gaq_remap_2_4_b[9][2];
33 33
 
34 34
 extern const int16_t (*ff_eac3_vq_hebap[8])[6];
35 35
 extern const uint8_t ff_eac3_frm_expstr[32][6];