# GstMeta for video

## GstVideoCropMeta

Extra buffer metadata describing image cropping.

### Members

`meta` (GstMeta) –

parent GstMeta

`x` (guint) –

the horizontal offset

`y` (guint) –

the vertical offset

`width` (guint) –

the cropped width

`height` (guint) –

the cropped height

## GstVideo.VideoCropMeta

Extra buffer metadata describing image cropping.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`x` (Number) –

the horizontal offset

`y` (Number) –

the vertical offset

`width` (Number) –

the cropped width

`height` (Number) –

the cropped height

## GstVideo.VideoCropMeta

Extra buffer metadata describing image cropping.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`x` (int) –

the horizontal offset

`y` (int) –

the vertical offset

`width` (int) –

the cropped width

`height` (int) –

the cropped height

### Functions

#### gst_video_crop_meta_get_info

    const GstMetaInfo *
    gst_video_crop_meta_get_info ()

Returns –
No description available

#### GstVideo.prototype.video_crop_meta_get_info

    function GstVideo.prototype.video_crop_meta_get_info(): {
        // javascript wrapper for 'gst_video_crop_meta_get_info'
    }

Returns (Gst.MetaInfo) –
No description available

#### GstVideo.video_crop_meta_get_info

    def GstVideo.video_crop_meta_get_info ():
        #python wrapper for 'gst_video_crop_meta_get_info'

Returns (Gst.MetaInfo) –
No description available

## GstVideoGLTextureUploadMeta

Extra buffer metadata for uploading a buffer to an OpenGL texture ID. The caller of gst_video_gl_texture_upload_meta_upload must have OpenGL set up and call this from a thread where it is valid to upload something to an OpenGL texture.

### Members

`meta` (GstMeta) –

parent GstMeta

`texture_orientation` (GstVideoGLTextureOrientation) –

Orientation of the textures

`n_textures` (guint) –

Number of textures that are generated

`texture_type` (GstVideoGLTextureType *) –

Type of each texture

## GstVideo.VideoGLTextureUploadMeta

Extra buffer metadata for uploading a buffer to an OpenGL texture ID. The caller of GstVideo.VideoGLTextureUploadMeta.prototype.upload must have OpenGL set up and call this from a thread where it is valid to upload something to an OpenGL texture.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`texture_orientation` (GstVideo.VideoGLTextureOrientation) –

Orientation of the textures

`n_textures` (Number) –

Number of textures that are generated

`texture_type` ([ GstVideo.VideoGLTextureType ]) –

Type of each texture

## GstVideo.VideoGLTextureUploadMeta

Extra buffer metadata for uploading a buffer to an OpenGL texture ID. The caller of GstVideo.VideoGLTextureUploadMeta.upload must have OpenGL set up and call this from a thread where it is valid to upload something to an OpenGL texture.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`texture_orientation` (GstVideo.VideoGLTextureOrientation) –

Orientation of the textures

`n_textures` (int) –

Number of textures that are generated

`texture_type` ([ GstVideo.VideoGLTextureType ]) –

Type of each texture

### Methods

#### gst_video_gl_texture_upload_meta_upload

    gboolean
    gst_video_gl_texture_upload_meta_upload (GstVideoGLTextureUploadMeta * meta,
                                             guint * texture_id)

Uploads the buffer which owns the meta to a specific texture ID.

Parameters:

`meta` –

a GstVideoGLTextureUploadMeta

`texture_id` –

the texture IDs to upload to

Returns –

TRUE if uploading succeeded, FALSE otherwise.

#### GstVideo.VideoGLTextureUploadMeta.prototype.upload

    function GstVideo.VideoGLTextureUploadMeta.prototype.upload(texture_id: Number): {
        // javascript wrapper for 'gst_video_gl_texture_upload_meta_upload'
    }

Uploads the buffer which owns the meta to a specific texture ID.

Parameters:

`meta` (GstVideo.VideoGLTextureUploadMeta) –

a GstVideo.VideoGLTextureUploadMeta

`texture_id` (Number) –

the texture IDs to upload to

Returns (Number) –

true if uploading succeeded, false otherwise.

#### GstVideo.VideoGLTextureUploadMeta.upload

    def GstVideo.VideoGLTextureUploadMeta.upload (self, texture_id):
        #python wrapper for 'gst_video_gl_texture_upload_meta_upload'

Uploads the buffer which owns the meta to a specific texture ID.

Parameters:

`meta` (GstVideo.VideoGLTextureUploadMeta) –

a GstVideo.VideoGLTextureUploadMeta

`texture_id` (int) –

the texture IDs to upload to

Returns (bool) –

True if uploading succeeded, False otherwise.

### Functions

#### gst_video_gl_texture_upload_meta_get_info

    const GstMetaInfo *
    gst_video_gl_texture_upload_meta_get_info ()

Returns –
No description available

#### GstVideo.prototype.video_gl_texture_upload_meta_get_info

    function GstVideo.prototype.video_gl_texture_upload_meta_get_info(): {
        // javascript wrapper for 'gst_video_gl_texture_upload_meta_get_info'
    }

Returns (Gst.MetaInfo) –
No description available

#### GstVideo.video_gl_texture_upload_meta_get_info

    def GstVideo.video_gl_texture_upload_meta_get_info ():
        #python wrapper for 'gst_video_gl_texture_upload_meta_get_info'

Returns (Gst.MetaInfo) –
No description available

## GstVideoMeta

Extra buffer metadata describing image properties

This meta can also be used by downstream elements to specifiy their buffer layout requirements for upstream. Upstream should try to fit those requirements, if possible, in order to prevent buffer copies.

This is done by passing a custom GstStructure to gst_query_add_allocation_meta when handling the ALLOCATION query. This structure should be named 'video-meta' and can have the following fields:

- padding-top (uint): extra pixels on the top
- padding-bottom (uint): extra pixels on the bottom
- padding-left (uint): extra pixels on the left side
- padding-right (uint): extra pixels on the right side The padding fields have the same semantic as alignment and so represent the paddings requested on produced video buffers.

Since 1.24 it can be serialized using gst_meta_serialize and gst_meta_deserialize.

### Members

`meta` (GstMeta) –

parent GstMeta

`buffer` (GstBuffer *) –

the buffer this metadata belongs to

`flags` (GstVideoFrameFlags) –

additional video flags

`format` (GstVideoFormat) –

the video format

`id` (gint) –

identifier of the frame

`width` (guint) –

the video width

`height` (guint) –

the video height

`n_planes` (guint) –

the number of planes in the image

`offset` (gsize *) –

array of offsets for the planes. This field might not always be valid, it is used by the default implementation of map.

`stride` (gint *) –

array of strides for the planes. This field might not always be valid, it is used by the default implementation of map.

`alignment` (GstVideoAlignment) –

the paddings and alignment constraints of the video buffer. It is up to the caller of `gst_buffer_add_video_meta_full()` to set it using gst_video_meta_set_alignment, if they did not it defaults to no padding and no alignment. Since: 1.18

## GstVideo.VideoMeta

Extra buffer metadata describing image properties

This meta can also be used by downstream elements to specifiy their buffer layout requirements for upstream. Upstream should try to fit those requirements, if possible, in order to prevent buffer copies.

This is done by passing a custom Gst.Structure to Gst.Query.prototype.add_allocation_meta when handling the ALLOCATION query. This structure should be named 'video-meta' and can have the following fields:

- padding-top (uint): extra pixels on the top
- padding-bottom (uint): extra pixels on the bottom
- padding-left (uint): extra pixels on the left side
- padding-right (uint): extra pixels on the right side The padding fields have the same semantic as alignment and so represent the paddings requested on produced video buffers.

Since 1.24 it can be serialized using Gst.Meta.prototype.serialize and Gst.prototype.meta_deserialize.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`buffer` (Gst.Buffer) –

the buffer this metadata belongs to

`flags` (GstVideo.VideoFrameFlags) –

additional video flags

`format` (GstVideo.VideoFormat) –

the video format

`id` (Number) –

identifier of the frame

`width` (Number) –

the video width

