aacenc: Remove energy 'normalization' modification from the 3GPP psymodel
authorNathan Caldwell <saintdev@gmail.com>
Wed, 27 Oct 2010 06:36:47 +0000 (06:36 +0000)
committerAnton Khirnov <wyskas@gmail.com>
Wed, 27 Oct 2010 06:36:47 +0000 (06:36 +0000)
This greatly improves bitrate handling. You will now get within a few
kbps of your requested bitrate instead of 20-40kbps higher.

There is absolutely no analog to this line in the 3GPP spec, that I
can find.

patch by Nathan Caldwell saintdev (at) gmail

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

libavcodec/aacpsy.c

index 77eebb9..a3618ce 100644 (file)
@@ -404,7 +404,6 @@ static void psy_3gpp_analyze(FFPsyContext *ctx, int channel,
             band->energy = 0.0f;
             for (i = 0; i < band_sizes[g]; i++)
                 band->energy += coefs[start+i] * coefs[start+i];
-            band->energy *= 1.0f / (512*512);
             band->thr     = band->energy * 0.001258925f;
             start        += band_sizes[g];