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
(*GstGLFramebufferFunc) (gpointer stuff
);
callback definition for operating through a GstGLFramebuffer object
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
gboolean gst_gl_context_check_framebuffer_status (GstGLContext *context
,guint fbo_target
);
context |
||
fbo_target |
the GL value of the framebuffer target, GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER, GL_DRAW_FRAMEBUFFER |
Since: 1.10