CANDIDATE_MB_TYPE_INTER heuristic doesnt work at really low quality where the distort...
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 28 Oct 2006 20:00:05 +0000 (20:00 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 28 Oct 2006 20:00:05 +0000 (20:00 +0000)
Originally committed as revision 6829 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/motion_est.c

index 83733a8..fb32ec5 100644 (file)
@@ -1299,7 +1299,8 @@ void ff_estimate_p_frame_motion(MpegEncContext * s,
 
         if (vard*2 + 200*256 > varc)
             mb_type|= CANDIDATE_MB_TYPE_INTRA;
-        if (varc*2 + 200*256 > vard){
+        if (varc*2 + 200*256 > vard || s->qscale > 24){
+//        if (varc*2 + 200*256 + 50*(s->lambda2>>FF_LAMBDA_SHIFT) > vard){
             mb_type|= CANDIDATE_MB_TYPE_INTER;
             c->sub_motion_search(s, &mx, &my, dmin, 0, 0, 0, 16);
             if(s->flags&CODEC_FLAG_MV0)