| GStreamer OpenGL Plugins 0.10 Library Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
enum GstGLDisplayConversion; enum GstGLDisplayProjection; void (*CRCB) (GLuint Param1,GLuint Param2,gpointer Param3); gboolean (*CDCB) (GLuint Param1,GLuint Param2,GLuint Param3,gpointer Param4); void (*GstGLDisplayThreadFunc) (GstGLDisplay *display,gpointer data); void (*GLCB) (gint Param1,gint Param2,guint Param3,gpointer stuff); GstGLDisplay; GstGLDisplay * gst_gl_display_new (void); void gst_gl_display_create_context (GstGLDisplay *display,gulong external_gl_context); gboolean gst_gl_display_redisplay (GstGLDisplay *display,GLuint texture,gint gl_width,gint gl_height,gint window_width,gint window_height,gboolean keep_aspect_ratio); void gst_gl_display_thread_add (GstGLDisplay *display,GstGLDisplayThreadFunc func,gpointer data); void gst_gl_display_gen_texture (GstGLDisplay *display,GLuint *pTexture,GLint width,GLint height); void gst_gl_display_del_texture (GstGLDisplay *display,GLuint texture,GLint width,GLint height); void gst_gl_display_init_upload (GstGLDisplay *display,GstVideoFormat video_format,guint gl_width,guint gl_height,gint video_width,gint video_height); gboolean gst_gl_display_do_upload (GstGLDisplay *display,GLuint texture,gint data_width,gint data_height,gpointer data); void gst_gl_display_init_download (GstGLDisplay *display,GstVideoFormat video_format,gint width,gint height); gboolean gst_gl_display_do_download (GstGLDisplay *display,GLuint texture,gint width,gint height,gpointer data); void gst_gl_display_gen_fbo (GstGLDisplay *display,gint width,gint height,GLuint *fbo,GLuint *depthbuffer); gboolean gst_gl_display_use_fbo (GstGLDisplay *display,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); void gst_gl_display_del_fbo (GstGLDisplay *display,GLuint fbo,GLuint depth_buffer); void gst_gl_display_gen_shader (GstGLDisplay *display,const gchar *shader_vertex_source,const gchar *shader_fragment_source,GstGLShader **shader); void gst_gl_display_del_shader (GstGLDisplay *display,GstGLShader *shader); void gst_gl_display_set_window_id (GstGLDisplay *display,gulong window_id); void gst_gl_display_set_client_reshape_callback (GstGLDisplay *display,CRCB cb); void gst_gl_display_set_client_draw_callback (GstGLDisplay *display,CDCB cb);
typedef enum
{
GST_GL_DISPLAY_CONVERSION_GLSL, //ARB_fragment_shade
GST_GL_DISPLAY_CONVERSION_MATRIX, //ARB_imaging
GST_GL_DISPLAY_CONVERSION_MESA, //MESA_ycbcr_texture
} GstGLDisplayConversion;
typedef enum
{
GST_GL_DISPLAY_PROJECTION_ORTHO2D,
GST_GL_DISPLAY_PROJECTION_PERSPECTIVE
} GstGLDisplayProjection;
gboolean (*CDCB) (GLuint Param1,GLuint Param2,GLuint Param3,gpointer Param4);
|
|
|
|
|
|
|
|
Returns : |
void (*GstGLDisplayThreadFunc) (GstGLDisplay *display,gpointer data);
|
|
|
void (*GLCB) (gint Param1,gint Param2,guint Param3,gpointer stuff);
|
|
|
|
|
|
|
void gst_gl_display_create_context (GstGLDisplay *display,gulong external_gl_context);
|
|
|
gboolean gst_gl_display_redisplay (GstGLDisplay *display,GLuint texture,gint gl_width,gint gl_height,gint window_width,gint window_height,gboolean keep_aspect_ratio);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
void gst_gl_display_thread_add (GstGLDisplay *display,GstGLDisplayThreadFunc func,gpointer data);
|
|
|
|
|
void gst_gl_display_gen_texture (GstGLDisplay *display,GLuint *pTexture,GLint width,GLint height);
|
|
|
|
|
|
|
void gst_gl_display_del_texture (GstGLDisplay *display,GLuint texture,GLint width,GLint height);
|
|
|
|
|
|
|
void gst_gl_display_init_upload (GstGLDisplay *display,GstVideoFormat video_format,guint gl_width,guint gl_height,gint video_width,gint video_height);
|
|
|
|
|
|
|
|
|
|
|
gboolean gst_gl_display_do_upload (GstGLDisplay *display,GLuint texture,gint data_width,gint data_height,gpointer data);
|
|
|
|
|
|
|
|
|
|
Returns : |
void gst_gl_display_init_download (GstGLDisplay *display,GstVideoFormat video_format,gint width,gint height);
|
|
|
|
|
|
|
gboolean gst_gl_display_do_download (GstGLDisplay *display,GLuint texture,gint width,gint height,gpointer data);
|
|
|
|
|
|
|
|
|
|
Returns : |
void gst_gl_display_gen_fbo (GstGLDisplay *display,gint width,gint height,GLuint *fbo,GLuint *depthbuffer);
|
|
|
|
|
|
|
|
|
gboolean gst_gl_display_use_fbo (GstGLDisplay *display,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);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
void gst_gl_display_del_fbo (GstGLDisplay *display,GLuint fbo,GLuint depth_buffer);
|
|
|
|
|
void gst_gl_display_gen_shader (GstGLDisplay *display,const gchar *shader_vertex_source,const gchar *shader_fragment_source,GstGLShader **shader);
|
|
|
|
|
|
|
void gst_gl_display_del_shader (GstGLDisplay *display,GstGLShader *shader);
|
|
|
void gst_gl_display_set_window_id (GstGLDisplay *display,gulong window_id);
|
|
|
void gst_gl_display_set_client_reshape_callback (GstGLDisplay *display,CRCB cb);
|
|
|
void gst_gl_display_set_client_draw_callback (GstGLDisplay *display,CDCB cb);
|
|
|