Top | ![]() |
![]() |
![]() |
![]() |
GObject ╰── GInitiallyUnowned ╰── GstObject ╰── GstElement ╰── GstBaseTransform ╰── GstGLBaseFilter ╰── GstGLFilter
void gst_gl_filter_draw_texture (GstGLFilter *filter
,GLuint texture
,guint width
,guint height
);
Draws texture
into the OpenGL scene at the specified width
and height
.
void gst_gl_filter_render_to_target (GstGLFilter *filter
,gboolean resize
,GLuint input
,GLuint target
,GLCB func
,gpointer data
);
Transforms input
into output
using func
on through FBO. resize
should
only ever be TRUE
whenever input
is the input texture of filter
.
void gst_gl_filter_render_to_target_with_shader (GstGLFilter *filter
,gboolean resize
,GLuint input
,GLuint target
,GstGLShader *shader
);
Transforms input
into output
using shader
on FBO. resize
should
only ever be TRUE
whenever input
is the input texture of filter
.
See also: gst_gl_filter_render_to_target()
gboolean gst_gl_filter_filter_texture (GstGLFilter *filter
,GstBuffer *inbuf
,GstBuffer *outbuf
);
Perform automatic upload if needed, call filter_texture vfunc and then an automatic download if needed.
typedef struct _GstGLFilter GstGLFilter;
GstGLFilter is a base class that provides the logic of getting the GL context from downstream and automatic upload/download for non-GstGLMemory GstBuffers.
typedef struct { GstGLBaseFilterClass parent_class; gboolean (*set_caps) (GstGLFilter* filter, GstCaps* incaps, GstCaps* outcaps); gboolean (*filter) (GstGLFilter *filter, GstBuffer *inbuf, GstBuffer *outbuf); gboolean (*filter_texture) (GstGLFilter *filter, guint in_tex, guint out_tex); gboolean (*init_fbo) (GstGLFilter *filter); /* useful to init and cleanup custom gl resources */ void (*display_init_cb) (GstGLFilter *filter); void (*display_reset_cb) (GstGLFilter *filter); } GstGLFilterClass;
GstGLBaseFilterClass |
||
mirror from GstBaseTransform |
||
perform operations on the input and output buffers. In general,
you should avoid using this method if at all possible. One valid
use-case for using this is keeping previous buffers for future calculations.
Note: If |
||
given |
||
perform initialization when the Framebuffer object is created |
||
execute arbitrary gl code on start |
||
execute arbitrary gl code at stop |