[Bug 734482] Make OpenGL plugins more accessible for application programmers

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Aug 18 02:16:36 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=734482
  GStreamer | gst-plugins-bad | unspecified

--- Comment #10 from Lubosz Sarnecki <lubosz at gmail.com> 2014-08-18 09:16:31 UTC ---
== Introspection ==

I don't get any import errors and could use GstVideo for the video overlay in
my Python example. How can I test if additional gir packages are required as
dependency?

The gir scanner creates the most warnings about undefined OpenGL types. 

== Exposure of shader handle ==

The shader handle, which is not a pointer but a OpenGL id, can be used in the
drawing callback in the sink, since it used the same OpenGL context. It is not
the same thread per se, but the same context.
For using the OpenGL plugins in other languages, or using OpenGL functions not
wrapped by GStreamer, this handle is required to be exposed.
In my use case I need it to upload Python typed data to the GPU. The pyopengl
functions work with this handle and are able to upload numpy types very fine.

https://github.com/lubosz/gst-gl-tests/blob/master/gst_opengl_editor/opengl.py#L104

To make this possible without exposing the handle, I would need to wrap
functions with numpy types for glUniformMatrix4fv in GStreamer.
Additionally other things could be done with this handle that the GStGL api
does not expose.

== boxed type ==

After experimenting this was the best way to achieve this. I am even able to
get the correct introspected type in python from this property. I will
implement NULL checking after the review is finished.

== gtk+ deprecation error ==

I just tried to build the -bad plugins with this gtk version afaik. One could
expect this to happen in other places. GTK+ 3.14 is not released yet though,
just tried the git version.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list