[FFmpeg-devel] [PATCH] avfilter/vf_dnn_classify: add result check for av_frame_get_side_data

Guo, Yejun yejun.guo at intel.com
Tue May 11 06:02:38 EEST 2021



> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> On Behalf Of Guo,
> Yejun
> Sent: 2021年5月7日 16:54
> To: FFmpeg development discussions and patches
> <ffmpeg-devel at ffmpeg.org>
> Subject: Re: [FFmpeg-devel] [PATCH] avfilter/vf_dnn_classify: add result
> check for av_frame_get_side_data
> 
> 
> 
> > -----Original Message-----
> > From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> On Behalf Of
> > Steven Liu
> > Sent: 2021年5月7日 16:30
> > To: FFmpeg development discussions and patches
> > <ffmpeg-devel at ffmpeg.org>
> > Subject: Re: [FFmpeg-devel] [PATCH] avfilter/vf_dnn_classify: add result
> > check for av_frame_get_side_data
> >
> > Guo, Yejun <yejun.guo at intel.com> 于2021年5月7日周五 下午4:11写
> 道:
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> On Behalf Of
> > > > Steven Liu
> > > > Sent: 2021年5月7日 14:43
> > > > To: ffmpeg-devel at ffmpeg.org
> > > > Cc: Steven Liu <liuqi05 at kuaishou.com>
> > > > Subject: [FFmpeg-devel] [PATCH] avfilter/vf_dnn_classify: add result
> check
> > for
> > > > av_frame_get_side_data
> > > >
> > > > CID: 1482090
> > >
> > > thanks for the patch, what does CID mean?
> > It means Coverity ID :D
> > Have sent a invite to you yet.
> 
> waiting for the invitation, I even checked the Junk folder, still nothing
> received.
> 
> > >
> > > > there can return null from av_frame_get_side_data, and will use
> sd->data
> > > > after av_frame_get_side_data, so should check null return value.
> > > >
> > > > Signed-off-by: Steven Liu <liuqi05 at kuaishou.com>
> > > > ---
> > > >  libavfilter/vf_dnn_classify.c | 4 ++++
> > > >  1 file changed, 4 insertions(+)
> > > >
> > > > diff --git a/libavfilter/vf_dnn_classify.c b/libavfilter/vf_dnn_classify.c
> > > > index 18fcd452d0..7900255cfe 100644
> > > > --- a/libavfilter/vf_dnn_classify.c
> > > > +++ b/libavfilter/vf_dnn_classify.c
> > > > @@ -77,6 +77,10 @@ static int dnn_classify_post_proc(AVFrame
> *frame,
> > > > DNNData *output, uint32_t bbox
> > > >      }
> > > >
> > > >      sd = av_frame_get_side_data(frame,
> > > > AV_FRAME_DATA_DETECTION_BBOXES);
> > > > +    if (!sd) {
> > > > +        av_log(filter_ctx, AV_LOG_ERROR, "Cannot get side data in
> > > > dnn_classify_post_proc\n");
> > > > +        return -1;
> > > > +    }
> > >
> > > The check happens in the backend,
> > > see
> >
> https://github.com/FFmpeg/FFmpeg/blob/master/libavfilter/dnn/dnn_back
> > end_openvino.c#L536,
> > > this function will not be invoked if sd is NULL.
> > Do you mean need contain_valid_detection_bbox before
> > av_frame_get_side_data here?
> 
> that function is used within dnn backend, i think you code in this patch is
> good to me.
> 
pushed


More information about the ffmpeg-devel mailing list