`height` (Number) –

the video height

`n_planes` (Number) –

the number of planes in the image

`offset` ([ Number ]) –

array of offsets for the planes. This field might not always be valid, it is used by the default implementation of map.

`stride` ([ Number ]) –

array of strides for the planes. This field might not always be valid, it is used by the default implementation of map.

`alignment` (GstVideo.VideoAlignment) –

the paddings and alignment constraints of the video buffer. It is up to the caller of `gst_buffer_add_video_meta_full()` to set it using GstVideo.VideoMeta.prototype.set_alignment, if they did not it defaults to no padding and no alignment. Since: 1.18

## GstVideo.VideoMeta

Extra buffer metadata describing image properties

This meta can also be used by downstream elements to specifiy their buffer layout requirements for upstream. Upstream should try to fit those requirements, if possible, in order to prevent buffer copies.

This is done by passing a custom Gst.Structure to Gst.Query.add_allocation_meta when handling the ALLOCATION query. This structure should be named 'video-meta' and can have the following fields:

- padding-top (uint): extra pixels on the top
- padding-bottom (uint): extra pixels on the bottom
- padding-left (uint): extra pixels on the left side
- padding-right (uint): extra pixels on the right side The padding fields have the same semantic as alignment and so represent the paddings requested on produced video buffers.

Since 1.24 it can be serialized using Gst.Meta.serialize and Gst.meta_deserialize.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`buffer` (Gst.Buffer) –

the buffer this metadata belongs to

`flags` (GstVideo.VideoFrameFlags) –

additional video flags

`format` (GstVideo.VideoFormat) –

the video format

`id` (int) –

identifier of the frame

`width` (int) –

the video width

`height` (int) –

the video height

`n_planes` (int) –

the number of planes in the image

`offset` ([ int ]) –

array of offsets for the planes. This field might not always be valid, it is used by the default implementation of map.

`stride` ([ int ]) –

array of strides for the planes. This field might not always be valid, it is used by the default implementation of map.

`alignment` (GstVideo.VideoAlignment) –

the paddings and alignment constraints of the video buffer. It is up to the caller of `gst_buffer_add_video_meta_full()` to set it using GstVideo.VideoMeta.set_alignment, if they did not it defaults to no padding and no alignment. Since: 1.18

### Methods

#### gst_video_meta_get_plane_height

    gboolean
    gst_video_meta_get_plane_height (GstVideoMeta * meta,
                                     guint * plane_height)

Compute the padded height of each plane from meta (padded size divided by stride).

It is not valid to call this function with a meta associated to a TILED video format.

Parameters:

`meta` –

a GstVideoMeta

`plane_height` ( [out][arrayfixed-size=4]) –

array used to store the plane height

Returns –

TRUE if meta's alignment is valid and plane_height has been updated, FALSE otherwise

Since : 1.18

#### GstVideo.VideoMeta.prototype.get_plane_height

    function GstVideo.VideoMeta.prototype.get_plane_height(): {
        // javascript wrapper for 'gst_video_meta_get_plane_height'
    }

Compute the padded height of each plane from meta (padded size divided by stride).

It is not valid to call this function with a meta associated to a TILED video format.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

Returns a tuple made of:

(Number ) –

true if meta's alignment is valid and plane_height has been updated, false otherwise

`plane_height` ([ Number ] ) –

true if meta's alignment is valid and plane_height has been updated, false otherwise

Since : 1.18

#### GstVideo.VideoMeta.get_plane_height

    def GstVideo.VideoMeta.get_plane_height (self):
        #python wrapper for 'gst_video_meta_get_plane_height'

Compute the padded height of each plane from meta (padded size divided by stride).

It is not valid to call this function with a meta associated to a TILED video format.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

Returns a tuple made of:

(bool ) –

True if meta's alignment is valid and plane_height has been updated, False otherwise

`plane_height` ([ int ] ) –

True if meta's alignment is valid and plane_height has been updated, False otherwise

Since : 1.18

#### gst_video_meta_get_plane_size

    gboolean
    gst_video_meta_get_plane_size (GstVideoMeta * meta,
                                   gsize * plane_size)

Compute the size, in bytes, of each video plane described in meta including any padding and alignment constraint defined in meta->alignment.

Parameters:

`meta` –

a GstVideoMeta

`plane_size` ( [out][arrayfixed-size=4]) –

array used to store the plane sizes

Returns –

TRUE if meta's alignment is valid and plane_size has been updated, FALSE otherwise

Since : 1.18

#### GstVideo.VideoMeta.prototype.get_plane_size

    function GstVideo.VideoMeta.prototype.get_plane_size(): {
        // javascript wrapper for 'gst_video_meta_get_plane_size'
    }

Compute the size, in bytes, of each video plane described in meta including any padding and alignment constraint defined in meta->alignment.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

Returns a tuple made of:

(Number ) –

true if meta's alignment is valid and plane_size has been updated, false otherwise

`plane_size` ([ Number ] ) –

true if meta's alignment is valid and plane_size has been updated, false otherwise

Since : 1.18

#### GstVideo.VideoMeta.get_plane_size

    def GstVideo.VideoMeta.get_plane_size (self):
        #python wrapper for 'gst_video_meta_get_plane_size'

Compute the size, in bytes, of each video plane described in meta including any padding and alignment constraint defined in meta->alignment.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

Returns a tuple made of:

(bool ) –

True if meta's alignment is valid and plane_size has been updated, False otherwise

`plane_size` ([ int ] ) –

True if meta's alignment is valid and plane_size has been updated, False otherwise

Since : 1.18

#### gst_video_meta_map

    gboolean
    gst_video_meta_map (GstVideoMeta * meta,
                        guint plane,
                        GstMapInfo * info,
                        gpointer * data,
                        gint * stride,
                        GstMapFlags flags)

Map the video plane with index plane in meta and return a pointer to the first byte of the plane and the stride of the plane.

Parameters:

`meta` –

a GstVideoMeta

`plane` –

a plane

`info` –

a GstMapInfo

`data` ( [out]) –

the data of plane

`stride` ( [out]) –

the stride of plane

`flags` –

GstMapFlags

Returns –

TRUE if the map operation was successful.

#### GstVideo.VideoMeta.prototype.map

    function GstVideo.VideoMeta.prototype.map(plane: Number, info: Gst.MapInfo, flags: Gst.MapFlags): {
        // javascript wrapper for 'gst_video_meta_map'
    }

Map the video plane with index plane in meta and return a pointer to the first byte of the plane and the stride of the plane.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

`plane` (Number) –

a plane

`info` (Gst.MapInfo) –

a Gst.MapInfo

`flags` (Gst.MapFlags) –

GstMapFlags

Returns a tuple made of:

(Number ) –

TRUE if the map operation was successful.

`data` (Object ) –

TRUE if the map operation was successful.

`stride` (Number ) –

TRUE if the map operation was successful.

#### GstVideo.VideoMeta.map

    def GstVideo.VideoMeta.map (self, plane, info, flags):
        #python wrapper for 'gst_video_meta_map'

Map the video plane with index plane in meta and return a pointer to the first byte of the plane and the stride of the plane.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

`plane` (int) –

a plane

`info` (Gst.MapInfo) –

a Gst.MapInfo

`flags` (Gst.MapFlags) –

GstMapFlags

Returns a tuple made of:

(bool ) –

TRUE if the map operation was successful.

`data` (object ) –

TRUE if the map operation was successful.

`stride` (int ) –

TRUE if the map operation was successful.

#### gst_video_meta_set_alignment

    gboolean
    gst_video_meta_set_alignment (GstVideoMeta * meta,
                                  GstVideoAlignment alignment)

Set the alignment of meta to alignment. This function checks that the paddings defined in alignment are compatible with the strides defined in meta and will fail to update if they are not.

Parameters:

`meta` –

a GstVideoMeta

`alignment` –

a GstVideoAlignment

Returns –

TRUE if alignment's meta has been updated, FALSE if not

Since : 1.18

