[FFmpeg-devel] [PATCH] avcodec/vc1_pred: properly clip interlaced motion vectors

Paul B Mahol onemda at gmail.com
Sat Apr 21 11:22:52 EEST 2018


Fixes #2557.

Signed-off-by: Paul B Mahol <onemda at gmail.com>
---
 libavcodec/vc1_pred.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/vc1_pred.c b/libavcodec/vc1_pred.c
index 54712f6b7a..9f42a930fe 100644
--- a/libavcodec/vc1_pred.c
+++ b/libavcodec/vc1_pred.c
@@ -98,9 +98,9 @@ static av_always_inline int scaleforsame_y(VC1Context *v, int i, int n /* MV */,
     }
 
     if (v->cur_field_type && !v->ref_field_type[dir])
-        return av_clip(scaledvalue, -v->range_y / 2 + 1, v->range_y / 2);
+        return av_clip(scaledvalue, -v->range_y / 2 - 1, v->range_y / 2);
     else
-        return av_clip(scaledvalue, -v->range_y / 2, v->range_y / 2 - 1);
+        return av_clip(scaledvalue, -v->range_y / 2, v->range_y / 2 + 1);
 }
 
 static av_always_inline int scaleforopp_x(VC1Context *v, int n /* MV */)
-- 
2.11.0



More information about the ffmpeg-devel mailing list