Zhao Zhili: > From: Zhao Zhili <zhiliz...@tencent.com> > > This is a regression since 1c170613. > --- > libavcodec/decode.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/libavcodec/decode.c b/libavcodec/decode.c > index ef09568381..7e47a2971c 100644 > --- a/libavcodec/decode.c > +++ b/libavcodec/decode.c > @@ -204,9 +204,14 @@ static int decode_bsfs_init(AVCodecContext *avctx) > ret = av_bsf_init(avci->bsf); > if (ret < 0) > goto fail; > - ret = avcodec_parameters_to_context(avctx, avci->bsf->par_out); > - if (ret < 0) > - goto fail; > + /* Don't copy par_out to avcodec context if bsf changed codec ID, > + * e.g., media100_to_mjpegb > + */ > + if (avctx->codec_id == avci->bsf->par_out->codec_id) { > + ret = avcodec_parameters_to_context(avctx, avci->bsf->par_out); > + if (ret < 0) > + goto fail; > + } > > return 0; > fail:
We should rather use a clean revert; after all, the internal BSF is supposed to be internal and not change the user-visible extradata etc. - Andreas _______________________________________________ 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".