]> granicus.if.org Git - libx264/commitdiff
Limit MVrange correctly in interlaced mode
authorFiona Glaser <fiona@x264.com>
Sat, 12 Jul 2008 20:10:38 +0000 (14:10 -0600)
committerFiona Glaser <fiona@x264.com>
Sat, 12 Jul 2008 20:10:38 +0000 (14:10 -0600)
Bug report by Sigma Designs, Inc.

encoder/encoder.c

index 8f1ebacc9814d2ade7b07621ead04f299b93c8fe..fb34ca874425b6238becda3d0e6fb7b4e7cf44af 100644 (file)
@@ -504,9 +504,9 @@ static int x264_validate_parameters( x264_t *h )
             return -1;
         }
         if( h->param.analyse.i_mv_range <= 0 )
-            h->param.analyse.i_mv_range = l->mv_range;
+            h->param.analyse.i_mv_range = l->mv_range >> h->param.b_interlaced;
         else
-            h->param.analyse.i_mv_range = x264_clip3(h->param.analyse.i_mv_range, 32, 512);
+            h->param.analyse.i_mv_range = x264_clip3(h->param.analyse.i_mv_range, 32, 512 >> h->param.b_interlaced);
         if( h->param.analyse.i_direct_8x8_inference < 0 )
             h->param.analyse.i_direct_8x8_inference = l->direct8x8;
     }