#### GstVideo.VideoMeta.prototype.set_alignment

    function GstVideo.VideoMeta.prototype.set_alignment(alignment: GstVideo.VideoAlignment): {
        // javascript wrapper for 'gst_video_meta_set_alignment'
    }

Set the alignment of meta to alignment. This function checks that the paddings defined in alignment are compatible with the strides defined in meta and will fail to update if they are not.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

`alignment` (GstVideo.VideoAlignment) –

a GstVideo.VideoAlignment

Returns (Number) –

true if alignment's meta has been updated, false if not

Since : 1.18

#### GstVideo.VideoMeta.set_alignment

    def GstVideo.VideoMeta.set_alignment (self, alignment):
        #python wrapper for 'gst_video_meta_set_alignment'

Set the alignment of meta to alignment. This function checks that the paddings defined in alignment are compatible with the strides defined in meta and will fail to update if they are not.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

`alignment` (GstVideo.VideoAlignment) –

a GstVideo.VideoAlignment

Returns (bool) –

True if alignment's meta has been updated, False if not

Since : 1.18

#### gst_video_meta_unmap

    gboolean
    gst_video_meta_unmap (GstVideoMeta * meta,
                          guint plane,
                          GstMapInfo * info)

Unmap a previously mapped plane with gst_video_meta_map.

Parameters:

`meta` –

a GstVideoMeta

`plane` –

a plane

`info` –

a GstMapInfo

Returns –

TRUE if the memory was successfully unmapped.

#### GstVideo.VideoMeta.prototype.unmap

    function GstVideo.VideoMeta.prototype.unmap(plane: Number, info: Gst.MapInfo): {
        // javascript wrapper for 'gst_video_meta_unmap'
    }

Unmap a previously mapped plane with GstVideo.VideoMeta.prototype.map.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

`plane` (Number) –

a plane

`info` (Gst.MapInfo) –

a Gst.MapInfo

Returns (Number) –

TRUE if the memory was successfully unmapped.

#### GstVideo.VideoMeta.unmap

    def GstVideo.VideoMeta.unmap (self, plane, info):
        #python wrapper for 'gst_video_meta_unmap'

Unmap a previously mapped plane with GstVideo.VideoMeta.map.

Parameters:

`meta` (GstVideo.VideoMeta) –

a GstVideo.VideoMeta

`plane` (int) –

a plane

`info` (Gst.MapInfo) –

a Gst.MapInfo

Returns (bool) –

TRUE if the memory was successfully unmapped.

### Functions

#### gst_video_meta_get_info

    const GstMetaInfo *
    gst_video_meta_get_info ()

Returns –
No description available

#### GstVideo.prototype.video_meta_get_info

    function GstVideo.prototype.video_meta_get_info(): {
        // javascript wrapper for 'gst_video_meta_get_info'
    }

Returns (Gst.MetaInfo) –
No description available

#### GstVideo.video_meta_get_info

    def GstVideo.video_meta_get_info ():
        #python wrapper for 'gst_video_meta_get_info'

Returns (Gst.MetaInfo) –
No description available

## GstVideoMetaTransform

Extra data passed to a video transform GstMetaTransformFunction such as: "gst-video-scale".

### Members

`in_info` (GstVideoInfo *) –

the input GstVideoInfo

`out_info` (GstVideoInfo *) –

the output GstVideoInfo

## GstVideo.VideoMetaTransform

Extra data passed to a video transform Gst.MetaTransformFunction such as: "gst-video-scale".

### Members

`in_info` (GstVideo.VideoInfo) –

the input GstVideo.VideoInfo

`out_info` (GstVideo.VideoInfo) –

the output GstVideo.VideoInfo

## GstVideo.VideoMetaTransform

Extra data passed to a video transform Gst.MetaTransformFunction such as: "gst-video-scale".

### Members

`in_info` (GstVideo.VideoInfo) –

the input GstVideo.VideoInfo

`out_info` (GstVideo.VideoInfo) –

the output GstVideo.VideoInfo

### Functions

#### gst_video_meta_transform_scale_get_quark

    GQuark
    gst_video_meta_transform_scale_get_quark ()

Get the GQuark for the "gst-video-scale" metadata transform operation.

Returns –

a GQuark

#### GstVideo.prototype.video_meta_transform_scale_get_quark

    function GstVideo.prototype.video_meta_transform_scale_get_quark(): {
        // javascript wrapper for 'gst_video_meta_transform_scale_get_quark'
    }

Get the GLib.Quark for the "gst-video-scale" metadata transform operation.

Returns (GLib.Quark) –

a GLib.Quark

#### GstVideo.video_meta_transform_scale_get_quark

    def GstVideo.video_meta_transform_scale_get_quark ():
        #python wrapper for 'gst_video_meta_transform_scale_get_quark'

Get the GLib.Quark for the "gst-video-scale" metadata transform operation.

Returns (GLib.Quark) –

a GLib.Quark

## GstVideoRegionOfInterestMeta

Extra buffer metadata describing an image region of interest

### Members

`meta` (GstMeta) –

parent GstMeta

`roi_type` (GQuark) –

GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)

`id` (gint) –

identifier of this particular ROI

`parent_id` (gint) –

identifier of its parent ROI, used f.i. for ROI hierarchisation.

`x` (guint) –

x component of upper-left corner

`y` (guint) –

y component of upper-left corner

`w` (guint) –

bounding box width

`h` (guint) –

bounding box height

`params` (GList *) –

list of GstStructure containing element-specific params for downstream, see gst_video_region_of_interest_meta_add_param. (Since: 1.14)

## GstVideo.VideoRegionOfInterestMeta

Extra buffer metadata describing an image region of interest

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`roi_type` (GLib.Quark) –

GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)

`id` (Number) –

identifier of this particular ROI

`parent_id` (Number) –

identifier of its parent ROI, used f.i. for ROI hierarchisation.

`x` (Number) –

x component of upper-left corner

`y` (Number) –

y component of upper-left corner

`w` (Number) –

bounding box width

`h` (Number) –

bounding box height

`params` ([ Object ]) –

list of Gst.Structure containing element-specific params for downstream, see GstVideo.VideoRegionOfInterestMeta.prototype.add_param. (Since: 1.14)

## GstVideo.VideoRegionOfInterestMeta

Extra buffer metadata describing an image region of interest

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`roi_type` (GLib.Quark) –

GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)

`id` (int) –

identifier of this particular ROI

`parent_id` (int) –

identifier of its parent ROI, used f.i. for ROI hierarchisation.

`x` (int) –

x component of upper-left corner

`y` (int) –

y component of upper-left corner

`w` (int) –

bounding box width

`h` (int) –

bounding box height

`params` ([ object ]) –

list of Gst.Structure containing element-specific params for downstream, see GstVideo.VideoRegionOfInterestMeta.add_param. (Since: 1.14)

### Methods

#### gst_video_region_of_interest_meta_add_param

    gst_video_region_of_interest_meta_add_param (GstVideoRegionOfInterestMeta * meta,
                                                 GstStructure * s)

Attach element-specific parameters to meta meant to be used by downstream elements which may handle this ROI. The name of s is used to identify the element these parameters are meant for.

This is typically used to tell encoders how they should encode this specific region. For example, a structure named "roi/x264enc" could be used to give the QP offsets this encoder should use when encoding the region described in meta. Multiple parameters can be defined for the same meta so different encoders can be supported by cross platform applications).

Parameters:

`meta` –

a GstVideoRegionOfInterestMeta

`s` ( [transfer: full]) –

a GstStructure

Since : 1.14

#### GstVideo.VideoRegionOfInterestMeta.prototype.add_param

    function GstVideo.VideoRegionOfInterestMeta.prototype.add_param(s: Gst.Structure): {
        // javascript wrapper for 'gst_video_region_of_interest_meta_add_param'
    }

Attach element-specific parameters to meta meant to be used by downstream elements which may handle this ROI. The name of s is used to identify the element these parameters are meant for.

This is typically used to tell encoders how they should encode this specific region. For example, a structure named "roi/x264enc" could be used to give the QP offsets this encoder should use when encoding the region described in meta. Multiple parameters can be defined for the same meta so different encoders can be supported by cross platform applications).

