| Top |
A GstGLFramebuffer represents and holds an OpenGL framebuffer object with it's associated attachments.
A GstGLFramebuffer can be created with gst_gl_framebuffer_new() or
gst_gl_framebuffer_new_with_default_depth() and bound with
gst_gl_framebuffer_bind(). Other resources can be bound with
gst_gl_framebuffer_attach()
Note: OpenGL framebuffers are not shareable resources so cannot be used between multiple OpenGL contexts.
GstGLFramebuffer *
gst_gl_framebuffer_new (GstGLContext *context);
Since: 1.10
GstGLFramebuffer * gst_gl_framebuffer_new_with_default_depth (GstGLContext *context,guint width,guint height);
Since: 1.10
void gst_gl_framebuffer_attach (GstGLFramebuffer *fb,guint attachment_point,GstGLBaseMemory *mem);
attach mem
to attachment_point
fb |
||
attachment_point |
the OpenGL attachment point to bind |
|
mem |
the memory object to bind to |
Since: 1.10
void
gst_gl_framebuffer_bind (GstGLFramebuffer *fb);
Bind fb
into the current thread
Since: 1.10
void
gst_gl_context_clear_framebuffer (GstGLContext *context);
Unbind the current framebuffer
Since: 1.10
gboolean gst_gl_framebuffer_draw_to_texture (GstGLFramebuffer *fb,GstGLMemory *mem,GstGLFramebufferFunc func,gpointer user_data);
Perform the steps necessary to have the output of a glDraw* command in
func
update the contents of mem
.
fb |
||
mem |
the GstGLMemory to draw to |
|
func |
the function to run. |
[scope call] |
user_data |
data to pass to |
Since: 1.10
void gst_gl_framebuffer_get_effective_dimensions (GstGLFramebuffer *fb,guint *width,guint *height);
Retreive the effective dimensions from the current attachments attached to
fb
.
Since: 1.10