summaryrefslogtreecommitdiff
path: root/libavcodec/motion_est.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-06-11 22:08:15 +0200
committerMichael Niedermayer <michaelni@gmx.at>2014-06-11 22:15:04 +0200
commitef8725122d23b7dfc23cb87b84267b78d90586ab (patch)
tree77cbba138fee301177e993afa70c2fa2c8c890f3 /libavcodec/motion_est.c
parentedeefeaaf9b6b36a3ce1f9069c35845a3f0f8ba7 (diff)
avcodec/motion_est: Only clip MVs which are used
Fixes valgrind mpeg4 failures Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/motion_est.c')
-rw-r--r--libavcodec/motion_est.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/libavcodec/motion_est.c b/libavcodec/motion_est.c
index 0500002eaa..b093580e8f 100644
--- a/libavcodec/motion_est.c
+++ b/libavcodec/motion_est.c
@@ -620,7 +620,11 @@ static inline int h263_mv4_search(MpegEncContext *s, int mx, int my, int shift)
P_MV1[0]= mx;
P_MV1[1]= my;
if(saftey_cliping)
- for(i=0; i<10; i++){
+ for(i=1; i<10; i++){
+ if (s->first_slice_line && block<2 && i>1 && i<9)
+ continue;
+ if (i>4 && i<9)
+ continue;
if(P[i][0] > (c->xmax<<shift)) P[i][0]= (c->xmax<<shift);
if(P[i][1] > (c->ymax<<shift)) P[i][1]= (c->ymax<<shift);
}