GstGLMemory
GstGLMemory is a GstGLBaseMemory subclass providing support for the mapping of OpenGL textures.
GstGLMemory is created or wrapped through gst_gl_base_memory_alloc with GstGLVideoAllocationParams.
Data is uploaded or downloaded from the GPU as is necessary.
The GstCaps that is used for GstGLMemory based buffers should contain the GST_CAPS_FEATURE_MEMORY_GL_MEMORY as a GstCapsFeatures and should contain a 'texture-target' field with one of the GstGLTextureTarget values as a string, i.e. some combination of 'texture-target=(string){2D, rectangle, external-oes}'.
GstGLMemory
Represents information about a GL texture
Members
mem
(GstGLBaseMemory)
–
the parent GstGLBaseMemory object
tex_id
(guint)
–
the GL texture id for this memory
tex_target
(GstGLTextureTarget)
–
the GL texture target for this memory
tex_format
(GstGLFormat)
–
the texture type
info
(GstVideoInfo)
–
the texture's GstVideoInfo
valign
(GstVideoAlignment)
–
data alignment for system memory mapping
plane
(guint)
–
data plane in info
tex_scaling
(gfloat *)
–
GL shader scaling parameters for valign and/or width/height
texture_wrapped
(gboolean)
–
unpack_length
(guint)
–
tex_width
(guint)
–
GstGLMemory
Represents information about a GL texture
Members
mem
(GstGLBaseMemory)
–
the parent GstGLBaseMemory object
tex_id
(Number)
–
the GL texture id for this memory
tex_target
(GstGLTextureTarget)
–
the GL texture target for this memory
tex_format
(GstGLFormat)
–
the texture type
info
(GstVideoInfo)
–
the texture's GstVideoInfo
valign
(GstVideoAlignment)
–
data alignment for system memory mapping
plane
(Number)
–
data plane in info
tex_scaling
([ Number ])
–
GL shader scaling parameters for valign and/or width/height
texture_wrapped
(Number)
–
unpack_length
(Number)
–
tex_width
(Number)
–
GstGLMemory
Represents information about a GL texture
Members
mem
(GstGLBaseMemory)
–
the parent GstGLBaseMemory object
tex_id
(int)
–
the GL texture id for this memory
tex_target
(GstGLTextureTarget)
–
the GL texture target for this memory
tex_format
(GstGLFormat)
–
the texture type
info
(GstVideoInfo)
–
the texture's GstVideoInfo
valign
(GstVideoAlignment)
–
data alignment for system memory mapping
plane
(int)
–
data plane in info
tex_scaling
([ float ])
–
GL shader scaling parameters for valign and/or width/height
texture_wrapped
(bool)
–
unpack_length
(int)
–
tex_width
(int)
–
Methods
gst_gl_memory_copy_into
gboolean gst_gl_memory_copy_into (GstGLMemory * gl_mem, guint tex_id, GstGLTextureTarget target, GstGLFormat tex_format, gint width, gint height)
Copies gl_mem into the texture specified by tex_id. The format of tex_id is specified by tex_format, width and height.
Parameters:
gl_mem
–
tex_id
–
OpenGL texture id
target
–
tex_format
–
the GstGLFormat
width
–
width of tex_id
height
–
height of tex_id
Whether the copy succeeded
Since : 1.8
GstGL.GLMemory.prototype.copy_into
function GstGL.GLMemory.prototype.copy_into(tex_id: Number, target: GstGL.GLTextureTarget, tex_format: GstGL.GLFormat, width: Number, height: Number): {
// javascript wrapper for 'gst_gl_memory_copy_into'
}
Copies gl_mem into the texture specified by tex_id. The format of tex_id is specified by tex_format, width and height.
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
tex_id
(
Number
)
–
OpenGL texture id
target
(
GstGL.GLTextureTarget
)
–
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat
width
(
Number
)
–
width of tex_id
height
(
Number
)
–
height of tex_id
Whether the copy succeeded
Since : 1.8
GstGL.GLMemory.copy_into
def GstGL.GLMemory.copy_into (self, tex_id, target, tex_format, width, height):
#python wrapper for 'gst_gl_memory_copy_into'
Copies gl_mem into the texture specified by tex_id. The format of tex_id is specified by tex_format, width and height.
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
tex_id
(
int
)
–
OpenGL texture id
target
(
GstGL.GLTextureTarget
)
–
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat
width
(
int
)
–
width of tex_id
height
(
int
)
–
height of tex_id
Whether the copy succeeded
Since : 1.8
gst_gl_memory_copy_teximage
gboolean gst_gl_memory_copy_teximage (GstGLMemory * src, guint tex_id, GstGLTextureTarget out_target, GstGLFormat out_tex_format, gint out_width, gint out_height)
Copies the texture in GstGLMemory into the texture specified by tex_id, out_target, out_tex_format, out_width and out_height.
Parameters:
src
–
the source GstGLMemory
tex_id
–
the destination texture id
out_target
–
the destination GstGLTextureTarget
out_tex_format
–
the destination GstGLFormat
out_width
–
the destination width
out_height
–
the destination height
whether the copy succeeded.
Since : 1.8
GstGL.GLMemory.prototype.copy_teximage
function GstGL.GLMemory.prototype.copy_teximage(tex_id: Number, out_target: GstGL.GLTextureTarget, out_tex_format: GstGL.GLFormat, out_width: Number, out_height: Number): {
// javascript wrapper for 'gst_gl_memory_copy_teximage'
}
Copies the texture in GstGL.GLMemory into the texture specified by tex_id, out_target, out_tex_format, out_width and out_height.
Parameters:
src
(
GstGL.GLMemory
)
–
the source GstGL.GLMemory
tex_id
(
Number
)
–
the destination texture id
out_target
(
GstGL.GLTextureTarget
)
–
the destination GstGL.GLTextureTarget
out_tex_format
(
GstGL.GLFormat
)
–
the destination GstGL.GLFormat
out_width
(
Number
)
–
the destination width
out_height
(
Number
)
–
the destination height
whether the copy succeeded.
Since : 1.8
GstGL.GLMemory.copy_teximage
def GstGL.GLMemory.copy_teximage (self, tex_id, out_target, out_tex_format, out_width, out_height):
#python wrapper for 'gst_gl_memory_copy_teximage'
Copies the texture in GstGL.GLMemory into the texture specified by tex_id, out_target, out_tex_format, out_width and out_height.
Parameters:
src
(
GstGL.GLMemory
)
–
the source GstGL.GLMemory
tex_id
(
int
)
–
the destination texture id
out_target
(
GstGL.GLTextureTarget
)
–
the destination GstGL.GLTextureTarget
out_tex_format
(
GstGL.GLFormat
)
–
the destination GstGL.GLFormat
out_width
(
int
)
–
the destination width
out_height
(
int
)
–
the destination height
whether the copy succeeded.
Since : 1.8
gst_gl_memory_get_texture_format
GstGLFormat gst_gl_memory_get_texture_format (GstGLMemory * gl_mem)
Parameters:
gl_mem
–
the GstGLFormat of gl_mem
Since : 1.12
GstGL.GLMemory.prototype.get_texture_format
function GstGL.GLMemory.prototype.get_texture_format(): {
// javascript wrapper for 'gst_gl_memory_get_texture_format'
}
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the GstGL.GLFormat of gl_mem
Since : 1.12
GstGL.GLMemory.get_texture_format
def GstGL.GLMemory.get_texture_format (self):
#python wrapper for 'gst_gl_memory_get_texture_format'
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the GstGL.GLFormat of gl_mem
Since : 1.12
gst_gl_memory_get_texture_height
gint gst_gl_memory_get_texture_height (GstGLMemory * gl_mem)
Parameters:
gl_mem
–
the texture height of gl_mem
Since : 1.8
GstGL.GLMemory.prototype.get_texture_height
function GstGL.GLMemory.prototype.get_texture_height(): {
// javascript wrapper for 'gst_gl_memory_get_texture_height'
}
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the texture height of gl_mem
Since : 1.8
GstGL.GLMemory.get_texture_height
def GstGL.GLMemory.get_texture_height (self):
#python wrapper for 'gst_gl_memory_get_texture_height'
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the texture height of gl_mem
Since : 1.8
gst_gl_memory_get_texture_id
guint gst_gl_memory_get_texture_id (GstGLMemory * gl_mem)
Parameters:
gl_mem
–
the OpenGL texture handle of gl_mem
Since : 1.8
GstGL.GLMemory.prototype.get_texture_id
function GstGL.GLMemory.prototype.get_texture_id(): {
// javascript wrapper for 'gst_gl_memory_get_texture_id'
}
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the OpenGL texture handle of gl_mem
Since : 1.8
GstGL.GLMemory.get_texture_id
def GstGL.GLMemory.get_texture_id (self):
#python wrapper for 'gst_gl_memory_get_texture_id'
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the OpenGL texture handle of gl_mem
Since : 1.8
gst_gl_memory_get_texture_target
GstGLTextureTarget gst_gl_memory_get_texture_target (GstGLMemory * gl_mem)
Parameters:
gl_mem
–
the GstGLTextureTarget of gl_mem
Since : 1.8
GstGL.GLMemory.prototype.get_texture_target
function GstGL.GLMemory.prototype.get_texture_target(): {
// javascript wrapper for 'gst_gl_memory_get_texture_target'
}
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the GstGL.GLTextureTarget of gl_mem
Since : 1.8
GstGL.GLMemory.get_texture_target
def GstGL.GLMemory.get_texture_target (self):
#python wrapper for 'gst_gl_memory_get_texture_target'
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the GstGL.GLTextureTarget of gl_mem
Since : 1.8
gst_gl_memory_get_texture_width
gint gst_gl_memory_get_texture_width (GstGLMemory * gl_mem)
Parameters:
gl_mem
–
the texture width of gl_mem
Since : 1.8
GstGL.GLMemory.prototype.get_texture_width
function GstGL.GLMemory.prototype.get_texture_width(): {
// javascript wrapper for 'gst_gl_memory_get_texture_width'
}
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the texture width of gl_mem
Since : 1.8
GstGL.GLMemory.get_texture_width
def GstGL.GLMemory.get_texture_width (self):
#python wrapper for 'gst_gl_memory_get_texture_width'
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
the texture width of gl_mem
Since : 1.8
gst_gl_memory_init
gst_gl_memory_init (GstGLMemory * mem, GstAllocator * allocator, GstMemory * parent, GstGLContext * context, GstGLTextureTarget target, GstGLFormat tex_format, GstAllocationParams * params, GstVideoInfo * info, guint plane, GstVideoAlignment * valign, gpointer user_data, GDestroyNotify notify)
Initializes mem with the required parameters. info is assumed to have already have been modified with gst_video_info_align.
Parameters:
mem
–
the GstGLBaseMemory to initialize
allocator
–
the GstAllocator to initialize with
parent
(
[allow-none]
)
–
the parent GstMemory to initialize with
context
–
the GstGLContext to initialize with
target
–
the GstGLTextureTarget for this GstGLMemory
tex_format
–
the GstGLFormat for this GstGLMemory
params
(
[allow-none]
)
–
the GstAllocationParams to initialize with
info
–
the GstVideoInfo for this GstGLMemory
plane
–
the plane number (starting from 0) for this GstGLMemory
valign
(
[allow-none]
)
–
optional GstVideoAlignment parameters
user_data
(
[allow-none]
)
–
user data to call notify with
notify
(
[allow-none]
)
–
Since : 1.8
GstGL.GLMemory.prototype.init
function GstGL.GLMemory.prototype.init(allocator: Gst.Allocator, parent: Gst.Memory, context: GstGL.GLContext, target: GstGL.GLTextureTarget, tex_format: GstGL.GLFormat, params: Gst.AllocationParams, info: GstVideo.VideoInfo, plane: Number, valign: GstVideo.VideoAlignment, user_data: Object, notify: GLib.DestroyNotify): {
// javascript wrapper for 'gst_gl_memory_init'
}
Initializes mem with the required parameters. info is assumed to have already have been modified with GstVideo.VideoInfo.prototype.align.
Parameters:
mem
(
GstGL.GLMemory
)
–
the GstGL.GLBaseMemory to initialize
allocator
(
Gst.Allocator
)
–
the Gst.Allocator to initialize with
parent
(
Gst.Memory
)
–
the parent Gst.Memory to initialize with
context
(
GstGL.GLContext
)
–
the GstGL.GLContext to initialize with
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for this GstGL.GLMemory
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for this GstGL.GLMemory
params
(
Gst.AllocationParams
)
–
the GstAllocationParams to initialize with
info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for this GstGL.GLMemory
plane
(
Number
)
–
the plane number (starting from 0) for this GstGL.GLMemory
valign
(
GstVideo.VideoAlignment
)
–
optional GstVideo.VideoAlignment parameters
user_data
(
Object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
Since : 1.8
GstGL.GLMemory.init
def GstGL.GLMemory.init (self, allocator, parent, context, target, tex_format, params, info, plane, valign, user_data, notify):
#python wrapper for 'gst_gl_memory_init'
Initializes mem with the required parameters. info is assumed to have already have been modified with GstVideo.VideoInfo.align.
Parameters:
mem
(
GstGL.GLMemory
)
–
the GstGL.GLBaseMemory to initialize
allocator
(
Gst.Allocator
)
–
the Gst.Allocator to initialize with
parent
(
Gst.Memory
)
–
the parent Gst.Memory to initialize with
context
(
GstGL.GLContext
)
–
the GstGL.GLContext to initialize with
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for this GstGL.GLMemory
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for this GstGL.GLMemory
params
(
Gst.AllocationParams
)
–
the GstAllocationParams to initialize with
info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for this GstGL.GLMemory
plane
(
int
)
–
the plane number (starting from 0) for this GstGL.GLMemory
valign
(
GstVideo.VideoAlignment
)
–
optional GstVideo.VideoAlignment parameters
user_data
(
object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
Since : 1.8
gst_gl_memory_read_pixels
gboolean gst_gl_memory_read_pixels (GstGLMemory * gl_mem, gpointer write_pointer)
Reads the texture in GstGLMemory into write_pointer if no buffer is bound
to GL_PIXEL_PACK_BUFFER
. Otherwise write_pointer is the byte offset into
the currently bound GL_PIXEL_PACK_BUFFER
buffer to store the result of
glReadPixels. See the OpenGL specification for glReadPixels for more
details.
whether theread operation succeeded
Since : 1.8
GstGL.GLMemory.prototype.read_pixels
function GstGL.GLMemory.prototype.read_pixels(write_pointer: Object): {
// javascript wrapper for 'gst_gl_memory_read_pixels'
}
Reads the texture in GstGL.GLMemory into write_pointer if no buffer is bound
to GL_PIXEL_PACK_BUFFER
. Otherwise write_pointer is the byte offset into
the currently bound GL_PIXEL_PACK_BUFFER
buffer to store the result of
glReadPixels. See the OpenGL specification for glReadPixels for more
details.
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
write_pointer
(
Object
)
–
the data pointer to pass to glReadPixels
whether theread operation succeeded
Since : 1.8
GstGL.GLMemory.read_pixels
def GstGL.GLMemory.read_pixels (self, write_pointer):
#python wrapper for 'gst_gl_memory_read_pixels'
Reads the texture in GstGL.GLMemory into write_pointer if no buffer is bound
to GL_PIXEL_PACK_BUFFER
. Otherwise write_pointer is the byte offset into
the currently bound GL_PIXEL_PACK_BUFFER
buffer to store the result of
glReadPixels. See the OpenGL specification for glReadPixels for more
details.
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
write_pointer
(
object
)
–
the data pointer to pass to glReadPixels
whether theread operation succeeded
Since : 1.8
gst_gl_memory_texsubimage
gst_gl_memory_texsubimage (GstGLMemory * gl_mem, gpointer read_pointer)
Reads the texture in read_pointer into gl_mem.
See gst_gl_memory_read_pixels for what read_pointer signifies.
Since : 1.8
GstGL.GLMemory.prototype.texsubimage
function GstGL.GLMemory.prototype.texsubimage(read_pointer: Object): {
// javascript wrapper for 'gst_gl_memory_texsubimage'
}
Reads the texture in read_pointer into gl_mem.
See GstGL.GLMemory.prototype.read_pixels for what read_pointer signifies.
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
read_pointer
(
Object
)
–
the data pointer to pass to glTexSubImage
Since : 1.8
GstGL.GLMemory.texsubimage
def GstGL.GLMemory.texsubimage (self, read_pointer):
#python wrapper for 'gst_gl_memory_texsubimage'
Reads the texture in read_pointer into gl_mem.
See GstGL.GLMemory.read_pixels for what read_pointer signifies.
Parameters:
gl_mem
(
GstGL.GLMemory
)
–
read_pointer
(
object
)
–
the data pointer to pass to glTexSubImage
Since : 1.8
Functions
gst_gl_memory_init_once
gst_gl_memory_init_once ()
Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLMemory operation.
Since : 1.4
GstGL.prototype.gl_memory_init_once
function GstGL.prototype.gl_memory_init_once(): {
// javascript wrapper for 'gst_gl_memory_init_once'
}
Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLMemory operation.
Since : 1.4
GstGL.gl_memory_init_once
def GstGL.gl_memory_init_once ():
#python wrapper for 'gst_gl_memory_init_once'
Initializes the GL Base Texture allocator. It is safe to call this function multiple times. This must be called before any other GstGLMemory operation.
Since : 1.4
gst_gl_memory_setup_buffer
gboolean gst_gl_memory_setup_buffer (GstGLMemoryAllocator * allocator, GstBuffer * buffer, GstGLVideoAllocationParams * params, GstGLFormat * tex_formats, gpointer * wrapped_data, gsize n_wrapped_pointers)
Parameters:
allocator
–
the GstGLMemoryAllocator to allocate from
buffer
–
a GstBuffer to setup
params
–
the GstGLVideoAllocationParams to allocate with
tex_formats
–
(allow-none) (array length=n_wrapped_pointers): a list of GstGLFormat's to allocate with.
wrapped_data
–
(array length=n_wrapped_pointers) (element-type gpointer): a list of wrapped data pointers
n_wrapped_pointers
–
the number of elements in tex_formats and wrapped_data
whether the buffer was correctly setup
Since : 1.8
GstGLMemoryAllocator
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstAllocator ╰──GstGLBaseMemoryAllocator ╰──GstGLMemoryAllocator ╰──GstGLMemoryPBOAllocator
Opaque GstGLMemoryAllocator struct
Class structure
GstGLMemoryAllocatorClass
GstGL.GLMemoryAllocatorClass
GstGL.GLMemoryAllocatorClass
GstGLMemoryAllocator
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstAllocator ╰──GstGLBaseMemoryAllocator ╰──GstGLMemoryAllocator ╰──GstGLMemoryPBOAllocator
Opaque GstGLMemoryAllocator struct
GstGLMemoryAllocator
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstAllocator ╰──GstGLBaseMemoryAllocator ╰──GstGLMemoryAllocator ╰──GstGLMemoryPBOAllocator
Opaque GstGLMemoryAllocator struct
Functions
gst_gl_memory_allocator_get_default
GstGLMemoryAllocator * gst_gl_memory_allocator_get_default (GstGLContext * context)
Parameters:
context
–
the default GstGLMemoryAllocator supported by context
Since : 1.8
GstGL.GLMemoryAllocator.prototype.get_default
function GstGL.GLMemoryAllocator.prototype.get_default(context: GstGL.GLContext): {
// javascript wrapper for 'gst_gl_memory_allocator_get_default'
}
Parameters:
context
(
GstGL.GLContext
)
–
the default GstGL.GLMemoryAllocator supported by context
Since : 1.8
GstGL.GLMemoryAllocator.get_default
def GstGL.GLMemoryAllocator.get_default (context):
#python wrapper for 'gst_gl_memory_allocator_get_default'
Parameters:
context
(
GstGL.GLContext
)
–
the default GstGL.GLMemoryAllocator supported by context
Since : 1.8
GstGLVideoAllocationParams
Members
parent
(GstGLAllocationParams)
–
the parent GstGLAllocationParams structure
v_info
(GstVideoInfo *)
–
the GstVideoInfo to allocate
plane
(guint)
–
the video plane index to allocate
valign
(GstVideoAlignment *)
–
the GstVideoAlignment to align the system representation to (may be NULL for the default)
target
(GstGLTextureTarget)
–
the GstGLTextureTarget to allocate
tex_format
(GstGLFormat)
–
the GstGLFormat to allocate
GstGLVideoAllocationParams
Members
parent
(GstGLAllocationParams)
–
the parent GstGLAllocationParams structure
v_info
(GstVideoInfo)
–
the GstVideoInfo to allocate
plane
(Number)
–
the video plane index to allocate
valign
(GstVideoAlignment)
–
the GstVideoAlignment to align the system representation to (may be NULL for the default)
target
(GstGLTextureTarget)
–
the GstGLTextureTarget to allocate
tex_format
(GstGLFormat)
–
the GstGLFormat to allocate
GstGLVideoAllocationParams
Members
parent
(GstGLAllocationParams)
–
the parent GstGLAllocationParams structure
v_info
(GstVideoInfo)
–
the GstVideoInfo to allocate
plane
(int)
–
the video plane index to allocate
valign
(GstVideoAlignment)
–
the GstVideoAlignment to align the system representation to (may be NULL for the default)
target
(GstGLTextureTarget)
–
the GstGLTextureTarget to allocate
tex_format
(GstGLFormat)
–
the GstGLFormat to allocate
Constructors
gst_gl_video_allocation_params_new
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, guint plane, GstVideoAlignment * valign, GstGLTextureTarget target, GstGLFormat tex_format)
Parameters:
context
–
alloc_params
(
[allow-none]
)
–
the GstAllocationParams for sysmem mappings of the texture
v_info
–
the GstVideoInfo for the texture
plane
–
the video plane of v_info to allocate
valign
(
[allow-none]
)
–
any GstVideoAlignment applied to symem mappings of the texture
target
–
the GstGLTextureTarget for the created textures
tex_format
–
the GstGLFormat for the created textures
a new GstGLVideoAllocationParams for allocating GstGLMemory's
Since : 1.8
GstGL.GLVideoAllocationParams.prototype.new
function GstGL.GLVideoAllocationParams.prototype.new(context: GstGL.GLContext, alloc_params: Gst.AllocationParams, v_info: GstVideo.VideoInfo, plane: Number, valign: GstVideo.VideoAlignment, target: GstGL.GLTextureTarget, tex_format: GstGL.GLFormat): {
// javascript wrapper for 'gst_gl_video_allocation_params_new'
}
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for sysmem mappings of the texture
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for the texture
plane
(
Number
)
–
the video plane of v_info to allocate
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of the texture
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for the created textures
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for the created textures
a new GstGL.GLVideoAllocationParams for allocating GstGL.GLMemory's
Since : 1.8
GstGL.GLVideoAllocationParams.new
def GstGL.GLVideoAllocationParams.new (context, alloc_params, v_info, plane, valign, target, tex_format):
#python wrapper for 'gst_gl_video_allocation_params_new'
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for sysmem mappings of the texture
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for the texture
plane
(
int
)
–
the video plane of v_info to allocate
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of the texture
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for the created textures
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for the created textures
a new GstGL.GLVideoAllocationParams for allocating GstGL.GLMemory's
Since : 1.8
gst_gl_video_allocation_params_new_wrapped_data
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_data (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, guint plane, GstVideoAlignment * valign, GstGLTextureTarget target, GstGLFormat tex_format, gpointer wrapped_data, gpointer user_data, GDestroyNotify notify)
Parameters:
context
–
alloc_params
(
[allow-none]
)
–
the GstAllocationParams for wrapped_data
v_info
–
the GstVideoInfo for wrapped_data
plane
–
the video plane wrapped_data represents
valign
(
[allow-none]
)
–
any GstVideoAlignment applied to symem mappings of wrapped_data
target
–
the GstGLTextureTarget for wrapped_data
tex_format
–
the GstGLFormat for wrapped_data
wrapped_data
–
the data pointer to wrap
user_data
(
[allow-none]
)
–
user data to call notify with
notify
(
[allow-none]
)
–
a new GstGLVideoAllocationParams for wrapping wrapped_data
Since : 1.8
GstGL.GLVideoAllocationParams.prototype.new_wrapped_data
function GstGL.GLVideoAllocationParams.prototype.new_wrapped_data(context: GstGL.GLContext, alloc_params: Gst.AllocationParams, v_info: GstVideo.VideoInfo, plane: Number, valign: GstVideo.VideoAlignment, target: GstGL.GLTextureTarget, tex_format: GstGL.GLFormat, wrapped_data: Object, user_data: Object, notify: GLib.DestroyNotify): {
// javascript wrapper for 'gst_gl_video_allocation_params_new_wrapped_data'
}
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for wrapped_data
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for wrapped_data
plane
(
Number
)
–
the video plane wrapped_data represents
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of wrapped_data
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for wrapped_data
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for wrapped_data
wrapped_data
(
Object
)
–
the data pointer to wrap
user_data
(
Object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
a new GstGL.GLVideoAllocationParams for wrapping wrapped_data
Since : 1.8
GstGL.GLVideoAllocationParams.new_wrapped_data
def GstGL.GLVideoAllocationParams.new_wrapped_data (context, alloc_params, v_info, plane, valign, target, tex_format, wrapped_data, user_data, notify):
#python wrapper for 'gst_gl_video_allocation_params_new_wrapped_data'
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for wrapped_data
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for wrapped_data
plane
(
int
)
–
the video plane wrapped_data represents
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of wrapped_data
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for wrapped_data
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for wrapped_data
wrapped_data
(
object
)
–
the data pointer to wrap
user_data
(
object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
a new GstGL.GLVideoAllocationParams for wrapping wrapped_data
Since : 1.8
gst_gl_video_allocation_params_new_wrapped_gl_handle
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_gl_handle (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, guint plane, GstVideoAlignment * valign, GstGLTextureTarget target, GstGLFormat tex_format, gpointer gl_handle, gpointer user_data, GDestroyNotify notify)
gl_handle is defined by the specific OpenGL handle being wrapped For GstGLMemory and GstGLMemoryPBO it is an OpenGL texture id. Other memory types may define it to require a different type of parameter.
Parameters:
context
–
alloc_params
(
[allow-none]
)
–
the GstAllocationParams for tex_id
v_info
–
the GstVideoInfo for tex_id
plane
–
the video plane tex_id represents
valign
(
[allow-none]
)
–
any GstVideoAlignment applied to symem mappings of tex_id
target
–
the GstGLTextureTarget for tex_id
tex_format
–
the GstGLFormat for tex_id
gl_handle
–
the GL handle to wrap
user_data
(
[allow-none]
)
–
user data to call notify with
notify
(
[allow-none]
)
–
a new GstGLVideoAllocationParams for wrapping gl_handle
Since : 1.8
GstGL.GLVideoAllocationParams.prototype.new_wrapped_gl_handle
function GstGL.GLVideoAllocationParams.prototype.new_wrapped_gl_handle(context: GstGL.GLContext, alloc_params: Gst.AllocationParams, v_info: GstVideo.VideoInfo, plane: Number, valign: GstVideo.VideoAlignment, target: GstGL.GLTextureTarget, tex_format: GstGL.GLFormat, gl_handle: Object, user_data: Object, notify: GLib.DestroyNotify): {
// javascript wrapper for 'gst_gl_video_allocation_params_new_wrapped_gl_handle'
}
gl_handle is defined by the specific OpenGL handle being wrapped For GstGL.GLMemory and GstGL.GLMemoryPBO it is an OpenGL texture id. Other memory types may define it to require a different type of parameter.
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for tex_id
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for tex_id
plane
(
Number
)
–
the video plane tex_id represents
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of tex_id
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for tex_id
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for tex_id
gl_handle
(
Object
)
–
the GL handle to wrap
user_data
(
Object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
a new GstGL.GLVideoAllocationParams for wrapping gl_handle
Since : 1.8
GstGL.GLVideoAllocationParams.new_wrapped_gl_handle
def GstGL.GLVideoAllocationParams.new_wrapped_gl_handle (context, alloc_params, v_info, plane, valign, target, tex_format, gl_handle, user_data, notify):
#python wrapper for 'gst_gl_video_allocation_params_new_wrapped_gl_handle'
gl_handle is defined by the specific OpenGL handle being wrapped For GstGL.GLMemory and GstGL.GLMemoryPBO it is an OpenGL texture id. Other memory types may define it to require a different type of parameter.
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for tex_id
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for tex_id
plane
(
int
)
–
the video plane tex_id represents
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of tex_id
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for tex_id
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for tex_id
gl_handle
(
object
)
–
the GL handle to wrap
user_data
(
object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
a new GstGL.GLVideoAllocationParams for wrapping gl_handle
Since : 1.8
gst_gl_video_allocation_params_new_wrapped_texture
GstGLVideoAllocationParams * gst_gl_video_allocation_params_new_wrapped_texture (GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, guint plane, GstVideoAlignment * valign, GstGLTextureTarget target, GstGLFormat tex_format, guint tex_id, gpointer user_data, GDestroyNotify notify)
Parameters:
context
–
alloc_params
(
[allow-none]
)
–
the GstAllocationParams for tex_id
v_info
–
the GstVideoInfo for tex_id
plane
–
the video plane tex_id represents
valign
(
[allow-none]
)
–
any GstVideoAlignment applied to symem mappings of tex_id
target
–
the GstGLTextureTarget for tex_id
tex_format
–
the GstGLFormat for tex_id
tex_id
–
the GL texture to wrap
user_data
(
[allow-none]
)
–
user data to call notify with
notify
(
[allow-none]
)
–
a new GstGLVideoAllocationParams for wrapping tex_id
Since : 1.8
GstGL.GLVideoAllocationParams.prototype.new_wrapped_texture
function GstGL.GLVideoAllocationParams.prototype.new_wrapped_texture(context: GstGL.GLContext, alloc_params: Gst.AllocationParams, v_info: GstVideo.VideoInfo, plane: Number, valign: GstVideo.VideoAlignment, target: GstGL.GLTextureTarget, tex_format: GstGL.GLFormat, tex_id: Number, user_data: Object, notify: GLib.DestroyNotify): {
// javascript wrapper for 'gst_gl_video_allocation_params_new_wrapped_texture'
}
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for tex_id
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for tex_id
plane
(
Number
)
–
the video plane tex_id represents
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of tex_id
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for tex_id
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for tex_id
tex_id
(
Number
)
–
the GL texture to wrap
user_data
(
Object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
a new GstGL.GLVideoAllocationParams for wrapping tex_id
Since : 1.8
GstGL.GLVideoAllocationParams.new_wrapped_texture
def GstGL.GLVideoAllocationParams.new_wrapped_texture (context, alloc_params, v_info, plane, valign, target, tex_format, tex_id, user_data, notify):
#python wrapper for 'gst_gl_video_allocation_params_new_wrapped_texture'
Parameters:
context
(
GstGL.GLContext
)
–
alloc_params
(
Gst.AllocationParams
)
–
the Gst.AllocationParams for tex_id
v_info
(
GstVideo.VideoInfo
)
–
the GstVideo.VideoInfo for tex_id
plane
(
int
)
–
the video plane tex_id represents
valign
(
GstVideo.VideoAlignment
)
–
any GstVideo.VideoAlignment applied to symem mappings of tex_id
target
(
GstGL.GLTextureTarget
)
–
the GstGL.GLTextureTarget for tex_id
tex_format
(
GstGL.GLFormat
)
–
the GstGL.GLFormat for tex_id
tex_id
(
int
)
–
the GL texture to wrap
user_data
(
object
)
–
user data to call notify with
notify
(
GLib.DestroyNotify
)
–
a new GstGL.GLVideoAllocationParams for wrapping tex_id
Since : 1.8
Methods
gst_gl_video_allocation_params_copy_data
gst_gl_video_allocation_params_copy_data (GstGLVideoAllocationParams * src_vid, GstGLVideoAllocationParams * dest_vid)
Copy and set any dynamically allocated resources in dest_vid. Intended for subclass usage only to chain up at the end of a subclass copy function.
Parameters:
src_vid
–
source GstGLVideoAllocationParams to copy from
dest_vid
–
destination GstGLVideoAllocationParams to copy into
Since : 1.8
GstGL.GLVideoAllocationParams.prototype.copy_data
function GstGL.GLVideoAllocationParams.prototype.copy_data(dest_vid: GstGL.GLVideoAllocationParams): {
// javascript wrapper for 'gst_gl_video_allocation_params_copy_data'
}
Copy and set any dynamically allocated resources in dest_vid. Intended for subclass usage only to chain up at the end of a subclass copy function.
Parameters:
src_vid
(
GstGL.GLVideoAllocationParams
)
–
source GstGL.GLVideoAllocationParams to copy from
dest_vid
(
GstGL.GLVideoAllocationParams
)
–
destination GstGL.GLVideoAllocationParams to copy into
Since : 1.8
GstGL.GLVideoAllocationParams.copy_data
def GstGL.GLVideoAllocationParams.copy_data (self, dest_vid):
#python wrapper for 'gst_gl_video_allocation_params_copy_data'
Copy and set any dynamically allocated resources in dest_vid. Intended for subclass usage only to chain up at the end of a subclass copy function.
Parameters:
src_vid
(
GstGL.GLVideoAllocationParams
)
–
source GstGL.GLVideoAllocationParams to copy from
dest_vid
(
GstGL.GLVideoAllocationParams
)
–
destination GstGL.GLVideoAllocationParams to copy into
Since : 1.8
gst_gl_video_allocation_params_free_data
gst_gl_video_allocation_params_free_data (GstGLVideoAllocationParams * params)
Unset and free any dynamically allocated resources. Intended for subclass usage only to chain up at the end of a subclass free function.
Parameters:
params
–
Since : 1.8
GstGL.GLVideoAllocationParams.prototype.free_data
function GstGL.GLVideoAllocationParams.prototype.free_data(): {
// javascript wrapper for 'gst_gl_video_allocation_params_free_data'
}
Unset and free any dynamically allocated resources. Intended for subclass usage only to chain up at the end of a subclass free function.
Parameters:
params
(
GstGL.GLVideoAllocationParams
)
–
Since : 1.8
GstGL.GLVideoAllocationParams.free_data
def GstGL.GLVideoAllocationParams.free_data (self):
#python wrapper for 'gst_gl_video_allocation_params_free_data'
Unset and free any dynamically allocated resources. Intended for subclass usage only to chain up at the end of a subclass free function.
Parameters:
params
(
GstGL.GLVideoAllocationParams
)
–
Since : 1.8
gst_gl_video_allocation_params_init_full
gboolean gst_gl_video_allocation_params_init_full (GstGLVideoAllocationParams * params, gsize struct_size, guint alloc_flags, GstGLAllocationParamsCopyFunc copy, GstGLAllocationParamsFreeFunc free, GstGLContext * context, GstAllocationParams * alloc_params, GstVideoInfo * v_info, guint plane, GstVideoAlignment * valign, GstGLTextureTarget target, GstGLFormat tex_format, gpointer wrapped_data, gpointer gl_handle, gpointer user_data, GDestroyNotify notify)
Intended for subclass usage
Parameters:
params
–
a GstGLVideoAllocationParams to initialize
struct_size
–
the size of the struct in params
alloc_flags
–
some allocation flags
copy
–
a copy function
free
–
a free function
context
–
alloc_params
(
[allow-none]
)
–
the GstAllocationParams for wrapped_data
v_info
–
the GstVideoInfo for wrapped_data
plane
–
the video plane wrapped_data represents
valign
(
[allow-none]
)
–
any GstVideoAlignment applied to symem mappings of wrapped_data
target
–
tex_format
–
the GstGLFormat
wrapped_data
(
[allow-none]
)
–
the optional data pointer to wrap
gl_handle
–
the optional OpenGL handle to wrap or 0
user_data
(
[allow-none]
)
–
user data to call notify with
notify
(
[allow-none]
)
–
initializes params with the parameters specified
Since : 1.8
Functions
gst_is_gl_memory
gboolean gst_is_gl_memory (GstMemory * mem)
Parameters:
mem
–
whether the memory at mem is a GstGLMemory
Since : 1.4
GstGL.prototype.is_gl_memory
function GstGL.prototype.is_gl_memory(mem: Gst.Memory): {
// javascript wrapper for 'gst_is_gl_memory'
}
Parameters:
mem
(
Gst.Memory
)
–
whether the memory at mem is a GstGL.GLMemory
Since : 1.4
GstGL.is_gl_memory
def GstGL.is_gl_memory (mem):
#python wrapper for 'gst_is_gl_memory'
Parameters:
mem
(
Gst.Memory
)
–
whether the memory at mem is a GstGL.GLMemory
Since : 1.4
Function Macros
GST_GL_MEMORY_ALLOCATOR_CAST
#define GST_GL_MEMORY_ALLOCATOR_CAST(obj) ((GstGLMemoryAllocator *)(obj))
GST_GL_MEMORY_CAST
#define GST_GL_MEMORY_CAST(obj) ((GstGLMemory *) obj)
Constants
GST_CAPS_FEATURE_MEMORY_GL_MEMORY
#define GST_CAPS_FEATURE_MEMORY_GL_MEMORY "memory:GLMemory"
Name of the caps feature for indicating the use of GstGLMemory
GstGL.CAPS_FEATURE_MEMORY_GL_MEMORY
Name of the caps feature for indicating the use of GstGL.GLMemory
GstGL.CAPS_FEATURE_MEMORY_GL_MEMORY
Name of the caps feature for indicating the use of GstGL.GLMemory
GST_GL_ALLOCATION_PARAMS_ALLOC_FLAG_VIDEO
#define GST_GL_ALLOCATION_PARAMS_ALLOC_FLAG_VIDEO (1 << 3)
GL allocation flag indicating the allocation of 2D video frames
GstGL.GL_ALLOCATION_PARAMS_ALLOC_FLAG_VIDEO
GL allocation flag indicating the allocation of 2D video frames
GstGL.GL_ALLOCATION_PARAMS_ALLOC_FLAG_VIDEO
GL allocation flag indicating the allocation of 2D video frames
GST_GL_MEMORY_ALLOCATOR_NAME
#define GST_GL_MEMORY_ALLOCATOR_NAME "GLMemory"
The name of the GL memory allocator
GstGL.GL_MEMORY_ALLOCATOR_NAME
The name of the GL memory allocator
GstGL.GL_MEMORY_ALLOCATOR_NAME
The name of the GL memory allocator
GST_GL_MEMORY_VIDEO_EXT_FORMATS
#define GST_GL_MEMORY_VIDEO_EXT_FORMATS \ ", BGR10A2_LE, RGB10A2_LE, P010_10LE, P012_LE, P016_LE, Y212_LE, Y412_LE"
GST_GL_MEMORY_VIDEO_FORMATS_STR
#define GST_GL_MEMORY_VIDEO_FORMATS_STR \ "{ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, RGB, BGR, RGB16, BGR16, " \ "AYUV, VUYA, Y410, I420, YV12, NV12, NV21, NV16, NV61, YUY2, UYVY, Y210, Y41B, " \ "Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE, ARGB64" \ GST_GL_MEMORY_VIDEO_EXT_FORMATS "}"
List of video formats that are supported by GstGLMemory
GST_TYPE_GL_VIDEO_ALLOCATION_PARAMS
#define GST_TYPE_GL_VIDEO_ALLOCATION_PARAMS (gst_gl_video_allocation_params_get_type())
The results of the search are