From 95da34cd547dc01167350fd681d97e75ef782296 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Sat, 28 Oct 2006 20:00:05 +0000 Subject: [PATCH] CANDIDATE_MB_TYPE_INTER heuristic doesnt work at really low quality where the distortion becomes less relevant then the overhead of intra blocks Originally committed as revision 6829 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/motion_est.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavcodec/motion_est.c b/libavcodec/motion_est.c index 83733a84a6..fb32ec5912 100644 --- a/libavcodec/motion_est.c +++ b/libavcodec/motion_est.c @@ -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)