[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