[FFmpeg-cvslog] avcodec/mjpegbdec: return the amount of bytes consumed when discarding frames

James Almer git at videolan.org
Tue Dec 27 15:41:32 EET 2022


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Mon Dec 26 08:30:41 2022 -0300| [64007595dcb5bb3c5f7bfa74d0b0f2e378f6007e] | committer: James Almer

avcodec/mjpegbdec: return the amount of bytes consumed when discarding frames

EAGAIN is not correct in this scenario. FFCodec.cb.decode() callback decoders
always return the amount of bytes consumed from the input packet (if any), and
report if a frame was generated by setting got_frame.

Signed-off-by: James Almer <jamrial at gmail.com>

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

 libavcodec/mjpegbdec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/mjpegbdec.c b/libavcodec/mjpegbdec.c
index a82a95d70a..6d422e7a29 100644
--- a/libavcodec/mjpegbdec.c
+++ b/libavcodec/mjpegbdec.c
@@ -144,7 +144,7 @@ read_header:
     av_frame_move_ref(rframe, s->picture_ptr);
     s->got_picture = 0;
     if (avctx->skip_frame == AVDISCARD_ALL)
-        return AVERROR(EAGAIN);
+        return buf_size;
     *got_frame = 1;
 
     if (!s->lossless && avctx->debug & FF_DEBUG_QP) {



More information about the ffmpeg-cvslog mailing list