Parameters:

`meta` (GstVideo.VideoRegionOfInterestMeta) –

a GstVideo.VideoRegionOfInterestMeta

`s` (Gst.Structure) –

a Gst.Structure

Since : 1.14

#### GstVideo.VideoRegionOfInterestMeta.add_param

    def GstVideo.VideoRegionOfInterestMeta.add_param (self, s):
        #python wrapper for 'gst_video_region_of_interest_meta_add_param'

Attach element-specific parameters to meta meant to be used by downstream elements which may handle this ROI. The name of s is used to identify the element these parameters are meant for.

This is typically used to tell encoders how they should encode this specific region. For example, a structure named "roi/x264enc" could be used to give the QP offsets this encoder should use when encoding the region described in meta. Multiple parameters can be defined for the same meta so different encoders can be supported by cross platform applications).

Parameters:

`meta` (GstVideo.VideoRegionOfInterestMeta) –

a GstVideo.VideoRegionOfInterestMeta

`s` (Gst.Structure) –

a Gst.Structure

Since : 1.14

#### gst_video_region_of_interest_meta_get_param

    GstStructure *
    gst_video_region_of_interest_meta_get_param (GstVideoRegionOfInterestMeta * meta,
                                                 const gchar * name)

Retrieve the parameter for meta having name as structure name, or NULL if there is none.

Parameters:

`meta` –

a GstVideoRegionOfInterestMeta

`name` –

a name.

Returns ( [transfer: none][nullable]) –

a GstStructure

Since : 1.14 See also: gst_video_region_of_interest_meta_add_param()

#### GstVideo.VideoRegionOfInterestMeta.prototype.get_param

    function GstVideo.VideoRegionOfInterestMeta.prototype.get_param(name: String): {
        // javascript wrapper for 'gst_video_region_of_interest_meta_get_param'
    }

Retrieve the parameter for meta having name as structure name, or null if there is none.

Parameters:

`meta` (GstVideo.VideoRegionOfInterestMeta) –

a GstVideo.VideoRegionOfInterestMeta

`name` (String) –

a name.

Returns (Gst.Structure) –

a Gst.Structure

Since : 1.14 See also: gst_video_region_of_interest_meta_add_param()

#### GstVideo.VideoRegionOfInterestMeta.get_param

    def GstVideo.VideoRegionOfInterestMeta.get_param (self, name):
        #python wrapper for 'gst_video_region_of_interest_meta_get_param'

Retrieve the parameter for meta having name as structure name, or None if there is none.

Parameters:

`meta` (GstVideo.VideoRegionOfInterestMeta) –

a GstVideo.VideoRegionOfInterestMeta

`name` (str) –

a name.

Returns (Gst.Structure) –

a Gst.Structure

Since : 1.14 See also: gst_video_region_of_interest_meta_add_param()

### Functions

#### gst_video_region_of_interest_meta_get_info

    const GstMetaInfo *
    gst_video_region_of_interest_meta_get_info ()

Returns –
No description available

#### GstVideo.prototype.video_region_of_interest_meta_get_info

    function GstVideo.prototype.video_region_of_interest_meta_get_info(): {
        // javascript wrapper for 'gst_video_region_of_interest_meta_get_info'
    }

Returns (Gst.MetaInfo) –
No description available

#### GstVideo.video_region_of_interest_meta_get_info

    def GstVideo.video_region_of_interest_meta_get_info ():
        #python wrapper for 'gst_video_region_of_interest_meta_get_info'

Returns (Gst.MetaInfo) –
No description available

## GstVideoTimeCodeMeta

Extra buffer metadata describing the GstVideoTimeCode of the frame.

Each frame is assumed to have its own timecode, i.e. they are not automatically incremented/interpolated.

### Members

`meta` (GstMeta) –

parent GstMeta

`tc` (GstVideoTimeCode) –

the GstVideoTimeCode to attach

Since : 1.10

## GstVideo.VideoTimeCodeMeta

Extra buffer metadata describing the GstVideoTimeCode of the frame.

Each frame is assumed to have its own timecode, i.e. they are not automatically incremented/interpolated.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`tc` (GstVideo.VideoTimeCode) –

the GstVideoTimeCode to attach

Since : 1.10

## GstVideo.VideoTimeCodeMeta

Extra buffer metadata describing the GstVideoTimeCode of the frame.

Each frame is assumed to have its own timecode, i.e. they are not automatically incremented/interpolated.

### Members

`meta` (Gst.Meta) –

parent Gst.Meta

`tc` (GstVideo.VideoTimeCode) –

the GstVideoTimeCode to attach

Since : 1.10

### Functions

#### gst_video_time_code_meta_get_info

    const GstMetaInfo *
    gst_video_time_code_meta_get_info ()

Returns –
No description available

#### GstVideo.prototype.video_time_code_meta_get_info

    function GstVideo.prototype.video_time_code_meta_get_info(): {
        // javascript wrapper for 'gst_video_time_code_meta_get_info'
    }

Returns (Gst.MetaInfo) –
No description available

#### GstVideo.video_time_code_meta_get_info

    def GstVideo.video_time_code_meta_get_info ():
        #python wrapper for 'gst_video_time_code_meta_get_info'

Returns (Gst.MetaInfo) –
No description available

## Functions

### gst_buffer_add_video_gl_texture_upload_meta

    GstVideoGLTextureUploadMeta *
    gst_buffer_add_video_gl_texture_upload_meta (GstBuffer * buffer,
                                                 GstVideoGLTextureOrientation texture_orientation,
                                                 guint n_textures,
                                                 GstVideoGLTextureType * texture_type,
                                                 GstVideoGLTextureUpload upload,
                                                 gpointer user_data,
                                                 GBoxedCopyFunc user_data_copy,
                                                 GBoxedFreeFunc user_data_free)

Attaches GstVideoGLTextureUploadMeta metadata to buffer with the given parameters.

Parameters:

`buffer` –

a GstBuffer

`texture_orientation` –

the GstVideoGLTextureOrientation

`n_textures` –

the number of textures

`texture_type` –

array of GstVideoGLTextureType

`upload` ( [scope call]) –

the function to upload the buffer to a specific texture ID

`user_data` –

user data for the implementor of upload

`user_data_copy` ( [scope call]) –

function to copy user_data

`user_data_free` ( [scope call]) –

function to free user_data

Returns ( [transfer: none]) –

the GstVideoGLTextureUploadMeta on buffer.

### GstVideo.prototype.buffer_add_video_gl_texture_upload_meta

    function GstVideo.prototype.buffer_add_video_gl_texture_upload_meta(buffer: Gst.Buffer, texture_orientation: GstVideo.VideoGLTextureOrientation, n_textures: Number, texture_type: GstVideo.VideoGLTextureType, upload: GstVideo.VideoGLTextureUpload, user_data: Object, user_data_copy: GObject.BoxedCopyFunc, user_data_free: GObject.BoxedFreeFunc): {
        // javascript wrapper for 'gst_buffer_add_video_gl_texture_upload_meta'
    }

Attaches GstVideoGLTextureUploadMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`texture_orientation` (GstVideo.VideoGLTextureOrientation) –

the GstVideo.VideoGLTextureOrientation

`n_textures` (Number) –

the number of textures

`texture_type` (GstVideo.VideoGLTextureType) –

array of GstVideo.VideoGLTextureType

`upload` (GstVideo.VideoGLTextureUpload) –

the function to upload the buffer to a specific texture ID

`user_data` (Object) –

user data for the implementor of upload

`user_data_copy` (GObject.BoxedCopyFunc) –

function to copy user_data

`user_data_free` (GObject.BoxedFreeFunc) –

function to free user_data

Returns (GstVideo.VideoGLTextureUploadMeta) –

the GstVideo.VideoGLTextureUploadMeta on buffer.

### GstVideo.buffer_add_video_gl_texture_upload_meta

    def GstVideo.buffer_add_video_gl_texture_upload_meta (buffer, texture_orientation, n_textures, texture_type, upload, *user_data, user_data_copy, user_data_free):
        #python wrapper for 'gst_buffer_add_video_gl_texture_upload_meta'

Attaches GstVideoGLTextureUploadMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`texture_orientation` (GstVideo.VideoGLTextureOrientation) –

the GstVideo.VideoGLTextureOrientation

`n_textures` (int) –

the number of textures

`texture_type` (GstVideo.VideoGLTextureType) –

array of GstVideo.VideoGLTextureType

`upload` (GstVideo.VideoGLTextureUpload) –

the function to upload the buffer to a specific texture ID

`user_data` (variadic) –

user data for the implementor of upload

`user_data_copy` (GObject.BoxedCopyFunc) –

function to copy user_data

`user_data_free` (GObject.BoxedFreeFunc) –

function to free user_data

Returns (GstVideo.VideoGLTextureUploadMeta) –

the GstVideo.VideoGLTextureUploadMeta on buffer.

### gst_buffer_add_video_meta

    GstVideoMeta *
    gst_buffer_add_video_meta (GstBuffer * buffer,
                               GstVideoFrameFlags flags,
                               GstVideoFormat format,
                               guint width,
                               guint height)

Attaches GstVideoMeta metadata to buffer with the given parameters and the default offsets and strides for format and width x height.

This function calculates the default offsets and strides and then calls gst_buffer_add_video_meta_full with them.

Parameters:

`buffer` –

a GstBuffer

`flags` –

GstVideoFrameFlags

`format` –

a GstVideoFormat

`width` –

the width

`height` –

the height

Returns ( [transfer: none]) –

the GstVideoMeta on buffer.

### GstVideo.prototype.buffer_add_video_meta

    function GstVideo.prototype.buffer_add_video_meta(buffer: Gst.Buffer, flags: GstVideo.VideoFrameFlags, format: GstVideo.VideoFormat, width: Number, height: Number): {
        // javascript wrapper for 'gst_buffer_add_video_meta'
    }

Attaches GstVideoMeta metadata to buffer with the given parameters and the default offsets and strides for format and width x height.

This function calculates the default offsets and strides and then calls GstVideo.prototype.buffer_add_video_meta_full with them.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`flags` (GstVideo.VideoFrameFlags) –

GstVideo.VideoFrameFlags

`format` (GstVideo.VideoFormat) –

a GstVideo.VideoFormat

`width` (Number) –

the width

`height` (Number) –

the height

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta on buffer.

### GstVideo.buffer_add_video_meta

    def GstVideo.buffer_add_video_meta (buffer, flags, format, width, height):
        #python wrapper for 'gst_buffer_add_video_meta'

Attaches GstVideoMeta metadata to buffer with the given parameters and the default offsets and strides for format and width x height.

This function calculates the default offsets and strides and then calls GstVideo.buffer_add_video_meta_full with them.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`flags` (GstVideo.VideoFrameFlags) –

GstVideo.VideoFrameFlags

`format` (GstVideo.VideoFormat) –

a GstVideo.VideoFormat

`width` (int) –

the width

`height` (int) –

the height

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta on buffer.

### gst_buffer_add_video_meta_full

    GstVideoMeta *
    gst_buffer_add_video_meta_full (GstBuffer * buffer,
                                    GstVideoFrameFlags flags,
                                    GstVideoFormat format,
                                    guint width,
                                    guint height,
                                    guint n_planes,
                                    const gsize * offset,
                                    const gint * stride)

Attaches GstVideoMeta metadata to buffer with the given parameters.

Parameters:

`buffer` –

a GstBuffer

`flags` –

GstVideoFrameFlags

`format` –

a GstVideoFormat

`width` –

the width

`height` –

the height

`n_planes` –

number of planes

`offset` ( [arrayfixed-size=4]) –

offset of each plane

`stride` ( [arrayfixed-size=4]) –

stride of each plane

Returns ( [transfer: none]) –

the GstVideoMeta on buffer.

### GstVideo.prototype.buffer_add_video_meta_full

    function GstVideo.prototype.buffer_add_video_meta_full(buffer: Gst.Buffer, flags: GstVideo.VideoFrameFlags, format: GstVideo.VideoFormat, width: Number, height: Number, n_planes: Number, offset: [ Number ], stride: [ Number ]): {
        // javascript wrapper for 'gst_buffer_add_video_meta_full'
    }

Attaches GstVideoMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`flags` (GstVideo.VideoFrameFlags) –

GstVideo.VideoFrameFlags

`format` (GstVideo.VideoFormat) –

a GstVideo.VideoFormat

`width` (Number) –

the width

`height` (Number) –

the height

`n_planes` (Number) –

number of planes

`offset` ([ Number ]) –

offset of each plane

`stride` ([ Number ]) –

stride of each plane

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta on buffer.

### GstVideo.buffer_add_video_meta_full

    def GstVideo.buffer_add_video_meta_full (buffer, flags, format, width, height, n_planes, offset, stride):
        #python wrapper for 'gst_buffer_add_video_meta_full'

Attaches GstVideoMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`flags` (GstVideo.VideoFrameFlags) –

GstVideo.VideoFrameFlags

`format` (GstVideo.VideoFormat) –

a GstVideo.VideoFormat

`width` (int) –

the width

`height` (int) –

the height

`n_planes` (int) –

number of planes

`offset` ([ int ]) –

offset of each plane

`stride` ([ int ]) –

stride of each plane

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta on buffer.

### gst_buffer_add_video_region_of_interest_meta

    GstVideoRegionOfInterestMeta *
    gst_buffer_add_video_region_of_interest_meta (GstBuffer * buffer,
                                                  const gchar * roi_type,
                                                  guint x,
                                                  guint y,
                                                  guint w,
                                                  guint h)

Attaches GstVideoRegionOfInterestMeta metadata to buffer with the given parameters.

Parameters:

`buffer` –

a GstBuffer

`roi_type` –

Type of the region of interest (e.g. "face")

`x` –

X position

`y` –

Y position

`w` –

width

`h` –

height

Returns ( [transfer: none]) –

the GstVideoRegionOfInterestMeta on buffer.

### GstVideo.prototype.buffer_add_video_region_of_interest_meta

    function GstVideo.prototype.buffer_add_video_region_of_interest_meta(buffer: Gst.Buffer, roi_type: String, x: Number, y: Number, w: Number, h: Number): {
        // javascript wrapper for 'gst_buffer_add_video_region_of_interest_meta'
    }

Attaches GstVideo.VideoRegionOfInterestMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`roi_type` (String) –

Type of the region of interest (e.g. "face")

`x` (Number) –

X position

`y` (Number) –

Y position

`w` (Number) –

width

`h` (Number) –

height

Returns (GstVideo.VideoRegionOfInterestMeta) –

the GstVideo.VideoRegionOfInterestMeta on buffer.

### GstVideo.buffer_add_video_region_of_interest_meta

    def GstVideo.buffer_add_video_region_of_interest_meta (buffer, roi_type, x, y, w, h):
        #python wrapper for 'gst_buffer_add_video_region_of_interest_meta'

Attaches GstVideo.VideoRegionOfInterestMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`roi_type` (str) –

Type of the region of interest (e.g. "face")

`x` (int) –

X position

`y` (int) –

Y position

`w` (int) –

width

`h` (int) –

height

Returns (GstVideo.VideoRegionOfInterestMeta) –

the GstVideo.VideoRegionOfInterestMeta on buffer.

### gst_buffer_add_video_region_of_interest_meta_id

    GstVideoRegionOfInterestMeta *
    gst_buffer_add_video_region_of_interest_meta_id (GstBuffer * buffer,
                                                     GQuark roi_type,
                                                     guint x,
                                                     guint y,
                                                     guint w,
                                                     guint h)

Attaches GstVideoRegionOfInterestMeta metadata to buffer with the given parameters.

Parameters:

`buffer` –

a GstBuffer

`roi_type` –

Type of the region of interest (e.g. "face")

`x` –

X position

`y` –

Y position

`w` –

width

`h` –

height

Returns ( [transfer: none]) –

the GstVideoRegionOfInterestMeta on buffer.

