Top | ![]() |
![]() |
![]() |
![]() |
void (*GLCB) (gint Param1
,gint Param2
,guint Param3
,gpointer stuff
);
callback definition for operating on textures
void
(*GLCB_V2) (gpointer stuff
);
callback definition for operating through a Framebuffer object
gboolean (*CDCB) (GLuint texture
,GLuint width
,GLuint height
,gpointer data
);
client draw callback
gboolean gst_gl_handle_set_context (GstElement *element
,GstContext *context
,GstGLDisplay **display
,GstGLContext **other_context
);
gboolean gst_gl_handle_context_query (GstElement *element
,GstQuery *query
,GstGLDisplay **display
,GstGLContext **other_context
);
void gst_gl_context_gen_texture (GstGLContext *context
,GLuint *pTexture
,GstVideoFormat v_format
,GLint width
,GLint height
);
void gst_gl_context_del_texture (GstGLContext *context
,GLuint *pTexture
);
gboolean gst_gl_context_gen_fbo (GstGLContext *context
,gint width
,gint height
,GLuint *fbo
,GLuint *depthbuffer
);
void gst_gl_context_del_fbo (GstGLContext *context
,GLuint fbo
,GLuint depth_buffer
);
gboolean gst_gl_context_use_fbo_v2 (GstGLContext *context
,gint texture_fbo_width
,gint texture_fbo_height
,GLuint fbo
,GLuint depth_buffer
,GLuint texture_fbo
,GLCB_V2 cb
,gpointer stuff
);
gboolean gst_gl_context_gen_shader (GstGLContext *context
,const gchar *shader_vertex_source
,const gchar *shader_fragment_source
,GstGLShader **shader
);
void gst_gl_context_del_shader (GstGLContext *context
,GstGLShader *shader
);
gboolean
gst_gl_context_check_framebuffer_status
(GstGLContext *context
);
void gst_gl_context_set_error (GstGLContext *context
,const char *format
,...
);
void
gst_gl_context_clear_shader (GstGLContext *context
);
Clear's the currently set shader from the GL state machine.
Note: must be called in the GL thread.
void gst_gl_generate_texture_full (GstGLContext *context
,const GstVideoInfo *info
,const guint comp
,gint stride[]
,gsize offset[]
,gsize size[]
,GLuint *pTexture
);
GstCaps * gst_gl_caps_replace_all_caps_features (const GstCaps *caps
,const gchar *feature_name
);
gboolean gst_gl_ensure_element_data (gpointer element
,GstGLDisplay **display_ptr
,GstGLContext **other_context_ptr
);
gsize gst_gl_get_plane_data_size (GstVideoInfo *info
,GstVideoAlignment *align
,guint plane
);
gsize gst_gl_get_plane_start (GstVideoInfo *info
,GstVideoAlignment *valign
,guint plane
);
gboolean gst_gl_run_query (GstElement *element
,GstQuery *query
,GstPadDirection direction
);
GstGLTextureTarget
gst_gl_value_get_texture_target_mask (const GValue *value
);
See gst_gl_value_set_texture_target_from_mask()
for what entails a mask
gboolean gst_gl_value_set_texture_target (GValue *value
,GstGLTextureTarget target
);
gboolean gst_gl_value_set_texture_target_from_mask (GValue *value
,GstGLTextureTarget target_mask
);
A mask is a bitwise OR of (1 << target) where target is a valid GstGLTextureTarget