[FFmpeg-devel] [PATCH] libavfilter/vaapi: enable vaapi rotation feature via call Intel iHD driver

Eoff, Ullysses A ullysses.a.eoff at intel.com
Wed Oct 24 00:05:28 EEST 2018


> -----Original Message-----
> From: ffmpeg-devel [mailto:ffmpeg-devel-bounces at ffmpeg.org] On Behalf Of Eoff, Ullysses A
> Sent: Tuesday, October 23, 2018 1:50 PM
> To: FFmpeg development discussions and patches <ffmpeg-devel at ffmpeg.org>
> Subject: Re: [FFmpeg-devel] [PATCH] libavfilter/vaapi: enable vaapi rotation feature via call Intel iHD driver
> 
> > -----Original Message-----
> > From: ffmpeg-devel [mailto:ffmpeg-devel-bounces at ffmpeg.org] On Behalf Of Michael Niedermayer
> > Sent: Tuesday, October 23, 2018 10:06 AM
> > To: FFmpeg development discussions and patches <ffmpeg-devel at ffmpeg.org>
> > Subject: Re: [FFmpeg-devel] [PATCH] libavfilter/vaapi: enable vaapi rotation feature via call Intel iHD driver
> >
> > On Tue, Oct 23, 2018 at 03:52:40PM +0800, Zachary Zhou wrote:
> > > It supports clockwise rotation by 0/90/180/270 degrees defined in
> > > va/va_vpp.h, tested following command line on SKL platform
> > >
> > > ffmpeg -hwaccel vaapi -vaapi_device /dev/dri/renderD128
> > > -hwaccel_output_format vaapi -i input.264 -vf "rotation_vaapi=angle=90"
> > > -c:v h264_vaapi output.h264
> > > ---
> > >  libavfilter/Makefile        |   1 +
> > >  libavfilter/allfilters.c    |   1 +
> > >  libavfilter/vaapi_vpp.h     |   1 +
> > >  libavfilter/vf_misc_vaapi.c | 122 ++++++++++++++++++++++++++++++++++++
> > >  4 files changed, 125 insertions(+)
> >
> > breaks build
> > make distclean ; ./configure && make -j12
> > ...
> > libavfilter/vf_misc_vaapi.c: In function ‘rotation_vaapi_build_filter_params’:
> > libavfilter/vf_misc_vaapi.c:165:23: error: ‘VAProcPipelineCaps’ has no member named ‘rotation_flags’
> >      if (!pipeline_caps.rotation_flags) {
> >                        ^
> > libavfilter/vf_misc_vaapi.c:191:33: error: ‘VAProcPipelineCaps’ has no member named ‘rotation_flags’
> >      support_flag = pipeline_caps.rotation_flags &
> >                                  ^
> > libavfilter/vf_misc_vaapi.c: In function ‘misc_vaapi_filter_frame’:
> > libavfilter/vf_misc_vaapi.c:248:15: error: ‘VAProcPipelineParameterBuffer’ has no member named ‘rotation_state’
> >          params.rotation_state = vpp_ctx->rotation_state;
> >                ^
> > make: *** [libavfilter/vf_misc_vaapi.o] Error 1
> > make: *** Waiting for unfinished jobs....
> >
> >
> 
> Looks like VPP rotation caps weren't introduced until libva 2.1.0 (in commit cff70165e08ab).
> Perhaps, compilation of this feature should be guarded by VA_CHECK_VERSION macro?
> 

That is, VA-API 1.1.0... VA_CHECK_VERSION(1, 1, 0)

> > [...]
> > --
> > Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> >
> > Asymptotically faster algorithms should always be preferred if you have
> > asymptotical amounts of data
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


More information about the ffmpeg-devel mailing list