### GstVideo.prototype.buffer_add_video_region_of_interest_meta_id

    function GstVideo.prototype.buffer_add_video_region_of_interest_meta_id(buffer: Gst.Buffer, roi_type: GLib.Quark, x: Number, y: Number, w: Number, h: Number): {
        // javascript wrapper for 'gst_buffer_add_video_region_of_interest_meta_id'
    }

Attaches GstVideo.VideoRegionOfInterestMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`roi_type` (GLib.Quark) –

Type of the region of interest (e.g. "face")

`x` (Number) –

X position

`y` (Number) –

Y position

`w` (Number) –

width

`h` (Number) –

height

Returns (GstVideo.VideoRegionOfInterestMeta) –

the GstVideo.VideoRegionOfInterestMeta on buffer.

### GstVideo.buffer_add_video_region_of_interest_meta_id

    def GstVideo.buffer_add_video_region_of_interest_meta_id (buffer, roi_type, x, y, w, h):
        #python wrapper for 'gst_buffer_add_video_region_of_interest_meta_id'

Attaches GstVideo.VideoRegionOfInterestMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`roi_type` (GLib.Quark) –

Type of the region of interest (e.g. "face")

`x` (int) –

X position

`y` (int) –

Y position

`w` (int) –

width

`h` (int) –

height

Returns (GstVideo.VideoRegionOfInterestMeta) –

the GstVideo.VideoRegionOfInterestMeta on buffer.

### gst_buffer_add_video_time_code_meta

    GstVideoTimeCodeMeta *
    gst_buffer_add_video_time_code_meta (GstBuffer * buffer,
                                         const GstVideoTimeCode * tc)

Attaches GstVideoTimeCodeMeta metadata to buffer with the given parameters.

Parameters:

`buffer` –

a GstBuffer

`tc` –

a GstVideoTimeCode

Returns ( [transfer: none][nullable]) –

the GstVideoTimeCodeMeta on buffer, or (since 1.16) NULL if the timecode was invalid.

Since : 1.10

### GstVideo.prototype.buffer_add_video_time_code_meta

    function GstVideo.prototype.buffer_add_video_time_code_meta(buffer: Gst.Buffer, tc: GstVideo.VideoTimeCode): {
        // javascript wrapper for 'gst_buffer_add_video_time_code_meta'
    }

Attaches GstVideo.VideoTimeCodeMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`tc` (GstVideo.VideoTimeCode) –

a GstVideo.VideoTimeCode

Returns (GstVideo.VideoTimeCodeMeta) –

the GstVideo.VideoTimeCodeMeta on buffer, or (since 1.16) null if the timecode was invalid.

Since : 1.10

### GstVideo.buffer_add_video_time_code_meta

    def GstVideo.buffer_add_video_time_code_meta (buffer, tc):
        #python wrapper for 'gst_buffer_add_video_time_code_meta'

Attaches GstVideo.VideoTimeCodeMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`tc` (GstVideo.VideoTimeCode) –

a GstVideo.VideoTimeCode

Returns (GstVideo.VideoTimeCodeMeta) –

the GstVideo.VideoTimeCodeMeta on buffer, or (since 1.16) None if the timecode was invalid.

Since : 1.10

### gst_buffer_add_video_time_code_meta_full

    GstVideoTimeCodeMeta *
    gst_buffer_add_video_time_code_meta_full (GstBuffer * buffer,
                                              guint fps_n,
                                              guint fps_d,
                                              GDateTime * latest_daily_jam,
                                              GstVideoTimeCodeFlags flags,
                                              guint hours,
                                              guint minutes,
                                              guint seconds,
                                              guint frames,
                                              guint field_count)

Attaches GstVideoTimeCodeMeta metadata to buffer with the given parameters.

Parameters:

`buffer` –

a GstBuffer

`fps_n` –

framerate numerator

`fps_d` –

framerate denominator

`latest_daily_jam` –

a GDateTime for the latest daily jam

`flags` –

a GstVideoTimeCodeFlags

`hours` –

hours since the daily jam

`minutes` –

minutes since the daily jam

`seconds` –

seconds since the daily jam

`frames` –

frames since the daily jam

`field_count` –

fields since the daily jam

Returns ( [transfer: none][nullable]) –

the GstVideoTimeCodeMeta on buffer, or (since 1.16) NULL if the timecode was invalid.

Since : 1.10

### GstVideo.prototype.buffer_add_video_time_code_meta_full

    function GstVideo.prototype.buffer_add_video_time_code_meta_full(buffer: Gst.Buffer, fps_n: Number, fps_d: Number, latest_daily_jam: GLib.DateTime, flags: GstVideo.VideoTimeCodeFlags, hours: Number, minutes: Number, seconds: Number, frames: Number, field_count: Number): {
        // javascript wrapper for 'gst_buffer_add_video_time_code_meta_full'
    }

Attaches GstVideo.VideoTimeCodeMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`fps_n` (Number) –

framerate numerator

`fps_d` (Number) –

framerate denominator

`latest_daily_jam` (GLib.DateTime) –

a GLib.DateTime for the latest daily jam

`flags` (GstVideo.VideoTimeCodeFlags) –

a GstVideo.VideoTimeCodeFlags

`hours` (Number) –

hours since the daily jam

`minutes` (Number) –

minutes since the daily jam

`seconds` (Number) –

seconds since the daily jam

`frames` (Number) –

frames since the daily jam

`field_count` (Number) –

fields since the daily jam

Returns (GstVideo.VideoTimeCodeMeta) –

the GstVideo.VideoTimeCodeMeta on buffer, or (since 1.16) null if the timecode was invalid.

Since : 1.10

### GstVideo.buffer_add_video_time_code_meta_full

    def GstVideo.buffer_add_video_time_code_meta_full (buffer, fps_n, fps_d, latest_daily_jam, flags, hours, minutes, seconds, frames, field_count):
        #python wrapper for 'gst_buffer_add_video_time_code_meta_full'

Attaches GstVideo.VideoTimeCodeMeta metadata to buffer with the given parameters.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`fps_n` (int) –

framerate numerator

`fps_d` (int) –

framerate denominator

`latest_daily_jam` (GLib.DateTime) –

a GLib.DateTime for the latest daily jam

`flags` (GstVideo.VideoTimeCodeFlags) –

a GstVideo.VideoTimeCodeFlags

`hours` (int) –

hours since the daily jam

`minutes` (int) –

minutes since the daily jam

`seconds` (int) –

seconds since the daily jam

`frames` (int) –

frames since the daily jam

`field_count` (int) –

fields since the daily jam

Returns (GstVideo.VideoTimeCodeMeta) –

the GstVideo.VideoTimeCodeMeta on buffer, or (since 1.16) None if the timecode was invalid.

Since : 1.10

### gst_buffer_get_video_meta

    GstVideoMeta *
    gst_buffer_get_video_meta (GstBuffer * buffer)

Find the GstVideoMeta on buffer with the lowest id.

Buffers can contain multiple GstVideoMeta metadata items when dealing with multiview buffers.

Parameters:

`buffer` –

a GstBuffer

Returns ( [transfer: none][nullable]) –

the GstVideoMeta with lowest id (usually 0) or NULL when there is no such metadata on buffer.

### GstVideo.prototype.buffer_get_video_meta

    function GstVideo.prototype.buffer_get_video_meta(buffer: Gst.Buffer): {
        // javascript wrapper for 'gst_buffer_get_video_meta'
    }

Find the GstVideo.VideoMeta on buffer with the lowest id.

Buffers can contain multiple GstVideo.VideoMeta metadata items when dealing with multiview buffers.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta with lowest id (usually 0) or null when there is no such metadata on buffer.

### GstVideo.buffer_get_video_meta

    def GstVideo.buffer_get_video_meta (buffer):
        #python wrapper for 'gst_buffer_get_video_meta'

Find the GstVideo.VideoMeta on buffer with the lowest id.

Buffers can contain multiple GstVideo.VideoMeta metadata items when dealing with multiview buffers.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta with lowest id (usually 0) or None when there is no such metadata on buffer.

