GstPlayer - Up board


#1

Hi

I’ve tried running the QuickTimeBasic sample on a Up board http://www.up-board.org/up/
I get no error but the texture is black.

If I set sUseGstGl to false and recompile cinder then video playback is working.
But I would like the extra acceleration from the GL link.

Using gstreamer from the command line with the following commands works great:
gst-launch-1.0 uridecodebin uri=file:///home/up/test.mp4 ! queue ! glimagesink

gst-launch-1.0 uridecodebin uri=file:///home/up/test.mp4 ! queue ! glfilterbin filter=glcolorscale ! glimagesink

This is the output from the application when running with GL enabled (black screen):

Rendering with OpenGL Core Profile 3.2
Initialized GStreamer version 1.10.4.0
Pipeline state about to change from : NULL to READY
Pipeline state changed SUCCESSFULLY from : NULL to READY
Need context gst.gl.GLDisplay from element convert
Pipeline state changed from : NULL to READY with pending VOID_PENDING
Need context gst.gl.app_context from element convert
Pipeline state about to change from : READY to PAUSED
 Blocking until pipeline state changes from : READY to PAUSED
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
Need context gst.vaapi.Display from element vaapipostproc0
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
Have context gst.vaapi.Display from element vaapipostproc0
Pipeline state changed from : READY to PAUSED with pending VOID_PENDING
Pipeline state changed SUCCESSFULLY from : PAUSED to PAUSED
Pipeline state about to change from : PAUSED to PLAYING
Pipeline state changed SUCCESSFULLY from : PAUSED to PLAYING
Playing: 1
Pipeline state changed from : PAUSED to PLAYING with pending VOID_PENDING

Up board specs:
Ubuntu 17.04
GStreamer 1.10.4
Intel Atom x5-Z8350 Processor
Intel HD 400 Graphics ,12 EU GEN 8, up to 500MHz, Open GL 4.2, Open CL 1.2, OGL ES3.0, H.264, HEVC(decode), VP8

Any pointers would be greatly appreciated

-Tobias


#2

Hi Tobias,

I see from your output that gstreamer-vaapi is installed – Unfortunately this will not work as there is no support for VAAPI as of yet in the GstPlayer. What I would try is to uninstall this package ( smt like sudo apt-get --purge remove gstreamer1.0-vaapi should do it ) and then try again the GL path. Note that you won’t have HW accelerated decoding of the video aka ‘zero-copy’ but at least you will get some other improvements ( colorspace conversion on the GPU, PBO’s for uploading/downloading etc. )

HTH,
Petros


#3

Hi Petros

Thanks - everything worked as expected after removing gstreamer-vaapi

-Tobias