| GStreamer Bad Plugins 1.0 Library Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
void (*GLCB) (gint Param1,gint Param2,guint Param3,gpointer stuff); void (*GLCB_V2) (gpointer stuff); gboolean (*CDCB) (GLuint texture,GLuint width,GLuint height,gpointer data); enum GstGLDisplayProjection; gboolean gst_gl_ensure_display (gpointer element,GstGLDisplay **display_ptr); gboolean gst_gl_handle_set_context (GstElement *element,GstContext *context,GstGLDisplay **display); gboolean gst_gl_handle_context_query (GstElement *element,GstQuery *query,GstGLDisplay **display); 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 (GstGLContext *context,gint texture_fbo_width,gint texture_fbo_height,GLuint fbo,GLuint depth_buffer,GLuint texture_fbo,GLCB cb,gint input_texture_width,gint input_texture_height,GLuint input_texture,gdouble proj_param1,gdouble proj_param2,gdouble proj_param3,gdouble proj_param4,GstGLDisplayProjection projection,gpointer stuff); 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,...); gchar * gst_gl_context_get_error (void); void gst_gl_context_clear_shader (GstGLContext *context); void gst_gl_generate_texture_full (GstGLContext *context,const GstVideoInfo *info,const guint comp,gint stride[],gsize offset[],gsize size[],GLuint *pTexture);
void (*GLCB) (gint Param1,gint Param2,guint Param3,gpointer stuff);
callback definition for operating on textures
|
the width |
|
the height |
|
texture |
|
user data |
void (*GLCB_V2) (gpointer stuff);
callback definition for operating through a Framebuffer object
|
user data |
gboolean (*CDCB) (GLuint texture,GLuint width,GLuint height,gpointer data);
client draw callback
|
texture to draw |
|
new width |
|
new height: |
|
user data |
typedef enum {
GST_GL_DISPLAY_PROJECTION_ORTHO2D,
GST_GL_DISPLAY_PROJECTION_PERSPECTIVE
} GstGLDisplayProjection;
gboolean gst_gl_ensure_display (gpointer element,GstGLDisplay **display_ptr);
gboolean gst_gl_handle_set_context (GstElement *element,GstContext *context,GstGLDisplay **display);
gboolean gst_gl_handle_context_query (GstElement *element,GstQuery *query,GstGLDisplay **display);
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 (GstGLContext *context,gint texture_fbo_width,gint texture_fbo_height,GLuint fbo,GLuint depth_buffer,GLuint texture_fbo,GLCB cb,gint input_texture_width,gint input_texture_height,GLuint input_texture,gdouble proj_param1,gdouble proj_param2,gdouble proj_param3,gdouble proj_param4,GstGLDisplayProjection projection,gpointer stuff);
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_generate_texture_full (GstGLContext *context,const GstVideoInfo *info,const guint comp,gint stride[],gsize offset[],gsize size[],GLuint *pTexture);