]> git.sesse.net Git - ffmpeg/commitdiff
fixed symetric quantization (better quality!)
authorFabrice Bellard <fabrice@bellard.org>
Sun, 16 Sep 2001 21:52:58 +0000 (21:52 +0000)
committerFabrice Bellard <fabrice@bellard.org>
Sun, 16 Sep 2001 21:52:58 +0000 (21:52 +0000)
Originally committed as revision 130 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/ac3enc.c

index 0754c8657084a6cb716cd52b7dbc4d3ba7cc7add..d44347396b268d43d7762ee12fefe19f08e68bc2 100644 (file)
@@ -842,10 +842,12 @@ static inline int sym_quant(int c, int e, int levels)
     int v;
 
     if (c >= 0) {
-        v = (levels * (c << e)) >> 25;
+        v = (levels * (c << e)) >> 24;
+        v = (v + 1) >> 1;
         v = (levels >> 1) + v;
     } else {
-        v = (levels * ((-c) << e)) >> 25;
+        v = (levels * ((-c) << e)) >> 24;
+        v = (v + 1) >> 1;
         v = (levels >> 1) - v;
     }
     assert (v >= 0 && v < levels);