### gst_buffer_get_video_meta_id

    GstVideoMeta *
    gst_buffer_get_video_meta_id (GstBuffer * buffer,
                                  gint id)

Find the GstVideoMeta on buffer with the given id.

Buffers can contain multiple GstVideoMeta metadata items when dealing with multiview buffers.

Parameters:

`buffer` –

a GstBuffer

`id` –

a metadata id

Returns ( [transfer: none][nullable]) –

the GstVideoMeta with id or NULL when there is no such metadata on buffer.

### GstVideo.prototype.buffer_get_video_meta_id

    function GstVideo.prototype.buffer_get_video_meta_id(buffer: Gst.Buffer, id: Number): {
        // javascript wrapper for 'gst_buffer_get_video_meta_id'
    }

Find the GstVideo.VideoMeta on buffer with the given id.

Buffers can contain multiple GstVideo.VideoMeta metadata items when dealing with multiview buffers.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`id` (Number) –

a metadata id

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta with id or null when there is no such metadata on buffer.

### GstVideo.buffer_get_video_meta_id

    def GstVideo.buffer_get_video_meta_id (buffer, id):
        #python wrapper for 'gst_buffer_get_video_meta_id'

Find the GstVideo.VideoMeta on buffer with the given id.

Buffers can contain multiple GstVideo.VideoMeta metadata items when dealing with multiview buffers.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`id` (int) –

a metadata id

Returns (GstVideo.VideoMeta) –

the GstVideo.VideoMeta with id or None when there is no such metadata on buffer.

### gst_buffer_get_video_region_of_interest_meta_id

    GstVideoRegionOfInterestMeta *
    gst_buffer_get_video_region_of_interest_meta_id (GstBuffer * buffer,
                                                     gint id)

Find the GstVideoRegionOfInterestMeta on buffer with the given id.

Buffers can contain multiple GstVideoRegionOfInterestMeta metadata items if multiple regions of interests are marked on a frame.

Parameters:

`buffer` –

a GstBuffer

`id` –

a metadata id

Returns ( [transfer: none][nullable]) –

the GstVideoRegionOfInterestMeta with id or NULL when there is no such metadata on buffer.

### GstVideo.prototype.buffer_get_video_region_of_interest_meta_id

    function GstVideo.prototype.buffer_get_video_region_of_interest_meta_id(buffer: Gst.Buffer, id: Number): {
        // javascript wrapper for 'gst_buffer_get_video_region_of_interest_meta_id'
    }

Find the GstVideo.VideoRegionOfInterestMeta on buffer with the given id.

Buffers can contain multiple GstVideo.VideoRegionOfInterestMeta metadata items if multiple regions of interests are marked on a frame.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`id` (Number) –

a metadata id

Returns (GstVideo.VideoRegionOfInterestMeta) –

the GstVideo.VideoRegionOfInterestMeta with id or null when there is no such metadata on buffer.

### GstVideo.buffer_get_video_region_of_interest_meta_id

    def GstVideo.buffer_get_video_region_of_interest_meta_id (buffer, id):
        #python wrapper for 'gst_buffer_get_video_region_of_interest_meta_id'

Find the GstVideo.VideoRegionOfInterestMeta on buffer with the given id.

Buffers can contain multiple GstVideo.VideoRegionOfInterestMeta metadata items if multiple regions of interests are marked on a frame.

Parameters:

`buffer` (Gst.Buffer) –

a Gst.Buffer

`id` (int) –

a metadata id

Returns (GstVideo.VideoRegionOfInterestMeta) –

the GstVideo.VideoRegionOfInterestMeta with id or None when there is no such metadata on buffer.

### gst_video_crop_meta_api_get_type

    GType
    gst_video_crop_meta_api_get_type ()

Returns –
No description available

### GstVideo.prototype.video_crop_meta_api_get_type

    function GstVideo.prototype.video_crop_meta_api_get_type(): {
        // javascript wrapper for 'gst_video_crop_meta_api_get_type'
    }

Returns (GObject.Type) –
No description available

### GstVideo.video_crop_meta_api_get_type

    def GstVideo.video_crop_meta_api_get_type ():
        #python wrapper for 'gst_video_crop_meta_api_get_type'

Returns (GObject.Type) –
No description available

### gst_video_gl_texture_upload_meta_api_get_type

    GType
    gst_video_gl_texture_upload_meta_api_get_type ()

Returns –
No description available

### GstVideo.prototype.video_gl_texture_upload_meta_api_get_type

    function GstVideo.prototype.video_gl_texture_upload_meta_api_get_type(): {
        // javascript wrapper for 'gst_video_gl_texture_upload_meta_api_get_type'
    }

Returns (GObject.Type) –
No description available

### GstVideo.video_gl_texture_upload_meta_api_get_type

    def GstVideo.video_gl_texture_upload_meta_api_get_type ():
        #python wrapper for 'gst_video_gl_texture_upload_meta_api_get_type'

Returns (GObject.Type) –
No description available

### gst_video_meta_api_get_type

    GType
    gst_video_meta_api_get_type ()

Returns –
No description available

### GstVideo.prototype.video_meta_api_get_type

    function GstVideo.prototype.video_meta_api_get_type(): {
        // javascript wrapper for 'gst_video_meta_api_get_type'
    }

Returns (GObject.Type) –
No description available

### GstVideo.video_meta_api_get_type

    def GstVideo.video_meta_api_get_type ():
        #python wrapper for 'gst_video_meta_api_get_type'

Returns (GObject.Type) –
No description available

### gst_video_region_of_interest_meta_api_get_type

    GType
    gst_video_region_of_interest_meta_api_get_type ()

Returns –
No description available

### GstVideo.prototype.video_region_of_interest_meta_api_get_type

    function GstVideo.prototype.video_region_of_interest_meta_api_get_type(): {
        // javascript wrapper for 'gst_video_region_of_interest_meta_api_get_type'
    }

Returns (GObject.Type) –
No description available

### GstVideo.video_region_of_interest_meta_api_get_type

    def GstVideo.video_region_of_interest_meta_api_get_type ():
        #python wrapper for 'gst_video_region_of_interest_meta_api_get_type'

Returns (GObject.Type) –
No description available

### gst_video_time_code_meta_api_get_type

    GType
    gst_video_time_code_meta_api_get_type ()

Returns –
No description available

### GstVideo.prototype.video_time_code_meta_api_get_type

    function GstVideo.prototype.video_time_code_meta_api_get_type(): {
        // javascript wrapper for 'gst_video_time_code_meta_api_get_type'
    }

Returns (GObject.Type) –
No description available

### GstVideo.video_time_code_meta_api_get_type

    def GstVideo.video_time_code_meta_api_get_type ():
        #python wrapper for 'gst_video_time_code_meta_api_get_type'

Returns (GObject.Type) –
No description available

## Function Macros

### GST_VIDEO_META_TRANSFORM_IS_SCALE

    #define GST_VIDEO_META_TRANSFORM_IS_SCALE(type) ((type) == gst_video_meta_transform_scale_get_quark())

### gst_buffer_add_video_crop_meta

    #define gst_buffer_add_video_crop_meta(b) ((GstVideoCropMeta*)gst_buffer_add_meta((b),GST_VIDEO_CROP_META_INFO, NULL))

### gst_buffer_get_video_crop_meta

    #define gst_buffer_get_video_crop_meta(b) ((GstVideoCropMeta*)gst_buffer_get_meta((b),GST_VIDEO_CROP_META_API_TYPE))

### gst_buffer_get_video_gl_texture_upload_meta

    #define gst_buffer_get_video_gl_texture_upload_meta(b) ((GstVideoGLTextureUploadMeta*)gst_buffer_get_meta((b),GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE))

### gst_buffer_get_video_region_of_interest_meta

    #define gst_buffer_get_video_region_of_interest_meta(b) \
            ((GstVideoRegionOfInterestMeta*)gst_buffer_get_meta((b),GST_VIDEO_REGION_OF_INTEREST_META_API_TYPE))

