Top | ![]() |
![]() |
![]() |
![]() |
GstGLColorConvert is an object that converts between color spaces and/or formats using OpenGL Shaders.
A GstGLColorConvert can be created with gst_gl_color_convert_new()
.
For handling stride scaling in the shader, see
gst_gl_color_convert_set_texture_scaling()
.
gboolean gst_gl_color_convert_init_format (GstGLColorConvert *convert
,GstVideoInfo *in_info
,GstVideoInfo *out_info
);
Initializes convert
with the information required for conversion.
void gst_gl_color_convert_set_texture_scaling (GstGLColorConvert *convert
,gfloat scaling[GST_VIDEO_MAX_PLANES][2]
);
Scales the input textures by the given amount. Useful for performing stride scaling in a shader on OpenGL platforms that do not support GL_PIXEL_[UN]PACK_LENGTH such as GL|ES 2.0.
gboolean gst_gl_color_convert_perform (GstGLColorConvert *convert
,GstGLMemory *in_tex[GST_VIDEO_MAX_PLANES]
,GstGLMemory *out_tex[GST_VIDEO_MAX_PLANES]
);
Converts the data contained in in_tex into out_tex using the formats
specified by the GstVideoInfos passed to
gst_gl_color_convert_init_format()
#define GST_GL_COLOR_CONVERT_FORMATS
The currently supported formats that can be converted
#define GST_GL_COLOR_CONVERT_VIDEO_CAPS GST_VIDEO_CAPS_MAKE (GST_GL_COLOR_CONVERT_FORMATS)
The currently supported GstCaps that can be converted
typedef struct _GstGLColorConvert GstGLColorConvert;
Opaque GstGLColorConvert object
typedef struct { GObjectClass object_class; } GstGLColorConvertClass;
The GstGLColorConvertClass struct only contains private data