VAAPI + meta:GstVideoGLTextureUploadMeta
Christophe Lafolet
christophe.lafolet at laposte.net
Sun Jan 17 11:32:12 PST 2016
Hello,
I've troubles with VAAPI and OpenGL :)
I'm developping a Java OpenGL application with dynamic streams and use
DecodeBin + AppSink to be notified of buffer reception.
No problem when I disable VAAPI plugin selection and do texture upload
myself.
Now I want to use hardware decoding
It's not clear to me which API should I use to shared openGL context with
VAAPI
- in this post :
http://ystreet00.blogspot.com.au/2015/09/gstreamer-16-and-opengl-contexts.html
the new way should be to set a context on GST_MESSAGE_NEED_CONTEXT reception
but the VAAPI plugin seems only verify that the given context contains a
VAAPI display and delegate to element_class->set_context() but this callback
is unset for VaapiDecode so no context is saved
Question : why do I need to add a VAAPI display in this context ? DecodeBin
is a black box for me and I'm surprised to specify a VAAPI display.
- the old way seems to use allocation query :
AppSink do not provide configurable "signal" to add callback to handle
allocation query : I update the AppSink.propose_allocation field directly
from Java with my callback and it works ... yes
So, I add GstVideoGLTextureUploadMeta to the allocation query :
"gst.gl.GstGLContext" with a gl_context build with
gst_gl_context_new_wrapped(), VAAPI detects my parameters
(GST_GL_PLATFORM_GLX, GST_GL_API_OPENGL)
but a SIGSEGV is generated later.
I receive samples containing no raw data (OK), a VideoGLTextureUploadMeta
with one texture (OK) but can't upload
Is there a example to use VAAPI + meta:GstVideoGLTextureUploadMeta ?
My config :
Linux + X11 + GLX
gstreamer 1.6.2-1
gstreamer-vaapi 0.7.0
gstopengl not used.
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/VAAPI-meta-GstVideoGLTextureUploadMeta-tp4675312.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
More information about the gstreamer-devel
mailing list