### gst_buffer_get_video_time_code_meta

    #define gst_buffer_get_video_time_code_meta(b) \
            ((GstVideoTimeCodeMeta*)gst_buffer_get_meta((b),GST_VIDEO_TIME_CODE_META_API_TYPE))

## Enumerations

### GstVideoGLTextureOrientation

The orientation of the GL texture.

##### Members

`GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_NORMAL` (0) –

Top line first in memory, left row first

`GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_FLIP` (1) –

Bottom line first in memory, left row first

`GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_NORMAL` (2) –

Top line first in memory, right row first

`GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_FLIP` (3) –

Bottom line first in memory, right row first

### GstVideo.VideoGLTextureOrientation

The orientation of the GL texture.

##### Members

`GstVideo.VideoGLTextureOrientation.NORMAL_Y_NORMAL` (0) –

Top line first in memory, left row first

`GstVideo.VideoGLTextureOrientation.NORMAL_Y_FLIP` (1) –

Bottom line first in memory, left row first

`GstVideo.VideoGLTextureOrientation.FLIP_Y_NORMAL` (2) –

Top line first in memory, right row first

`GstVideo.VideoGLTextureOrientation.FLIP_Y_FLIP` (3) –

Bottom line first in memory, right row first

### GstVideo.VideoGLTextureOrientation

The orientation of the GL texture.

##### Members

`GstVideo.VideoGLTextureOrientation.NORMAL_Y_NORMAL` (0) –

Top line first in memory, left row first

`GstVideo.VideoGLTextureOrientation.NORMAL_Y_FLIP` (1) –

Bottom line first in memory, left row first

`GstVideo.VideoGLTextureOrientation.FLIP_Y_NORMAL` (2) –

Top line first in memory, right row first

`GstVideo.VideoGLTextureOrientation.FLIP_Y_FLIP` (3) –

Bottom line first in memory, right row first

### GstVideoGLTextureType

The GL texture type.

##### Members

`GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE` (0) –

Luminance texture, GL_LUMINANCE

`GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE_ALPHA` (1) –

Luminance-alpha texture, GL_LUMINANCE_ALPHA

`GST_VIDEO_GL_TEXTURE_TYPE_RGB16` (2) –

RGB 565 texture, GL_RGB

`GST_VIDEO_GL_TEXTURE_TYPE_RGB` (3) –

RGB texture, GL_RGB

`GST_VIDEO_GL_TEXTURE_TYPE_RGBA` (4) –

RGBA texture, GL_RGBA

`GST_VIDEO_GL_TEXTURE_TYPE_R` (5) –

R texture, GL_RED_EXT

`GST_VIDEO_GL_TEXTURE_TYPE_RG` (6) –

RG texture, GL_RG_EXT

### GstVideo.VideoGLTextureType

The GL texture type.

##### Members

`GstVideo.VideoGLTextureType.LUMINANCE` (0) –

Luminance texture, GL_LUMINANCE

`GstVideo.VideoGLTextureType.LUMINANCE_ALPHA` (1) –

Luminance-alpha texture, GL_LUMINANCE_ALPHA

`GstVideo.VideoGLTextureType.RGB16` (2) –

RGB 565 texture, GL_RGB

`GstVideo.VideoGLTextureType.RGB` (3) –

RGB texture, GL_RGB

`GstVideo.VideoGLTextureType.RGBA` (4) –

RGBA texture, GL_RGBA

`GstVideo.VideoGLTextureType.R` (5) –

R texture, GL_RED_EXT

`GstVideo.VideoGLTextureType.RG` (6) –

RG texture, GL_RG_EXT

### GstVideo.VideoGLTextureType

The GL texture type.

##### Members

`GstVideo.VideoGLTextureType.LUMINANCE` (0) –

Luminance texture, GL_LUMINANCE

`GstVideo.VideoGLTextureType.LUMINANCE_ALPHA` (1) –

Luminance-alpha texture, GL_LUMINANCE_ALPHA

`GstVideo.VideoGLTextureType.RGB16` (2) –

RGB 565 texture, GL_RGB

`GstVideo.VideoGLTextureType.RGB` (3) –

RGB texture, GL_RGB

`GstVideo.VideoGLTextureType.RGBA` (4) –

RGBA texture, GL_RGBA

`GstVideo.VideoGLTextureType.R` (5) –

R texture, GL_RED_EXT

`GstVideo.VideoGLTextureType.RG` (6) –

RG texture, GL_RG_EXT

## Constants

### GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META

    #define GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META "GstBufferPoolOptionVideoGLTextureUploadMeta"

An option that can be activated on a bufferpool to request gl texture upload meta on buffers from the pool.

When this option is enabled on the bufferpool, GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled.

Since : 1.2.2

### GstVideo.BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META

An option that can be activated on a bufferpool to request gl texture upload meta on buffers from the pool.

When this option is enabled on the bufferpool, GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled.

Since : 1.2.2

### GstVideo.BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META

An option that can be activated on a bufferpool to request gl texture upload meta on buffers from the pool.

When this option is enabled on the bufferpool, GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled.

Since : 1.2.2

### GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META

    #define GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META "meta:GstVideoGLTextureUploadMeta"

### GstVideo.CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META

### GST_CAPS_FEATURE_META_GST_VIDEO_META

    #define GST_CAPS_FEATURE_META_GST_VIDEO_META "meta:GstVideoMeta"

### GstVideo.CAPS_FEATURE_META_GST_VIDEO_META

### GST_VIDEO_CROP_META_API_TYPE

    #define GST_VIDEO_CROP_META_API_TYPE  (gst_video_crop_meta_api_get_type())

### GST_VIDEO_CROP_META_INFO

    #define GST_VIDEO_CROP_META_INFO  (gst_video_crop_meta_get_info())

### GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE

    #define GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE (gst_video_gl_texture_upload_meta_api_get_type())

### GST_VIDEO_GL_TEXTURE_UPLOAD_META_INFO

    #define GST_VIDEO_GL_TEXTURE_UPLOAD_META_INFO  (gst_video_gl_texture_upload_meta_get_info())

### GST_VIDEO_META_API_TYPE

    #define GST_VIDEO_META_API_TYPE (gst_video_meta_api_get_type())

### GST_VIDEO_META_INFO

    #define GST_VIDEO_META_INFO  (gst_video_meta_get_info())

### GST_VIDEO_REGION_OF_INTEREST_META_API_TYPE

    #define GST_VIDEO_REGION_OF_INTEREST_META_API_TYPE (gst_video_region_of_interest_meta_api_get_type())

### GST_VIDEO_REGION_OF_INTEREST_META_INFO

    #define GST_VIDEO_REGION_OF_INTEREST_META_INFO (gst_video_region_of_interest_meta_get_info())

### GST_VIDEO_TIME_CODE_META_API_TYPE

    #define GST_VIDEO_TIME_CODE_META_API_TYPE (gst_video_time_code_meta_api_get_type())

### GST_VIDEO_TIME_CODE_META_INFO

    #define GST_VIDEO_TIME_CODE_META_INFO (gst_video_time_code_meta_get_info())

## Callbacks

### GstVideoGLTextureUpload

    gboolean
    (*GstVideoGLTextureUpload) (GstVideoGLTextureUploadMeta * meta,
                                guint * texture_id)

Parameters:

`meta` –
No description available
`texture_id` –
No description available
Returns –
No description available

### GstVideo.VideoGLTextureUpload

    function GstVideo.VideoGLTextureUpload(meta: GstVideo.VideoGLTextureUploadMeta, texture_id: Number): {
        // javascript wrapper for 'GstVideoGLTextureUpload'
    }

Parameters:

`meta` (GstVideo.VideoGLTextureUploadMeta) –
No description available
`texture_id` (Number) –
No description available
Returns (Number) –
No description available

### GstVideo.VideoGLTextureUpload

    def GstVideo.VideoGLTextureUpload (meta, texture_id):
        #python wrapper for 'GstVideoGLTextureUpload'

Parameters:

`meta` (GstVideo.VideoGLTextureUploadMeta) –
No description available
`texture_id` (int) –
No description available
Returns (bool) –
No description available

The results of the search are