VA-API VP9 Encode For GStreamer??

Patrick Cusack patrickcusack at mac.com
Wed May 20 20:12:58 UTC 2020


I can run it either as iHD or i965. If I specify i965 in my ffmpeg script, I can do VP9 encodes. Here is my vainfo with either iHD or i965. I am running headless fwiw.

Patrick

 

[root at localhost gstreamer-1.0]# LIBVA_DRIVER_NAME="iHD" vainfo
error: can't connect to X server!
libva info: VA-API version 1.7.0
libva info: User environment variable requested driver 'iHD'
libva info: Trying to open /usr/lib64/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_7
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.7 (libva 2.7.0.pre1)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 20.1.1 ()
vainfo: Supported profile and entrypoints
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileNone                   :	VAEntrypointStats
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointFEI
      VAProfileH264Main               :	VAEntrypointEncSliceLP
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointFEI
      VAProfileH264High               :	VAEntrypointEncSliceLP
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointFEI
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSliceLP
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileVP8Version0_3          :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointFEI
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD

[root at localhost gstreamer-1.0]# LIBVA_DRIVER_NAME="i965" vainfo
error: can't connect to X server!
libva info: VA-API version 1.7.0
libva info: User environment variable requested driver 'i965'
libva info: Trying to open /usr/lib64/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_6
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.7 (libva 2.7.0.pre1)
vainfo: Driver version: Intel i965 driver for Intel(R) Coffee Lake - 2.4.0
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSliceLP
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointEncSliceLP
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointEncSliceLP
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointEncPicture
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileVP8Version0_3          :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointEncSlice
      VAProfileVP9Profile2            :	VAEntrypointVLD

inxi -G yields 

Graphics:  Device-1: Intel UHD Graphics 630 driver: i915 v: kernel 
           Display: server: No display server data found. Headless machine? tty: 226x49 
           Message: Advanced graphics data unavailable in console for root. 



> On May 20, 2020, at 12:50 PM, Wolfgang Grandegger <wg at grandegger.com> wrote:
> 
> Hello,
> 
> I also need to set the DISPLAY to see the VAAPI elements. What do the
> following commands report:
> 
>  $ vainfo
>  $ inxi -G
> 
> Maybe the hardware is not capable for VP9 decoding.
> 
> Wolfgang
> 
> Am 20.05.20 um 21:24 schrieb Patrick Cusack:
>> When I run  gst-inspect-1.0 vaapi, I get the following:
>> 
>> Plugin Details:
>>   Name                     vaapi
>>   Description              VA-API based elements
>>   Filename                 /usr/lib64/gstreamer-1.0/libgstvaapi.so
>>   Version                  1.16.2
>>   License                  LGPL
>>   Source module            gstreamer-vaapi
>>   Source release date      2019-12-03
>>   Binary package           gstreamer-vaapi
>>   Origin URL              
>> http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
>> 
>> 
>>   0 features:
>> 
>> 
>> If I run, GST_VAAPI_ALL_DRIVERS=1 gst-inspect-1.0 vaapi, the I get, and
>> I see no VP9 encoder even though it is mentioned at:
>> 
>> https://gstreamer.freedesktop.org/documentation/vaapi/vaapivp9enc.html?gi-language=c
>> 
>> 
>> Plugin Details:
>>   Name                     vaapi
>>   Description              VA-API based elements
>>   Filename                 /usr/lib64/gstreamer-1.0/libgstvaapi.so
>>   Version                  1.16.2
>>   License                  LGPL
>>   Source module            gstreamer-vaapi
>>   Source release date      2019-12-03
>>   Binary package           gstreamer-vaapi
>>   Origin URL              
>> http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
>> 
>>   vaapih264feienc: VA-API H264 FEI Advanced encoder (Experimental)
>>   vaapih264enc: VA-API H264 encoder
>>   vaapijpegenc: VA-API JPEG encoder
>>   vaapivp8enc: VA-API VP8 encoder
>>   vaapih265enc: VA-API H265 encoder
>>   vaapimpeg2enc: VA-API MPEG-2 encoder
>>   vaapisink: VA-API sink
>>   vaapidecodebin: VA-API Decode Bin
>>   vaapipostproc: VA-API video postprocessing
>>   vaapih265dec: VA-API H265 decoder
>>   vaapivp9dec: VA-API VP9 decoder
>>   vaapivp8dec: VA-API VP8 decoder
>>   vaapivc1dec: VA-API VC1 decoder
>>   vaapih264dec: VA-API H264 decoder
>>   vaapimpeg2dec: VA-API MPEG2 decoder
>>   vaapijpegdec: VA-API JPEG decoder
>> 
>>   16 features:
>>   +--16 elements
>> 
>> 
>> 
>>> On May 20, 2020, at 11:00 AM, Patrick Cusack <patrickcusack at mac.com
>>> <mailto:patrickcusack at mac.com <mailto:patrickcusack at mac.com>>> wrote:
>>> 
>>> Two questions regarding vaapi for vp9:
>>> 
>>> 1) Does gstreamer support VP9 encoding? According to this
>>> (gstvaapiencode_vp9.c), it does, but I don’t see mention of it in the
>>> README @ https://github.com/GStreamer/gstreamer-vaapi
>>> 
>>> 2) I installed the following packages, but I do not see any vaapi
>>> encoders when I run get-inspect. I do have vaapi installed and can run
>>> it successfully with ffmpeg.
>>> 
>>> *gst*reamer1-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-plugins-ugly-free-devel-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-vaapi-devel-docs-1.16.2-1.fc32.noarch
>>> *gst*reamer1-plugins-entrans-1.4.0-2.fc32.x86_64
>>> *gst*reamer1-plugins-bad-freeworld-1.16.2-5.fc32.x86_64
>>> *gst*reamer1-plugins-base-devel-docs-1.16.2-3.fc32.noarch
>>> *gst*reamer1-plugins-good-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-plugins-base-devel-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-ugly-free-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-plugins-bad-free-wildmidi-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-entrans-docs-1.4.0-2.fc32.noarch
>>> *gst*reamer1-libav-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-good-qt-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-devel-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-plugins-good-gtk-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-plugins-fc-0.2-22.fc32.x86_64
>>> *gst*reamer1-plugins-bad-free-extras-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-ugly-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-bad-free-devel-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-vaapi-1.16.2-1.fc32.x86_64
>>> *gst*reamer1-plugins-bad-free-fluidsynth-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-base-tools-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-good-extras-1.16.2-2.fc32.x86_64
>>> *gst*reamer1-plugins-base-1.16.2-3.fc32.x86_64
>>> *gst*reamer1-plugins-bad-free-1.16.2-3.fc32.x86_64
>>> 
>>> 
>>> 
>> 
>> 
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>> 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org <mailto:gstreamer-devel at lists.freedesktop.org>
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel <https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20200520/154da886/attachment-0001.htm>


More information about the gstreamer-devel mailing list