[FFmpeg-devel] [PATCH v2 1/2] avfilter: add a hflip_vulkan filter

Wu, Jianhua jianhua.wu at intel.com
Fri Nov 19 16:49:49 EET 2021


Paul B Mahol wrote:
> Sent: Thursday, November 18, 2021 6:24 PM
> To: FFmpeg development discussions and patches <ffmpeg-
> devel at ffmpeg.org>
> Subject: Re: [FFmpeg-devel] [PATCH v2 1/2] avfilter: add a hflip_vulkan filter
> 
> On Thu, Nov 18, 2021 at 6:59 AM Wu, Jianhua <jianhua.wu at intel.com> wrote:
> 
> > > Andreas Rheinhardt:
> > > Wu, Jianhua:
> > > > Andreas Rheinhardt wrote:
> > > >> Wu Jianhua:
> > > >>> The following command is on how to apply hflip_vulkan filter:
> > > >>>
> > > >>> ffmpeg -init_hw_device vulkan -i input.264 -vf
> > > >>>
> > > >>
> > >
> hwupload=extra_hw_frames=16,hflip_vulkan,hwdownload,format=yuv420p
> > > >>> output.264
> > > >>>
> > > >>> Signed-off-by: Wu Jianhua <jianhua.wu at intel.com>
> > > >>> ---
> > > >>>  configure                     |   1 +
> > > >>>  libavfilter/Makefile          |   1 +
> > > >>>  libavfilter/allfilters.c      |   1 +
> > > >>>  libavfilter/vf_hflip_vulkan.c | 276
> > > >>> ++++++++++++++++++++++++++++++++++
> > > >>>  4 files changed, 279 insertions(+)  create mode 100644
> > > >>> libavfilter/vf_hflip_vulkan.c
> > > >>>
> > > >>
> > > >>> +
> > > >>> +static const AVOption hflip_vulkan_options[] = {
> > > >>> +    { NULL },
> > > >>> +};
> > > >>> +
> > > >>> +AVFILTER_DEFINE_CLASS(hflip_vulkan);
> > > >>> +
> > > >>
> > > >> What is the point of this class with its empty options?
> > > >
> > > > The AVFILTER_DEFINE_CLASS needs the hflip_vulkan_options and the
> > > > reason why it's NULL is that the most other filters do it like that.
> > > >
> > >
> > > And why do you add an AVClass at all?
> > > (The reason that there are some filters with AVClass and empty
> > > options
> > is a
> > > bug in avfilter_init_str() which errors out when given options for a
> > filter
> > > without AVClass, although it is perfectly fine to set options on a
> > filter without
> > > AVClass, namely generic AVFilter options (this is important for e.g.
> > framesync
> > > filters, but not for this filter here).)
> > >
> >
> > Simply I think it is a convention. Yeah. It's not needed at all. I'll
> > remove it and update later.
> >
> 
> Do not do it if it breaks timeline support.
> 

Got it. I'll keep them here in the next version.

Thanks,
Jianhua



More information about the ffmpeg-devel mailing list