From: Janne Grunau <jgru...@mythtv.org> this silences the "number of reference frames exceeds max (probably corrupt input), discarding one" message in the uninteresting cases, i.e. after seeking, playback start
originally from: https://github.com/MythTV/mythtv/commit/53257097eb6c1fd4259d20bc92f8820a023ec953 referencing: https://code.mythtv.org/trac/ticket/6729 https://code.mythtv.org/trac/ticket/8367 --- libavcodec/h264_refs.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavcodec/h264_refs.c b/libavcodec/h264_refs.c index 5eb2855065..63ad617268 100644 --- a/libavcodec/h264_refs.c +++ b/libavcodec/h264_refs.c @@ -759,6 +759,12 @@ int ff_h264_execute_ref_pic_marking(H264Context *h) h->short_ref[0] = h->cur_pic_ptr; h->short_ref_count++; h->cur_pic_ptr->reference |= h->picture_structure; + + // do not add more reference frames than allowed after seeing frame num gap + if (!mmco_count && h->short_ref_count > h->ps.sps->ref_frame_count) { + pic = h->short_ref[h->short_ref_count - 1]; + remove_short(h, pic->frame_num, 0); + } } } -- 2.43.0 _______________________________________________ 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".