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) –
No description available
unpack_length (guint) –
No description available
tex_width (guint) –
No description available

GstGL.GLMemory

Represents information about a GL texture

Members

mem (GstGL.GLBaseMemory) –

the parent GstGL.GLBaseMemory object

tex_id (Number) –

the GL texture id for this memory

tex_target (GstGL.GLTextureTarget) –

the GL texture target for this memory

tex_format (GstGL.GLFormat) –

the texture type

info (GstVideo.VideoInfo) –

the texture's GstVideo.VideoInfo

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) –
No description available
unpack_length (Number) –
No description available
tex_width (Number) –
No description available

GstGL.GLMemory

Represents information about a GL texture

Members

mem (GstGL.GLBaseMemory) –

the parent GstGL.GLBaseMemory object

tex_id (int) –

the GL texture id for this memory

tex_target (GstGL.GLTextureTarget) –

the GL texture target for this memory

tex_format (GstGL.GLFormat) –

the texture type

info (GstVideo.VideoInfo) –

the texture's GstVideo.VideoInfo

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) –
No description available
unpack_length (int) –
No description available
tex_width (int) –
No description available

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

a GstGLMemory

tex_id

OpenGL texture id

target

the GstGLTextureTarget

tex_format

the GstGLFormat

width

width of tex_id

height

height of tex_id

Returns

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:

tex_id (Number)

OpenGL texture id

tex_format (GstGL.GLFormat)

the GstGL.GLFormat

width (Number)

width of tex_id

height (Number)

height of tex_id

Returns (Number)

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:

tex_id (int)

OpenGL texture id

tex_format (GstGL.GLFormat)

the GstGL.GLFormat

width (int)

width of tex_id

height (int)

height of tex_id

Returns (bool)

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

Returns

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

Returns (Number)

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

Returns (bool)

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

a GstGLMemory

Returns

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:

Returns (GstGL.GLFormat)

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:

Returns (GstGL.GLFormat)

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

a GstGLMemory

Returns

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:

Returns (Number)

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:

Returns (int)

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

a GstGLMemory

Returns

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:

Returns (Number)

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:

Returns (int)

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

a GstGLMemory

Returns

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:

Returns (GstGL.GLTextureTarget)

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:

Returns (GstGL.GLTextureTarget)

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

a GstGLMemory

Returns

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:

Returns (Number)

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:

Returns (int)

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,
                    const GstAllocationParams * params,
                    const GstVideoInfo * info,
                    guint plane,
                    const 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])

a GDestroyNotify

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

tex_format (GstGL.GLFormat)

the GstGL.GLFormat for this GstGL.GLMemory

params (Gst.AllocationParams)

the GstAllocationParams to initialize with

plane (Number)

the plane number (starting from 0) for this GstGL.GLMemory

optional GstVideo.VideoAlignment parameters

user_data (Object)

user data to call notify with

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

tex_format (GstGL.GLFormat)

the GstGL.GLFormat for this GstGL.GLMemory

params (Gst.AllocationParams)

the GstAllocationParams to initialize with

plane (int)

the plane number (starting from 0) for this GstGL.GLMemory

optional GstVideo.VideoAlignment parameters

user_data (object)

user data to call notify with

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.

Parameters:

gl_mem

a GstGLMemory

write_pointer

the data pointer to pass to glReadPixels

Returns

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:

write_pointer (Object)

the data pointer to pass to glReadPixels

Returns (Number)

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:

write_pointer (object)

the data pointer to pass to glReadPixels

Returns (bool)

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.

Parameters:

gl_mem

a GstGLMemory

read_pointer

the data pointer to pass to glTexSubImage

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:

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:

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

Returns

whether the buffer was correctly setup

Since : 1.8


GstGLMemoryAllocator

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstAllocator
                ╰──GstGLBaseMemoryAllocator
                    ╰──GstGLMemoryAllocator
                        ╰──GstGLMemoryPBOAllocator

Opaque GstGLMemoryAllocator struct


Class structure

GstGLMemoryAllocatorClass

Fields

provide a custom map implementation

provide a custom copy implementation

provide a custom unmap implementation


GstGL.GLMemoryAllocatorClass

Attributes

provide a custom map implementation

provide a custom copy implementation

provide a custom unmap implementation


GstGL.GLMemoryAllocatorClass

Attributes

provide a custom map implementation

provide a custom copy implementation

provide a custom unmap implementation


GstGL.GLMemoryAllocator

GObject.Object
    ╰──GObject.InitiallyUnowned
        ╰──Gst.Object
            ╰──Gst.Allocator
                ╰──GstGL.GLBaseMemoryAllocator
                    ╰──GstGL.GLMemoryAllocator
                        ╰──GstGL.GLMemoryPBOAllocator

Opaque GstGL.GLMemoryAllocator struct


GstGL.GLMemoryAllocator

GObject.Object
    ╰──GObject.InitiallyUnowned
        ╰──Gst.Object
            ╰──Gst.Allocator
                ╰──GstGL.GLBaseMemoryAllocator
                    ╰──GstGL.GLMemoryAllocator
                        ╰──GstGL.GLMemoryPBOAllocator

Opaque GstGL.GLMemoryAllocator struct


Functions

gst_gl_memory_allocator_get_default

GstGLMemoryAllocator *
gst_gl_memory_allocator_get_default (GstGLContext * context)

