If the end of the input buffer is reached while decoding MJPEG and at least
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sat, 4 Jul 2009 18:24:43 +0000 (18:24 +0000)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sat, 4 Jul 2009 18:24:43 +0000 (18:24 +0000)
a valid SOF was found, emulate an EOI.
This allows e.g. to at least decode the available part of incomplete MJPEG frames.

Originally committed as revision 19344 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/mjpegdec.c

index a40dfdb..a18403d 100644 (file)
@@ -1479,6 +1479,10 @@ not_the_end:
             }
         }
     }
+    if (s->got_picture) {
+        av_log(avctx, AV_LOG_WARNING, "EOI missing, emulating\n");
+        goto eoi_parser;
+    }
     av_log(avctx, AV_LOG_FATAL, "No JPEG data found in image\n");
     return -1;
 the_end: