Gstreamer VAAPI plugins don't run on Nvidia GTX 1080

Nihit Mody blinkrules0182 at gmail.com
Wed Dec 5 07:42:52 UTC 2018


Hi Nicolas,

Thanks a lot for checking into that. It seems JPEG encoding and decoding is
not realistic to do on the GTX 1080. Do you know if it is possible to run
the VAAPI plugins on the Intel hardware (i7-8700k) while a GTX 1080 is
being used to drive displays?

Thanks

On Mon, Dec 3, 2018 at 6:55 PM Nicolas Dufresne <nicolas at ndufresne.ca>
wrote:

>
>
> Le lun. 3 déc. 2018 17 h 12, Nihit Mody <blinkrules0182 at gmail.com> a
> écrit :
>
>> Hi Nicolas,
>>
>> Thank you for the response. I tried putting vaapipostproc in between and
>> got:
>>
>> gst-launch-1.0 v4l2src device=/dev/video0 do-timestamp=true !
>> video/x-raw,format=I420,width=1920,height=1080,framerate=60/1 !
>> vaapipostproc ! vaapijpegenc ! rtpjpegpay ! multiudpsink
>> clients=192.168.0.15
>>
>> libva info: VA-API version 0.39.0
>> libva info: va_getDriverName() returns 0
>> libva info: Trying to open
>> /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so
>> libva info: Found init function __vaDriverInit_0_39
>> libva info: va_openDriver() returns 0
>> Setting pipeline to PAUSED ...
>> ERROR: Pipeline doesn't want to pause.
>> Got context from element 'vaapipostproc0': gst.vaapi.Display=context,
>> gst.vaapi.Display=(GstVaapiDisplay)NULL;
>> Setting pipeline to NULL ...
>> Freeing pipeline ...
>>
>> Then I tried videoconvert:
>>
>> gst-launch-1.0 v4l2src device=/dev/video0 do-timestamp=true !
>> video/x-raw,format=I420,width=1920,height=1080,framerate=60/1 !
>> videoconvert ! vaapijpegenc ! rtpjpegpay ! multiudpsink clients=192.168.0.15
>>
>> Setting pipeline to PAUSED ...
>> libva info: VA-API version 0.39.0
>> libva info: va_getDriverName() returns 0
>> libva info: Trying to open
>> /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so
>> libva info: Found init function __vaDriverInit_0_39
>> libva info: va_openDriver() returns 0
>> Pipeline is live and does not need PREROLL ...
>> Got context from element 'vaapiencodejpeg0': gst.vaapi.Display=context,
>> gst.vaapi.Display=(GstVaapiDisplay)NULL;
>> Setting pipeline to PLAYING ...
>> New clock: GstSystemClock
>> ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal
>> data flow error.
>> Additional debug info:
>> gstbasesrc.c(2948): gst_base_src_loop ():
>> /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
>> streaming task paused, reason not-negotiated (-4)
>> Execution ended after 0:00:00.448719003
>> Setting pipeline to PAUSED ...
>> Setting pipeline to READY ...
>> Setting pipeline to NULL ...
>> Freeing pipeline ...
>>
>> For NVENC I am not seeing a JPEG encode or decode, is JPEG encode or
>> decode supported? Also do you think there is something else to try for
>> vaapi based on these errors?
>>
>
> Well, now that I notice, vaapi does not show up any jpeg support either.
> You must be running an older GStreamer since in recent version we only
> create the element if we detect support.
>
>
>> Thanks
>>
>> On Mon, Dec 3, 2018 at 3:59 PM Nicolas Dufresne <nicolas at ndufresne.ca>
>> wrote:
>>
>>> Le lundi 03 décembre 2018 à 13:07 -0600, skyline220 a écrit :
>>> > skyline220 via lists.freedesktop.org
>>> >
>>> > 1:57 PM (9 minutes ago)
>>> >
>>> > to gstreamer-devel
>>> > Be careful with this message
>>> >
>>> > This may be a spoofed message. The message claims to have been sent
>>> from
>>> > your account, but Gmail couldn’t verify the actual source. Avoid
>>> clicking
>>> > links or replying with sensitive information, unless you are sure you
>>> > actually sent this message. (No need to reset your password, the real
>>> sender
>>> > does not actually have access to your account!)
>>> > Hi All,
>>> >
>>> > I have installed vdpau with the hopes of enabling the G-streamer VAAPI
>>> based
>>> > plugins on my graphics card. When I type in vainfo in the terminal I
>>> get:
>>> >
>>> > vainfo
>>> >
>>> > libva info: VA-API version 0.39.0
>>> > libva info: va_getDriverName() returns 0
>>> > libva info: Trying to open
>>> /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so
>>> > libva info: Found init function __vaDriverInit_0_39
>>> > libva info: va_openDriver() returns 0
>>> > vainfo: VA-API version: 0.39 (libva 1.7.0)
>>> > vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for
>>> VA-API -
>>> > 0.7.4
>>> > vainfo: Supported profile and entrypoints
>>> >       VAProfileMPEG2Simple            : VAEntrypointVLD
>>> >       VAProfileMPEG2Main              : VAEntrypointVLD
>>> >       VAProfileMPEG4Simple            : VAEntrypointVLD
>>> >       VAProfileMPEG4AdvancedSimple    : VAEntrypointVLD
>>> >       VAProfileH264Baseline           : VAEntrypointVLD
>>> >       VAProfileH264Main               : VAEntrypointVLD
>>> >       VAProfileH264High               : VAEntrypointVLD
>>> >       VAProfileVC1Simple              : VAEntrypointVLD
>>> >       VAProfileVC1Main                : VAEntrypointVLD
>>> >       VAProfileVC1Advanced            : VAEntrypointVLD
>>> >
>>> > I then installed gstreamer1.0-vaapi plugins however when I go to run a
>>> > pipeline with a vaapi plugin, for example:
>>> >
>>> > gst-launch-1.0 v4l2src device=/dev/video0 do-timestamp=true !
>>> > video/x-raw,format=I420,width=1920,height=1080,framerate=60/1 !
>>> vaapijpegenc
>>> > ! rtpjpegpay ! multiudpsink clients=192.168.0.15
>>> >
>>> > I get:
>>> >
>>> > Setting pipeline to PAUSED ...
>>> > libva info: VA-API version 0.39.0
>>> > libva info: va_getDriverName() returns 0
>>> > libva info: Trying to open
>>> /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so
>>> > libva info: Found init function __vaDriverInit_0_39
>>> > libva info: va_openDriver() returns 0
>>> > Pipeline is live and does not need PREROLL ...
>>> > Got context from element 'vaapiencodejpeg0': gst.vaapi.Display=context,
>>> > gst.vaapi.Display=(GstVaapiDisplay)NULL;
>>> > Setting pipeline to PLAYING ...
>>> > New clock: GstSystemClock
>>> > ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
>>> Internal
>>> > data flow error.
>>> > Additional debug info:
>>> > gstbasesrc.c(2948): gst_base_src_loop ():
>>> > /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
>>> > streaming task paused, reason not-negotiated (-4)
>>>
>>> This indicated that v4l2src and vaapijpegenc are not "compatible". You
>>> may need vaapipostproc and/or videoconvert in between. On NVIDIA
>>> though, it is recommended to use the new interface NVENC/NVDEC.
>>>
>>> > Execution ended after 0:00:00.478047083
>>> > Setting pipeline to PAUSED ...
>>> > Setting pipeline to READY ...
>>> > Setting pipeline to NULL ...
>>> > Freeing pipeline ...
>>> >
>>> > When I run this same pipeline with jpegenc the software encoder
>>> instead of
>>> > vaapijpegenc it runs fine. How can I fix this? I would like to be able
>>> to
>>> > use the G-Streamer VAAPI plugins.
>>> >
>>> >
>>> >
>>> > --
>>> > Sent from: http://gstreamer-devel.966125.n4.nabble.com/
>>> > _______________________________________________
>>> > 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
>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>> _______________________________________________
>> 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
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20181205/7c894660/attachment.html>


More information about the gstreamer-devel mailing list