[FFmpeg-cvslog] mjpegenc: fix YUV444 with w%16!=0

Michael Niedermayer git at videolan.org
Tue Dec 18 01:22:36 CET 2012


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Tue Dec 18 00:46:31 2012 +0100| [28b85b1fff428ad9ee68883ff0dd73090f36eed2] | committer: Michael Niedermayer

mjpegenc: fix YUV444 with w%16!=0

Fixes Ticket2040

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

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

 libavcodec/mjpegenc.c |   14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c
index b476bcd..e817905 100644
--- a/libavcodec/mjpegenc.c
+++ b/libavcodec/mjpegenc.c
@@ -466,12 +466,14 @@ void ff_mjpeg_encode_mb(MpegEncContext *s, DCTELEM block[6][64])
         encode_block(s, block[5], 5);
         encode_block(s, block[9], 9);
 
-        encode_block(s, block[1], 1);
-        encode_block(s, block[3], 3);
-        encode_block(s, block[6], 6);
-        encode_block(s, block[10], 10);
-        encode_block(s, block[7], 7);
-        encode_block(s, block[11], 11);
+        if (16*s->mb_x+8 < s->width) {
+            encode_block(s, block[1], 1);
+            encode_block(s, block[3], 3);
+            encode_block(s, block[6], 6);
+            encode_block(s, block[10], 10);
+            encode_block(s, block[7], 7);
+            encode_block(s, block[11], 11);
+        }
     } else {
         for(i=0;i<5;i++) {
             encode_block(s, block[i], i);



More information about the ffmpeg-cvslog mailing list