[FFmpeg-cvslog] avcodec/mpegvideo_enc: disable direct mode in load_input_picture() for dimensions%16 != 0

Michael Niedermayer git at videolan.org
Mon Jan 20 17:09:33 CET 2014


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Mon Jan 20 16:36:02 2014 +0100| [d08dd3286369964cd0476ddaa037a1193e9adcde] | committer: Michael Niedermayer

avcodec/mpegvideo_enc: disable direct mode in load_input_picture() for dimensions%16 != 0

We currently read a whole 16x16 block from the input at a few places

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d08dd3286369964cd0476ddaa037a1193e9adcde
---

 libavcodec/mpegvideo_enc.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index aca1bae..62c9345 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -1035,6 +1035,8 @@ static int load_input_picture(MpegEncContext *s, const AVFrame *pic_arg)
             direct = 0;
         if (pic_arg->linesize[2] != s->uvlinesize)
             direct = 0;
+        if ((s->width & 15) || (s->height & 15))
+            direct = 0;
 
         av_dlog(s->avctx, "%d %d %td %td\n", pic_arg->linesize[0],
                 pic_arg->linesize[1], s->linesize, s->uvlinesize);



More information about the ffmpeg-cvslog mailing list