--- libavcodec/mjpegdec.c | 6 ++++-- libavcodec/mjpegdec.h | 5 +++-- 2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c index 9a7a329b19..b41d2ce467 100644 --- a/libavcodec/mjpegdec.c +++ b/libavcodec/mjpegdec.c @@ -715,8 +715,8 @@ unk_pixfmt: if (!s->hwaccel_picture_private) return AVERROR(ENOMEM); - ret = s->avctx->hwaccel->start_frame(s->avctx, s->raw_buffer, - s->raw_buffer_size); + ret = s->avctx->hwaccel->start_frame(s->avctx, s->raw_packet->data, + s->raw_packet->size); if (ret < 0) return ret; } @@ -2242,6 +2242,8 @@ int ff_mjpeg_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, int ret = 0; int is16bit; + s->raw_packet = avpkt; + av_dict_free(&s->exif_metadata); av_freep(&s->stereo3d); s->adobe_transform = -1; diff --git a/libavcodec/mjpegdec.h b/libavcodec/mjpegdec.h index 11dfdbf62b..b47f54a5b9 100644 --- a/libavcodec/mjpegdec.h +++ b/libavcodec/mjpegdec.h @@ -139,8 +139,9 @@ typedef struct MJpegDecodeContext { int iccread; // Raw stream data for hwaccel use. - const uint8_t *raw_buffer; - size_t raw_buffer_size; + const AVPacket *raw_packet; + const uint8_t *raw_buffer; + size_t raw_buffer_size; uint8_t raw_huffman_lengths[2][4][16]; uint8_t raw_huffman_values[2][4][256]; -- 2.14.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel