It need not be writable; in fact, it is often not writable even if the packet sent to the decoder was writable, because the generic code calls av_packet_ref() on it. It is never writable if a user drains the decoder after every packet, because in this case the decode callback is called from avcodec_send_packet().
Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com> --- libavcodec/wrapped_avframe.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/wrapped_avframe.c b/libavcodec/wrapped_avframe.c index e2f27f91a3..c89cdfd1e8 100644 --- a/libavcodec/wrapped_avframe.c +++ b/libavcodec/wrapped_avframe.c @@ -92,7 +92,9 @@ static int wrapped_avframe_decode(AVCodecContext *avctx, AVFrame *out, in = (AVFrame*)pkt->data; - av_frame_move_ref(out, in); + err = av_frame_ref(out, in); + if (err < 0) + return err; err = ff_decode_frame_props(avctx, out); if (err < 0) -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".