[gst-plugins-gl] Advice for glReadPixel-based src gst element
I want to integrate an OpenGL application into gstreamer for archiving
and live broadcasting purposes.
I've been trying with a modded yukon (that uses raw YUV in tcp mode)
into a tcpserversrc gst pipeline. I get quite good results, although
it's more prototyping than real integration. Now i want to create a
clean gst src for this purpose.
The opengl-related features of such a plugin would be:
* getting the openGL context for the target app
* grabbing (RGB) frames on a synced basis (specifiable frequency
parameter) using glReadPixel calls (using gobject timeouts ?)
* optionally optimize the capture using glXAllocateMemory calls
Do you have suggestions for getting the gl context and handling the
sync in a gst src element ? The result would be something like the
ximagesrc element, yet the target program selection is a bit blurry in
my mind yet... Maybe the gst element should start the target OpenGL
app, or is there a way to list (and select) the existing GL contexts ?
Another option would be using appsrc, yet it wouldn't take the gl
capture aspect into account.