Parameters:

context

a GstGLContext

Returns ( [transfer: full])

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:

Returns (GstGL.GLMemoryAllocator)

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:

Returns (GstGL.GLMemoryAllocator)

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


GstGL.GLVideoAllocationParams

Members

the parent GstGL.GLAllocationParams structure

v_info (GstVideo.VideoInfo) –

the GstVideo.VideoInfo to allocate

plane (Number) –

the video plane index to allocate

the GstVideo.VideoAlignment to align the system representation to (may be null for the default)

target (GstGL.GLTextureTarget) –

the GstGL.GLTextureTarget to allocate

tex_format (GstGL.GLFormat) –

the GstGL.GLFormat to allocate


GstGL.GLVideoAllocationParams

Members

the parent GstGL.GLAllocationParams structure

v_info (GstVideo.VideoInfo) –

the GstVideo.VideoInfo to allocate

plane (int) –

the video plane index to allocate

the GstVideo.VideoAlignment to align the system representation to (may be None for the default)

target (GstGL.GLTextureTarget) –

the GstGL.GLTextureTarget to allocate

tex_format (GstGL.GLFormat) –

the GstGL.GLFormat to allocate


Constructors

gst_gl_video_allocation_params_new

GstGLVideoAllocationParams *
gst_gl_video_allocation_params_new (GstGLContext * context,
                                    const GstAllocationParams * alloc_params,
                                    const GstVideoInfo * v_info,
                                    guint plane,
                                    const GstVideoAlignment * valign,
                                    GstGLTextureTarget target,
                                    GstGLFormat tex_format)

Parameters:

context

a GstGLContext

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

Returns

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:

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

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

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:

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

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

Since : 1.8


gst_gl_video_allocation_params_new_wrapped_data

GstGLVideoAllocationParams *
gst_gl_video_allocation_params_new_wrapped_data (GstGLContext * context,
                                                 const GstAllocationParams * alloc_params,
                                                 const GstVideoInfo * v_info,
                                                 guint plane,
                                                 const GstVideoAlignment * valign,
                                                 GstGLTextureTarget target,
                                                 GstGLFormat tex_format,
                                                 gpointer wrapped_data,
                                                 gpointer user_data,
                                                 GDestroyNotify notify)

Parameters:

context

a GstGLContext

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 GDestroyNotify

Returns

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:

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

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

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:

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

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

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,
                                                      const GstAllocationParams * alloc_params,
                                                      const GstVideoInfo * v_info,
                                                      guint plane,
                                                      const 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

a GstGLContext

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 GDestroyNotify

Returns

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:

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

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

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:

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

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

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,
                                                    const GstAllocationParams * alloc_params,
                                                    const GstVideoInfo * v_info,
                                                    guint plane,
                                                    const GstVideoAlignment * valign,
                                                    GstGLTextureTarget target,
                                                    GstGLFormat tex_format,
                                                    guint tex_id,
                                                    gpointer user_data,
                                                    GDestroyNotify notify)

Parameters:

context

a GstGLContext

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 GDestroyNotify

Returns

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:

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

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

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:

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

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

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:

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:

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:

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.

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.

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,
                                          const GstAllocationParams * alloc_params,
                                          const GstVideoInfo * v_info,
                                          guint plane,
                                          const 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

a GstGLContext

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

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])

a GDestroyNotify

Returns

initializes params with the parameters specified

Since : 1.8


Functions

gst_is_gl_memory

gboolean
gst_is_gl_memory (GstMemory * mem)

Parameters:

mem

a GstMemory

Returns

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)

a Gst.Memory

Returns (Number)

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)

a Gst.Memory

Returns (bool)

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 \
    ", RGBA64_LE, BGR10A2_LE, RGB10A2_LE, P010_10LE, P012_LE, P016_LE, Y212_LE, Y412_LE" \
    ", A444_16LE, A422_16LE, A420_16LE, A444_12LE, A422_12LE, A420_12LE, A420_10LE" \
    ", A422_10LE, A444_10LE, I420_12LE, I420_10LE"

GST_GL_MEMORY_VIDEO_FORMATS_STR

#define GST_GL_MEMORY_VIDEO_FORMATS_STR \
    "{ RGBA, BGRA, RGBx, BGRx, ARGB, ABGR, xRGB, xBGR, GBRA, GBR, RGBP, BGRP, RGB, BGR, RGB16, BGR16, " \
    "AYUV, VUYA, A444, A422, Y410, I420, YV12, NV12, NV21, NV16, NV61, YUY2, UYVY, Y210, Y41B, " \
    "Y42B, Y444, GRAY8, GRAY16_LE, GRAY16_BE, ARGB64, A420, AV12, NV12_16L32S, NV12_4L4, RBGA" \
    GST_GL_MEMORY_VIDEO_EXT_FORMATS "}"

List of video formats that are supported by GstGLMemory


GstGL.GL_MEMORY_VIDEO_FORMATS_STR

List of video formats that are supported by GstGL.GLMemory


GstGL.GL_MEMORY_VIDEO_FORMATS_STR

List of video formats that are supported by GstGL.GLMemory


GST_TYPE_GL_MEMORY

#define GST_TYPE_GL_MEMORY (gst_gl_memory_get_type())

Since : 1.20

deprecated : 1.22: This type has no use.


The results of the search are