Hi! The h264_mp4toannexb filter already does not fail if no extradata is provided. Attached patch makes it also not fail if extradata was provided but the stream is already in Annex B format.
Fixes ticket #5380. Please comment, Carl Eugen
diff --git a/libavcodec/h264_mp4toannexb_bsf.c b/libavcodec/h264_mp4toannexb_bsf.c index 2d447f7..170db31 100644 --- a/libavcodec/h264_mp4toannexb_bsf.c +++ b/libavcodec/h264_mp4toannexb_bsf.c @@ -167,7 +167,8 @@ static int h264_mp4toannexb_filter(AVBitStreamFilterContext *bsfc, int ret = 0; /* nothing to filter */ - if (!avctx->extradata || avctx->extradata_size < 6) { + if ( !avctx->extradata || avctx->extradata_size < 6 + || !buf[0] && !buf[1] && (buf[2] == 1 || !buf[2] && buf[3] == 1)) { *poutbuf = (uint8_t *)buf; *poutbuf_size = buf_size; return 0;
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel