| GStreamer OpenGL Plugins 0.10 Library Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
enum GstGLDisplayConversion;
enum GstGLDisplayProjection;
void (*CRCB) (GLuint ,
GLuint );
gboolean (*CDCB) (GLuint ,
GLuint ,
GLuint );
void (*GstGLDisplayThreadFunc) (GstGLDisplay *display,
gpointer data);
void (*GLCB) (gint ,
gint ,
guint ,
gpointer stuff);
GstGLDisplay;
GstGLDisplay * gst_gl_display_new (void);
void gst_gl_display_create_context (GstGLDisplay *display,
GLint width,
GLint height,
gulong external_gl_context);
gboolean gst_gl_display_redisplay (GstGLDisplay *display,
GLuint texture,
gint width,
gint 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;
void (*GstGLDisplayThreadFunc) (GstGLDisplay *display,
gpointer data);
|
|
|
void gst_gl_display_create_context (GstGLDisplay *display,
GLint width,
GLint height,
gulong external_gl_context);
|
|
|
|
|
|
|
gboolean gst_gl_display_redisplay (GstGLDisplay *display, GLuint texture, gint width, gint 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);
|
|
|