[FFmpeg-devel] [PATCH v6] avcodec/h264_slice: add warning log when droping picture at 'h264_select_output_frame'
lance.lmwang at gmail.com
lance.lmwang at gmail.com
Thu Dec 30 12:45:16 EET 2021
On Thu, Dec 30, 2021 at 05:19:09PM +0800, zozobreak at 163.com wrote:
> This will lost the droped picture's infomation, lead to hard to debug when this error happens.
Please stop top posting.
As warning message, I think it's enough to print out "no picture ooo", if you want
to debug, please use gdb or add more debug message for yourself in you local branch.
>
>
>
>
> zozobreak at 163.com
>
>
>
>
>
>
>
> From: lance.lmwang
>
>
>
> Date: 2021-12-30 17:00
>
>
>
> To: ffmpeg-devel
>
>
>
> Subject: Re: [FFmpeg-devel] [PATCH v6] avcodec/h264_slice: add warning log when droping picture at 'h264_select_output_frame'
>
>
>
> On Thu, Dec 30, 2021 at 03:24:28PM +0800, zourenyi wrote:
>
>
>
> > since there is only debug log 'no picture ooo' when droping a picture,
>
>
>
> > I spent much time to troubleshooting a wrong sps 'num_reorder_frames' param changed by webrtc's 'ParseAndRewriteSps',
>
>
>
> > FFmpeg keeped silence about this error, so a warning log is much helpfull about this.
>
>
>
> >
>
>
>
> > Signed-off-by: zourenyi <zozobreak at 163.com>
>
>
>
> > ---
>
>
>
> > libavcodec/h264_slice.c | 8 +++++++-
>
>
>
> > 1 file changed, 7 insertions(+), 1 deletion(-)
>
>
>
> >
>
>
>
> > diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c
>
>
>
> > index c21004df97..f347d8ee1a 100644
>
>
>
> > --- a/libavcodec/h264_slice.c
>
>
>
> > +++ b/libavcodec/h264_slice.c
>
>
>
> > @@ -1533,7 +1533,13 @@ static int h264_select_output_frame(H264Context *h)
>
>
>
> > }
>
>
>
> > }
>
>
>
> > } else {
>
>
>
> > - av_log(h->avctx, AV_LOG_DEBUG, "no picture %s\n", out_of_order ? "ooo" : "");
>
>
>
> > + if (out_of_order) {
>
>
>
> > + av_log(h->avctx, AV_LOG_WARNING,
>
>
>
> > + "drop picture(%c, %d/%" PRId64 ") because out of order\n",
>
>
>
> > + av_get_picture_type_char(out->f->pict_type), out->poc, out->f->pts);
>
>
>
> > + } else {
>
>
>
> > + av_log(h->avctx, AV_LOG_DEBUG, "no picture\n");
>
>
>
> > + }
>
>
>
> > }
>
>
>
>
>
>
>
> I prefer to not change the old message, just use warning level for ooo, like below:
>
>
>
>
>
>
>
> int loglevel = out_of_order ? AV_LOG_WARNING : AV_LOG_DEBUG;
>
>
>
> av_log(h->avctx, loglevel, "no picture %s\n", out_of_order ? "ooo" : "");
>
>
>
>
>
>
>
> >
>
>
>
> > return 0;
>
>
>
> > --
>
>
>
> > 2.34.1
>
>
>
> >
>
>
>
> > _______________________________________________
>
>
>
> > ffmpeg-devel mailing list
>
>
>
> > ffmpeg-devel at ffmpeg.org
>
>
>
> > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>
>
> >
>
>
>
> > To unsubscribe, visit link above, or email
>
>
>
> > ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>
>
>
>
>
>
>
> --
>
>
>
> Thanks,
>
>
>
> Limin Wang
>
>
>
> _______________________________________________
>
>
>
> ffmpeg-devel mailing list
>
>
>
> ffmpeg-devel at ffmpeg.org
>
>
>
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>
>
>
>
>
>
> To unsubscribe, visit link above, or email
>
>
>
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
--
Thanks,
Limin Wang
More information about the ffmpeg-devel
mailing list