Synopsis
GQuark gst_gl_shader_error_quark (void
);
#define GST_GL_SHADER_ERROR
enum GstGLShaderError;
enum GstGLShaderSourceType;
struct gst_gl_shadervariable_desc;
int gst_gl_shadervariable_set (GstGLShader *shader
,
struct gst_gl_shadervariable_desc *ret
);
int gst_gl_shadervariables_parse (GstGLShader *shader
,
char *variables
,
int (*_setvariable) (GstGLShader * shader, struct gst_gl_shadervariable_desc * v)
);
GstGLShader;
GstGLShader * gst_gl_shader_new (GstGLContext *context
);
void gst_gl_shader_set_vertex_source (GstGLShader *shader
,
const gchar *src
);
void gst_gl_shader_set_fragment_source (GstGLShader *shader
,
const gchar *src
);
const gchar * gst_gl_shader_get_vertex_source (GstGLShader *shader
);
const gchar * gst_gl_shader_get_fragment_source (GstGLShader *shader
);
void gst_gl_shader_set_active (GstGLShader *shader
,
gboolean active
);
gboolean gst_gl_shader_is_compiled (GstGLShader *shader
);
gboolean gst_gl_shader_compile (GstGLShader *shader
,
GError **error
);
gboolean gst_gl_shader_compile_and_check (GstGLShader *shader
,
const gchar *source
,
GstGLShaderSourceType type
);
gboolean gst_gl_shader_compile_all_with_attribs_and_check
(GstGLShader *shader
,
const gchar *v_src
,
const gchar *f_src
,
const gint n_attribs
,
const gchar *attrib_names[]
,
GLint attrib_locs[]
);
gboolean gst_gl_shader_compile_with_default_f_and_check
(GstGLShader *shader
,
const gchar *v_src
,
const gint n_attribs
,
const gchar *attrib_names[]
,
GLint attrib_locs[]
);
gboolean gst_gl_shader_compile_with_default_v_and_check
(GstGLShader *shader
,
const gchar *f_src
,
GLint *pos_loc
,
GLint *tex_loc
);
gboolean gst_gl_shader_compile_with_default_vf_and_check
(GstGLShader *shader
,
GLint *pos_loc
,
GLint *tex_loc
);
void gst_gl_shader_release (GstGLShader *shader
);
void gst_gl_shader_use (GstGLShader *shader
);
void gst_gl_shader_set_uniform_1i (GstGLShader *shader
,
const gchar *name
,
gint value
);
void gst_gl_shader_set_uniform_1f (GstGLShader *shader
,
const gchar *name
,
gfloat value
);
void gst_gl_shader_set_uniform_1fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
void gst_gl_shader_set_uniform_1iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
void gst_gl_shader_set_uniform_2f (GstGLShader *shader
,
const gchar *name
,
gfloat v0
,
gfloat v1
);
void gst_gl_shader_set_uniform_2fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
void gst_gl_shader_set_uniform_2i (GstGLShader *shader
,
const gchar *name
,
gint v0
,
gint v1
);
void gst_gl_shader_set_uniform_2iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
void gst_gl_shader_set_uniform_3f (GstGLShader *shader
,
const gchar *name
,
gfloat v0
,
gfloat v1
,
gfloat v2
);
void gst_gl_shader_set_uniform_3fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
void gst_gl_shader_set_uniform_3i (GstGLShader *shader
,
const gchar *name
,
gint v0
,
gint v1
,
gint v2
);
void gst_gl_shader_set_uniform_3iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
void gst_gl_shader_set_uniform_4f (GstGLShader *shader
,
const gchar *name
,
gfloat v0
,
gfloat v1
,
gfloat v2
,
gfloat v3
);
void gst_gl_shader_set_uniform_4fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
void gst_gl_shader_set_uniform_4i (GstGLShader *shader
,
const gchar *name
,
gint v0
,
gint v1
,
gint v2
,
gint v3
);
void gst_gl_shader_set_uniform_4iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
void gst_gl_shader_set_uniform_matrix_2fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_2x3fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_2x4fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_3fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_3x2fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_3x4fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_4fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_4x2fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
void gst_gl_shader_set_uniform_matrix_4x3fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gint gst_gl_shader_get_attribute_location
(GstGLShader *shader
,
const gchar *name
);
void gst_gl_shader_bind_attribute_location
(GstGLShader *shader
,
guint index
,
const gchar *name
);
Details
gst_gl_shader_error_quark ()
GQuark gst_gl_shader_error_quark (void
);
GST_GL_SHADER_ERROR
#define GST_GL_SHADER_ERROR (gst_gl_shader_error_quark ())
enum GstGLShaderError
typedef enum {
GST_GL_SHADER_ERROR_COMPILE,
GST_GL_SHADER_ERROR_LINK,
GST_GL_SHADER_ERROR_PROGRAM
} GstGLShaderError;
GST_GL_SHADER_ERROR_COMPILE
|
|
GST_GL_SHADER_ERROR_LINK
|
|
GST_GL_SHADER_ERROR_PROGRAM
|
|
enum GstGLShaderSourceType
typedef enum {
GST_GL_SHADER_FRAGMENT_SOURCE,
GST_GL_SHADER_VERTEX_SOURCE
} GstGLShaderSourceType;
GST_GL_SHADER_FRAGMENT_SOURCE
|
|
GST_GL_SHADER_VERTEX_SOURCE
|
|
struct gst_gl_shadervariable_desc
struct gst_gl_shadervariable_desc;
gst_gl_shadervariable_set ()
int gst_gl_shadervariable_set (GstGLShader *shader
,
struct gst_gl_shadervariable_desc *ret
);
gst_gl_shadervariables_parse ()
int gst_gl_shadervariables_parse (GstGLShader *shader
,
char *variables
,
int (*_setvariable) (GstGLShader * shader, struct gst_gl_shadervariable_desc * v)
);
GstGLShader
typedef struct _GstGLShader GstGLShader;
gst_gl_shader_set_vertex_source ()
void gst_gl_shader_set_vertex_source (GstGLShader *shader
,
const gchar *src
);
gst_gl_shader_set_fragment_source ()
void gst_gl_shader_set_fragment_source (GstGLShader *shader
,
const gchar *src
);
gst_gl_shader_get_vertex_source ()
const gchar * gst_gl_shader_get_vertex_source (GstGLShader *shader
);
gst_gl_shader_get_fragment_source ()
const gchar * gst_gl_shader_get_fragment_source (GstGLShader *shader
);
gst_gl_shader_set_active ()
void gst_gl_shader_set_active (GstGLShader *shader
,
gboolean active
);
gst_gl_shader_is_compiled ()
gboolean gst_gl_shader_is_compiled (GstGLShader *shader
);
gst_gl_shader_compile ()
gboolean gst_gl_shader_compile (GstGLShader *shader
,
GError **error
);
gst_gl_shader_compile_all_with_attribs_and_check ()
gboolean gst_gl_shader_compile_all_with_attribs_and_check
(GstGLShader *shader
,
const gchar *v_src
,
const gchar *f_src
,
const gint n_attribs
,
const gchar *attrib_names[]
,
GLint attrib_locs[]
);
gst_gl_shader_compile_with_default_f_and_check ()
gboolean gst_gl_shader_compile_with_default_f_and_check
(GstGLShader *shader
,
const gchar *v_src
,
const gint n_attribs
,
const gchar *attrib_names[]
,
GLint attrib_locs[]
);
gst_gl_shader_compile_with_default_v_and_check ()
gboolean gst_gl_shader_compile_with_default_v_and_check
(GstGLShader *shader
,
const gchar *f_src
,
GLint *pos_loc
,
GLint *tex_loc
);
gst_gl_shader_compile_with_default_vf_and_check ()
gboolean gst_gl_shader_compile_with_default_vf_and_check
(GstGLShader *shader
,
GLint *pos_loc
,
GLint *tex_loc
);
gst_gl_shader_release ()
void gst_gl_shader_release (GstGLShader *shader
);
gst_gl_shader_use ()
void gst_gl_shader_use (GstGLShader *shader
);
gst_gl_shader_set_uniform_1i ()
void gst_gl_shader_set_uniform_1i (GstGLShader *shader
,
const gchar *name
,
gint value
);
gst_gl_shader_set_uniform_1f ()
void gst_gl_shader_set_uniform_1f (GstGLShader *shader
,
const gchar *name
,
gfloat value
);
gst_gl_shader_set_uniform_1fv ()
void gst_gl_shader_set_uniform_1fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
gst_gl_shader_set_uniform_1iv ()
void gst_gl_shader_set_uniform_1iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
gst_gl_shader_set_uniform_2f ()
void gst_gl_shader_set_uniform_2f (GstGLShader *shader
,
const gchar *name
,
gfloat v0
,
gfloat v1
);
gst_gl_shader_set_uniform_2fv ()
void gst_gl_shader_set_uniform_2fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
gst_gl_shader_set_uniform_2i ()
void gst_gl_shader_set_uniform_2i (GstGLShader *shader
,
const gchar *name
,
gint v0
,
gint v1
);
gst_gl_shader_set_uniform_2iv ()
void gst_gl_shader_set_uniform_2iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
gst_gl_shader_set_uniform_3f ()
void gst_gl_shader_set_uniform_3f (GstGLShader *shader
,
const gchar *name
,
gfloat v0
,
gfloat v1
,
gfloat v2
);
gst_gl_shader_set_uniform_3fv ()
void gst_gl_shader_set_uniform_3fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
gst_gl_shader_set_uniform_3i ()
void gst_gl_shader_set_uniform_3i (GstGLShader *shader
,
const gchar *name
,
gint v0
,
gint v1
,
gint v2
);
gst_gl_shader_set_uniform_3iv ()
void gst_gl_shader_set_uniform_3iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
gst_gl_shader_set_uniform_4f ()
void gst_gl_shader_set_uniform_4f (GstGLShader *shader
,
const gchar *name
,
gfloat v0
,
gfloat v1
,
gfloat v2
,
gfloat v3
);
gst_gl_shader_set_uniform_4fv ()
void gst_gl_shader_set_uniform_4fv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gfloat *value
);
gst_gl_shader_set_uniform_4i ()
void gst_gl_shader_set_uniform_4i (GstGLShader *shader
,
const gchar *name
,
gint v0
,
gint v1
,
gint v2
,
gint v3
);
gst_gl_shader_set_uniform_4iv ()
void gst_gl_shader_set_uniform_4iv (GstGLShader *shader
,
const gchar *name
,
guint count
,
gint *value
);
gst_gl_shader_set_uniform_matrix_2fv ()
void gst_gl_shader_set_uniform_matrix_2fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_2x3fv ()
void gst_gl_shader_set_uniform_matrix_2x3fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_2x4fv ()
void gst_gl_shader_set_uniform_matrix_2x4fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_3fv ()
void gst_gl_shader_set_uniform_matrix_3fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_3x2fv ()
void gst_gl_shader_set_uniform_matrix_3x2fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_3x4fv ()
void gst_gl_shader_set_uniform_matrix_3x4fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_4fv ()
void gst_gl_shader_set_uniform_matrix_4fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_4x2fv ()
void gst_gl_shader_set_uniform_matrix_4x2fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_set_uniform_matrix_4x3fv ()
void gst_gl_shader_set_uniform_matrix_4x3fv
(GstGLShader *shader
,
const gchar *name
,
gint count
,
gboolean transpose
,
const gfloat *value
);
gst_gl_shader_get_attribute_location ()
gint gst_gl_shader_get_attribute_location
(GstGLShader *shader
,
const gchar *name
);
gst_gl_shader_bind_attribute_location ()
void gst_gl_shader_bind_attribute_location
(GstGLShader *shader
,
guint index
,
const gchar *name
);