Explain why the level variable is magically inceased in mpeg4_encode_dc().
authorDiego Biurrun <diego@biurrun.de>
Fri, 8 Jan 2010 10:00:56 +0000 (10:00 +0000)
committerDiego Biurrun <diego@biurrun.de>
Fri, 8 Jan 2010 10:00:56 +0000 (10:00 +0000)
It must be in a certain range to avoid DC overflows.

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

libavcodec/mpeg4videoenc.c

index 64cbecba9a75b6319107654aad06953ac7e9e812..36dd3c90a2f5737ced3645a0542cc34666aec2c2 100644 (file)
@@ -242,6 +242,7 @@ void ff_clean_mpeg4_qscales(MpegEncContext *s){
 static inline void mpeg4_encode_dc(PutBitContext * s, int level, int n)
 {
 #if 1
 static inline void mpeg4_encode_dc(PutBitContext * s, int level, int n)
 {
 #if 1
+    /* DC will overflow if level is outside the [-255,255] range. */
     level+=256;
     if (n < 4) {
         /* luminance */
     level+=256;
     if (n < 4) {
         /* luminance */