gstreamer vaapi and multiple video cards

Alexsandrov Stanislav neko at nya.ai
Mon Aug 15 18:37:02 UTC 2016


Hi.

I'm trying to use two video cards for decoding h264: intel gpu and
nvidia with proprietary driver + vdpau-vaapi. I have tried to launch two
X servers with different displays, one for intel and second one for
nvidia. So if i set environment variable DISPLAY everything works like a
charm and at same time.

#intel
DISPLAY=:1 gst-launch .... ! vaapidecode !  vaapih264enc ! ....
#nvidia
DISPLAY=:2 gst-launch .... ! vaapidecode !  nvh264enc ! ....

But i'm planning to use gstreamer-vaapi with multiple gpu inside single
application with appsink/appsrc. So how to tell vaapidecode (and other
vaapi elements) which video card(or display) to use without environment
variables?

I've looked at vaapisink element: it has "display-name" property. If i
set this property then vaapidecode will reuse context created by
vaapisink and will use same video card, but this property is specific to
vaapisink only... so maybe there is some similar way to tell other vaapi
elements which video card to use?


More information about the gstreamer-devel mailing list