[FFmpeg-user] vaapi can't find entrypoint shown by vainfo

sean darcy seandarcy2 at gmail.com
Sun May 5 03:37:53 EEST 2019


On 5/4/19 1:54 PM, Dennis Mungai wrote:
> On Sat, 4 May 2019 at 20:42, sean darcy <seandarcy2 at gmail.com> wrote:
> 
>> Giving up on qsv, I'm trying vaapi, but ffmpeg can't find the vp9 entry
>> point supported by my cpu , and found by vainfo.
>>
>> FWIW, hevc_vaapi works.
>>
>>
>> ffmpeg -vaapi_device /dev/dri/renderD128 -i infile.mkv -map v -map 0:2
>> -vf format=nv12,hwupload -c:v vp9_vaapi -global_quality 50 -bsf:v
>> vp9_raw_reorder,vp9_superframe -rc_mode 5 -r 24000/1001 -c:a copy -dn
>> vp9-vaapi.mp4
>> ffmpeg version git-snapshot-20190502-RPMFusion Copyright (c) 2000-2019
>> the FFmpeg developers
>>     built with gcc 8 (GCC)
>>     configuration: --prefix=/usr --bindir=/usr/bin
>> --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg
>> --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64
>> --optflags='-O3 -ffast-math -march=native -ftree-vectorize
>> -fomit-frame-pointer -pipe -fPIC' --enable-bzlib --disable-crystalhd
>> --enable-fontconfig --enable-frei0r --enable-gcrypt --enable-gnutls
>> --enable-ladspa --enable-libass --enable-libbluray --enable-libcdio
>> --disable-libdav1d --enable-libfdk-aac --enable-nonfree
>> --enable-indev=jack --enable-libfreetype --enable-libfribidi
>> --enable-libgsm --enable-libmfx --enable-libmp3lame --enable-openal
>> --enable-opencl --enable-opengl --enable-libopenjpeg --enable-libopus
>> --enable-libpulse --enable-libsoxr --enable-libspeex --enable-libtheora
>> --enable-libvorbis --enable-libv4l2 --enable-libvpx --enable-libwebp
>> --enable-libx264 --enable-libx265 --enable-avfilter --enable-postproc
>> --enable-pthreads --disable-static --enable-shared --enable-gpl
>> --enable-version3 --enable-nonfree --disable-debug --enable-stripping
>> --shlibdir=/usr/lib64 --enable-runtime-cpudetect
>>     libavutil      56. 26.100 / 56. 26.100
>>     libavcodec     58. 52.100 / 58. 52.100
>>     libavformat    58. 27.103 / 58. 27.103
>>     libavdevice    58.  7.100 / 58.  7.100
>>     libavfilter     7. 50.100 /  7. 50.100
>>     libswscale      5.  4.100 /  5.  4.100
>>     libswresample   3.  4.100 /  3.  4.100
>>     libpostproc    55.  4.100 / 55.  4.100
>> Input #0, matroska,webm, from 'infile.mkv':
>> ..................
>>
>> Stream mapping:
>>     Stream #0:0 -> #0:0 (h264 (native) -> vp9 (vp9_vaapi))
>>     Stream #0:2 -> #0:1 (copy)
>> Press [q] to stop, [?] for help
>> [vp9_vaapi @ 0xe57040] No usable encoding entrypoint found for profile
>> VAProfileVP9Profile0 (19).
>> Error initializing output stream 0:0 -- Error while opening encoder for
>> output stream #0:0 - maybe incorrect parameters such as bit_rate, rate,
>> width or height
>> Conversion failed!
>>
>>
>> but vainfo finds the entrypoint :
>>
>> vainfo
>> error: can't connect to X server!
>> libva info: VA-API version 1.4.1
>> libva info: va_getDriverName() returns 0
>> libva info: Trying to open /usr/lib64/dri/i965_drv_video.so
>> libva info: Found init function __vaDriverInit_1_4
>> libva info: va_openDriver() returns 0
>> vainfo: VA-API version: 1.4 (libva 2.4.0)
>> vainfo: Driver version: Intel i965 driver for Intel(R) Skylake - 2.3.0
>> vainfo: Supported profile and entrypoints
>> ....
>> VAProfileVP9Profile0
>>
>>
>>
> What you've omitted here is the entry point type.
> For supported codecs, you want the entry point type to be in the Slice list.
> 
> Run:
> 
> vainfo | grep Slice
> 
> And confirm that you've got VP9 listed there.
> 
>  From what you've provided, you have a Skylake-based SKU that has no support
> for VP9-based encoding, only VP8.
> VP9-based *decoding* is supported via the intel hybrid driver (
> https://github.com/intel/intel-hybrid-driver), and this also requires the
> intel vaapi driver (i965) to be built with the --enable-hybrid-codec option
> enabled at the configuration phase.
> Your distribution may have this option enabled by default by the package
> maintainer.
> Also see https://github.com/intel/libva/issues/77
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
> 
> To unsubscribe, visit link above, or email
> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".
> 
Got it. Thanks. I'll use hevc.

sean



More information about the ffmpeg-user mailing list