## GstVideoFrame

A video frame obtained from gst_video_frame_map

### Members

`info` (GstVideoInfo) –

the GstVideoInfo

`flags` (GstVideoFrameFlags) –

GstVideoFrameFlags for the frame

`buffer` (GstBuffer *) –

the mapped buffer

`meta` (gpointer) –

pointer to metadata if any

`id` (gint) –

id of the mapped frame. the id can for example be used to identify the frame in case of multiview video.

`data` (gpointer*) –

pointers to the plane data

`map` (GstMapInfo *) –

mappings of the planes

## GstVideo.VideoFrame

A video frame obtained from GstVideo.prototype.video_frame_map

### Members

`info` (GstVideo.VideoInfo) –

the GstVideo.VideoInfo

`flags` (GstVideo.VideoFrameFlags) –

GstVideo.VideoFrameFlags for the frame

`buffer` (Gst.Buffer) –

the mapped buffer

`meta` (Object) –

pointer to metadata if any

`id` (Number) –

id of the mapped frame. the id can for example be used to identify the frame in case of multiview video.

`data` ([ Object ]) –

pointers to the plane data

`map` ([ Gst.MapInfo ]) –

mappings of the planes

## GstVideo.VideoFrame

A video frame obtained from GstVideo.video_frame_map

### Members

`info` (GstVideo.VideoInfo) –

the GstVideo.VideoInfo

`flags` (GstVideo.VideoFrameFlags) –

GstVideo.VideoFrameFlags for the frame

`buffer` (Gst.Buffer) –

the mapped buffer

`meta` (object) –

pointer to metadata if any

`id` (int) –

id of the mapped frame. the id can for example be used to identify the frame in case of multiview video.

`data` ([ object ]) –

pointers to the plane data

`map` ([ Gst.MapInfo ]) –

mappings of the planes

### Methods

#### gst_video_frame_copy

    gboolean
    gst_video_frame_copy (GstVideoFrame * dest,
                          const GstVideoFrame * src)

Copy the contents from src to dest.

Note: Since: 1.18, dest dimensions are allowed to be smaller than src dimensions.

Parameters:

`dest` –

a GstVideoFrame

`src` –

a GstVideoFrame

Returns –

TRUE if the contents could be copied.

#### GstVideo.VideoFrame.prototype.copy

    function GstVideo.VideoFrame.prototype.copy(src: GstVideo.VideoFrame): {
        // javascript wrapper for 'gst_video_frame_copy'
    }

Copy the contents from src to dest.

Note: Since: 1.18, dest dimensions are allowed to be smaller than src dimensions.

Parameters:

`dest` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

`src` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

Returns (Number) –

TRUE if the contents could be copied.

#### GstVideo.VideoFrame.copy

    def GstVideo.VideoFrame.copy (self, src):
        #python wrapper for 'gst_video_frame_copy'

Copy the contents from src to dest.

Note: Since: 1.18, dest dimensions are allowed to be smaller than src dimensions.

Parameters:

`dest` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

`src` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

Returns (bool) –

TRUE if the contents could be copied.

#### gst_video_frame_copy_plane

    gboolean
    gst_video_frame_copy_plane (GstVideoFrame * dest,
                                const GstVideoFrame * src,
                                guint plane)

Copy the plane with index plane from src to dest.

Note: Since: 1.18, dest dimensions are allowed to be smaller than src dimensions.

Parameters:

`dest` –

a GstVideoFrame

`src` –

a GstVideoFrame

`plane` –

a plane

Returns –

TRUE if the contents could be copied.

#### GstVideo.VideoFrame.prototype.copy_plane

    function GstVideo.VideoFrame.prototype.copy_plane(src: GstVideo.VideoFrame, plane: Number): {
        // javascript wrapper for 'gst_video_frame_copy_plane'
    }

Copy the plane with index plane from src to dest.

Note: Since: 1.18, dest dimensions are allowed to be smaller than src dimensions.

Parameters:

`dest` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

`src` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

`plane` (Number) –

a plane

Returns (Number) –

TRUE if the contents could be copied.

#### GstVideo.VideoFrame.copy_plane

    def GstVideo.VideoFrame.copy_plane (self, src, plane):
        #python wrapper for 'gst_video_frame_copy_plane'

Copy the plane with index plane from src to dest.

Note: Since: 1.18, dest dimensions are allowed to be smaller than src dimensions.

Parameters:

`dest` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

`src` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

`plane` (int) –

a plane

Returns (bool) –

TRUE if the contents could be copied.

#### gst_video_frame_unmap

    gst_video_frame_unmap (GstVideoFrame * frame)

Unmap the memory previously mapped with gst_video_frame_map.

Parameters:

`frame` –

a GstVideoFrame

#### GstVideo.VideoFrame.prototype.unmap

    function GstVideo.VideoFrame.prototype.unmap(): {
        // javascript wrapper for 'gst_video_frame_unmap'
    }

Unmap the memory previously mapped with gst_video_frame_map.

Parameters:

`frame` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

#### GstVideo.VideoFrame.unmap

    def GstVideo.VideoFrame.unmap (self):
        #python wrapper for 'gst_video_frame_unmap'

Unmap the memory previously mapped with gst_video_frame_map.

Parameters:

`frame` (GstVideo.VideoFrame) –

a GstVideo.VideoFrame

### Functions

#### gst_video_frame_map

    gboolean
    gst_video_frame_map (GstVideoFrame * frame,
                         const GstVideoInfo * info,
                         GstBuffer * buffer,
                         GstMapFlags flags)

Use info and buffer to fill in the values of frame. frame is usually allocated on the stack, and you will pass the address to the GstVideoFrame structure allocated on the stack; gst_video_frame_map will then fill in the structures with the various video-specific information you need to access the pixels of the video buffer. You can then use accessor macros such as GST_VIDEO_FRAME_COMP_DATA, GST_VIDEO_FRAME_PLANE_DATA, GST_VIDEO_FRAME_COMP_STRIDE, GST_VIDEO_FRAME_PLANE_STRIDE etc. to get to the pixels.

       GstVideoFrame vframe;
       ...
       // set RGB pixels to black one at a time
       if (gst_video_frame_map (&vframe, video_info, video_buffer, GST_MAP_WRITE)) {
         guint8 *pixels = GST_VIDEO_FRAME_PLANE_DATA (vframe, 0);
         guint stride = GST_VIDEO_FRAME_PLANE_STRIDE (vframe, 0);
         guint pixel_stride = GST_VIDEO_FRAME_COMP_PSTRIDE (vframe, 0);

         for (h = 0; h < height; ++h) {
           for (w = 0; w < width; ++w) {
             guint8 *pixel = pixels + h * stride + w * pixel_stride;

             memset (pixel, 0, pixel_stride);
           }
         }

         gst_video_frame_unmap (&vframe);
       }
       ...

All video planes of buffer will be mapped and the pointers will be set in frame->data.

The purpose of this function is to make it easy for you to get to the video pixels in a generic way, without you having to worry too much about details such as whether the video data is allocated in one contiguous memory chunk or multiple memory chunks (e.g. one for each plane); or if custom strides and custom plane offsets are used or not (as signalled by GstVideoMeta on each buffer). This function will just fill the GstVideoFrame structure with the right values and if you use the accessor macros everything will just work and you can access the data easily. It also maps the underlying memory chunks for you.

Parameters:

`frame` ( [out]) –

pointer to GstVideoFrame

`info` –

a GstVideoInfo

`buffer` –

the buffer to map

`flags` –

GstMapFlags

Returns –

TRUE on success.

#### GstVideo.prototype.video_frame_map

    function GstVideo.prototype.video_frame_map(info: GstVideo.VideoInfo, buffer: Gst.Buffer, flags: Gst.MapFlags): {
        // javascript wrapper for 'gst_video_frame_map'
    }

Use info and buffer to fill in the values of frame. frame is usually allocated on the stack, and you will pass the address to the GstVideo.VideoFrame structure allocated on the stack; GstVideo.prototype.video_frame_map will then fill in the structures with the various video-specific information you need to access the pixels of the video buffer. You can then use accessor macros such as GST_VIDEO_FRAME_COMP_DATA (not introspectable), GST_VIDEO_FRAME_PLANE_DATA (not introspectable), GST_VIDEO_FRAME_COMP_STRIDE (not introspectable), GST_VIDEO_FRAME_PLANE_STRIDE (not introspectable) etc. to get to the pixels.

       GstVideoFrame vframe;
       ...
       // set RGB pixels to black one at a time
       if (gst_video_frame_map (&vframe, video_info, video_buffer, GST_MAP_WRITE)) {
         guint8 *pixels = GST_VIDEO_FRAME_PLANE_DATA (vframe, 0);
         guint stride = GST_VIDEO_FRAME_PLANE_STRIDE (vframe, 0);
         guint pixel_stride = GST_VIDEO_FRAME_COMP_PSTRIDE (vframe, 0);

         for (h = 0; h < height; ++h) {
           for (w = 0; w < width; ++w) {
             guint8 *pixel = pixels + h * stride + w * pixel_stride;

             memset (pixel, 0, pixel_stride);
           }
         }

         gst_video_frame_unmap (&vframe);
       }
       ...

All video planes of buffer will be mapped and the pointers will be set in frame->data.

The purpose of this function is to make it easy for you to get to the video pixels in a generic way, without you having to worry too much about details such as whether the video data is allocated in one contiguous memory chunk or multiple memory chunks (e.g. one for each plane); or if custom strides and custom plane offsets are used or not (as signalled by GstVideoMeta on each buffer). This function will just fill the GstVideo.VideoFrame structure with the right values and if you use the accessor macros everything will just work and you can access the data easily. It also maps the underlying memory chunks for you.

Parameters:

`info` (GstVideo.VideoInfo) –

a GstVideo.VideoInfo

`buffer` (Gst.Buffer) –

the buffer to map

`flags` (Gst.MapFlags) –

Gst.MapFlags

Returns a tuple made of:

(Number ) –

TRUE on success.

`frame` (GstVideo.VideoFrame ) –

TRUE on success.

#### GstVideo.video_frame_map

    def GstVideo.video_frame_map (info, buffer, flags):
        #python wrapper for 'gst_video_frame_map'

Use info and buffer to fill in the values of frame. frame is usually allocated on the stack, and you will pass the address to the GstVideo.VideoFrame structure allocated on the stack; GstVideo.video_frame_map will then fill in the structures with the various video-specific information you need to access the pixels of the video buffer. You can then use accessor macros such as GST_VIDEO_FRAME_COMP_DATA (not introspectable), GST_VIDEO_FRAME_PLANE_DATA (not introspectable), GST_VIDEO_FRAME_COMP_STRIDE (not introspectable), GST_VIDEO_FRAME_PLANE_STRIDE (not introspectable) etc. to get to the pixels.

       GstVideoFrame vframe;
       ...
       // set RGB pixels to black one at a time
       if (gst_video_frame_map (&vframe, video_info, video_buffer, GST_MAP_WRITE)) {
         guint8 *pixels = GST_VIDEO_FRAME_PLANE_DATA (vframe, 0);
         guint stride = GST_VIDEO_FRAME_PLANE_STRIDE (vframe, 0);
         guint pixel_stride = GST_VIDEO_FRAME_COMP_PSTRIDE (vframe, 0);

         for (h = 0; h < height; ++h) {
           for (w = 0; w < width; ++w) {
             guint8 *pixel = pixels + h * stride + w * pixel_stride;

             memset (pixel, 0, pixel_stride);
           }
         }

         gst_video_frame_unmap (&vframe);
       }
       ...

All video planes of buffer will be mapped and the pointers will be set in frame->data.

The purpose of this function is to make it easy for you to get to the video pixels in a generic way, without you having to worry too much about details such as whether the video data is allocated in one contiguous memory chunk or multiple memory chunks (e.g. one for each plane); or if custom strides and custom plane offsets are used or not (as signalled by GstVideoMeta on each buffer). This function will just fill the GstVideo.VideoFrame structure with the right values and if you use the accessor macros everything will just work and you can access the data easily. It also maps the underlying memory chunks for you.

Parameters:

`info` (GstVideo.VideoInfo) –

a GstVideo.VideoInfo

`buffer` (Gst.Buffer) –

the buffer to map

`flags` (Gst.MapFlags) –

Gst.MapFlags

Returns a tuple made of:

(bool ) –

TRUE on success.

`frame` (GstVideo.VideoFrame ) –

TRUE on success.

#### gst_video_frame_map_id

    gboolean
    gst_video_frame_map_id (GstVideoFrame * frame,
                            const GstVideoInfo * info,
                            GstBuffer * buffer,
                            gint id,
                            GstMapFlags flags)

Use info and buffer to fill in the values of frame with the video frame information of frame id.

When id is -1, the default frame is mapped. When id != -1, this function will return FALSE when there is no GstVideoMeta with that id.

All video planes of buffer will be mapped and the pointers will be set in frame->data.

Parameters:

`frame` ( [out]) –

pointer to GstVideoFrame

`info` –

a GstVideoInfo

`buffer` –

the buffer to map

`id` –

the frame id to map

`flags` –

GstMapFlags

Returns –

TRUE on success.

#### GstVideo.prototype.video_frame_map_id

    function GstVideo.prototype.video_frame_map_id(info: GstVideo.VideoInfo, buffer: Gst.Buffer, id: Number, flags: Gst.MapFlags): {
        // javascript wrapper for 'gst_video_frame_map_id'
    }

Use info and buffer to fill in the values of frame with the video frame information of frame id.

When id is -1, the default frame is mapped. When id != -1, this function will return FALSE when there is no GstVideoMeta with that id.

All video planes of buffer will be mapped and the pointers will be set in frame->data.

Parameters:

`info` (GstVideo.VideoInfo) –

a GstVideo.VideoInfo

`buffer` (Gst.Buffer) –

the buffer to map

`id` (Number) –

the frame id to map

`flags` (Gst.MapFlags) –

Gst.MapFlags

Returns a tuple made of:

(Number ) –

TRUE on success.

`frame` (GstVideo.VideoFrame ) –

TRUE on success.

#### GstVideo.video_frame_map_id

    def GstVideo.video_frame_map_id (info, buffer, id, flags):
        #python wrapper for 'gst_video_frame_map_id'

Use info and buffer to fill in the values of frame with the video frame information of frame id.

When id is -1, the default frame is mapped. When id != -1, this function will return FALSE when there is no GstVideoMeta with that id.

All video planes of buffer will be mapped and the pointers will be set in frame->data.

Parameters:

`info` (GstVideo.VideoInfo) –

a GstVideo.VideoInfo

`buffer` (Gst.Buffer) –

the buffer to map

`id` (int) –

the frame id to map

`flags` (Gst.MapFlags) –

Gst.MapFlags

Returns a tuple made of:

(bool ) –

TRUE on success.

`frame` (GstVideo.VideoFrame ) –

TRUE on success.

## Function Macros

### GST_VIDEO_BUFFER_IS_BOTTOM_FIELD

    #define GST_VIDEO_BUFFER_IS_BOTTOM_FIELD(buf) ((GST_BUFFER_FLAGS (buf) & _GST_VIDEO_BUFFER_FLAG_FIELD_MASK) == GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD)

Check if GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD is set on buf (Since: 1.18).

Parameters:

`buf` –

a GstBuffer

### GST_VIDEO_BUFFER_IS_TOP_FIELD

    #define GST_VIDEO_BUFFER_IS_TOP_FIELD(buf) ((GST_BUFFER_FLAGS (buf) & _GST_VIDEO_BUFFER_FLAG_FIELD_MASK) == GST_VIDEO_BUFFER_FLAG_TOP_FIELD)

Check if GST_VIDEO_BUFFER_FLAG_TOP_FIELD is set on buf (Since: 1.18).

Parameters:

`buf` –

a GstBuffer

### GST_VIDEO_FRAME_COMP_DATA

    #define GST_VIDEO_FRAME_COMP_DATA(f,c)    GST_VIDEO_INFO_COMP_DATA(&(f)->info,(f)->data,(c))

### GST_VIDEO_FRAME_COMP_DEPTH

    #define GST_VIDEO_FRAME_COMP_DEPTH(f,c)   GST_VIDEO_INFO_COMP_DEPTH(&(f)->info,(c))

### GST_VIDEO_FRAME_COMP_HEIGHT

    #define GST_VIDEO_FRAME_COMP_HEIGHT(f,c)  GST_VIDEO_INFO_COMP_HEIGHT(&(f)->info,(c))

### GST_VIDEO_FRAME_COMP_OFFSET

    #define GST_VIDEO_FRAME_COMP_OFFSET(f,c)  GST_VIDEO_INFO_COMP_OFFSET(&(f)->info,(c))

### GST_VIDEO_FRAME_COMP_PLANE

    #define GST_VIDEO_FRAME_COMP_PLANE(f,c)   GST_VIDEO_INFO_COMP_PLANE(&(f)->info,(c))

### GST_VIDEO_FRAME_COMP_POFFSET

    #define GST_VIDEO_FRAME_COMP_POFFSET(f,c) GST_VIDEO_INFO_COMP_POFFSET(&(f)->info,(c))

### GST_VIDEO_FRAME_COMP_PSTRIDE

    #define GST_VIDEO_FRAME_COMP_PSTRIDE(f,c) GST_VIDEO_INFO_COMP_PSTRIDE(&(f)->info,(c))

### GST_VIDEO_FRAME_COMP_STRIDE

    #define GST_VIDEO_FRAME_COMP_STRIDE(f,c)  GST_VIDEO_INFO_COMP_STRIDE(&(f)->info,(c))

### GST_VIDEO_FRAME_COMP_WIDTH

    #define GST_VIDEO_FRAME_COMP_WIDTH(f,c)   GST_VIDEO_INFO_COMP_WIDTH(&(f)->info,(c))

### GST_VIDEO_FRAME_FLAG_IS_SET

    #define GST_VIDEO_FRAME_FLAG_IS_SET(f,fl)  ((GST_VIDEO_FRAME_FLAGS(f) & (fl)) == (fl))

### GST_VIDEO_FRAME_FORMAT

    #define GST_VIDEO_FRAME_FORMAT(f)         (GST_VIDEO_INFO_FORMAT(&(f)->info))

### GST_VIDEO_FRAME_HEIGHT

    #define GST_VIDEO_FRAME_HEIGHT(f)         (GST_VIDEO_INFO_HEIGHT(&(f)->info))

### GST_VIDEO_FRAME_IS_BOTTOM_FIELD

    #define GST_VIDEO_FRAME_IS_BOTTOM_FIELD(f) (((f)->flags & _GST_VIDEO_FRAME_FLAG_FIELD_MASK) == GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD)

### GST_VIDEO_FRAME_IS_INTERLACED

    #define GST_VIDEO_FRAME_IS_INTERLACED(f)   (GST_VIDEO_FRAME_FLAG_IS_SET(f, GST_VIDEO_FRAME_FLAG_INTERLACED))

### GST_VIDEO_FRAME_IS_ONEFIELD

    #define GST_VIDEO_FRAME_IS_ONEFIELD(f)     (GST_VIDEO_FRAME_FLAG_IS_SET(f, GST_VIDEO_FRAME_FLAG_ONEFIELD))

### GST_VIDEO_FRAME_IS_RFF

    #define GST_VIDEO_FRAME_IS_RFF(f)          (GST_VIDEO_FRAME_FLAG_IS_SET(f, GST_VIDEO_FRAME_FLAG_RFF))

### GST_VIDEO_FRAME_IS_TFF

    #define GST_VIDEO_FRAME_IS_TFF(f)          (GST_VIDEO_FRAME_FLAG_IS_SET(f, GST_VIDEO_FRAME_FLAG_TFF))

### GST_VIDEO_FRAME_IS_TOP_FIELD

    #define GST_VIDEO_FRAME_IS_TOP_FIELD(f)    (GST_VIDEO_FRAME_FLAG_IS_SET(f, GST_VIDEO_FRAME_FLAG_TOP_FIELD))

### GST_VIDEO_FRAME_N_COMPONENTS

    #define GST_VIDEO_FRAME_N_COMPONENTS(f)   GST_VIDEO_INFO_N_COMPONENTS(&(f)->info)

### GST_VIDEO_FRAME_N_PLANES

    #define GST_VIDEO_FRAME_N_PLANES(f)       (GST_VIDEO_INFO_N_PLANES(&(f)->info))

### GST_VIDEO_FRAME_PLANE_DATA

    #define GST_VIDEO_FRAME_PLANE_DATA(f,p)   ((f)->data[p])

### GST_VIDEO_FRAME_PLANE_OFFSET

    #define GST_VIDEO_FRAME_PLANE_OFFSET(f,p) (GST_VIDEO_INFO_PLANE_OFFSET(&(f)->info,(p)))

### GST_VIDEO_FRAME_PLANE_STRIDE

    #define GST_VIDEO_FRAME_PLANE_STRIDE(f,p) (GST_VIDEO_INFO_PLANE_STRIDE(&(f)->info,(p)))

### GST_VIDEO_FRAME_SIZE

    #define GST_VIDEO_FRAME_SIZE(f)           (GST_VIDEO_INFO_SIZE(&(f)->info))

### GST_VIDEO_FRAME_WIDTH

    #define GST_VIDEO_FRAME_WIDTH(f)          (GST_VIDEO_INFO_WIDTH(&(f)->info))

## Enumerations

### GstVideoBufferFlags

Additional video buffer flags. These flags can potentially be used on any buffers carrying closed caption data, or video data - even encoded data.

Note that these are only valid for GstCaps of type: video/... and caption/... They can conflict with other extended buffer flags.

##### Members

`GST_VIDEO_BUFFER_FLAG_INTERLACED` (1048576) –

If the GstBuffer is interlaced. In mixed interlace-mode, this flags specifies if the frame is interlaced or progressive.

`GST_VIDEO_BUFFER_FLAG_TFF` (2097152) –

If the GstBuffer is interlaced, then the first field in the video frame is the top field. If unset, the bottom field is first.

`GST_VIDEO_BUFFER_FLAG_RFF` (4194304) –

If the GstBuffer is interlaced, then the first field (as defined by the GST_VIDEO_BUFFER_FLAG_TFF flag setting) is repeated.

`GST_VIDEO_BUFFER_FLAG_ONEFIELD` (8388608) –

If the GstBuffer is interlaced, then only the first field (as defined by the GST_VIDEO_BUFFER_FLAG_TFF flag setting) is to be displayed (Since: 1.16).

`GST_VIDEO_BUFFER_FLAG_MULTIPLE_VIEW` (16777216) –

The GstBuffer contains one or more specific views, such as left or right eye view. This flags is set on any buffer that contains non-mono content - even for streams that contain only a single viewpoint. In mixed mono / non-mono streams, the absence of the flag marks mono buffers.

`GST_VIDEO_BUFFER_FLAG_FIRST_IN_BUNDLE` (33554432) –

When conveying stereo/multiview content with frame-by-frame methods, this flag marks the first buffer in a bundle of frames that belong together.

`GST_VIDEO_BUFFER_FLAG_TOP_FIELD` (10485760) –

The video frame has the top field only. This is the same as GST_VIDEO_BUFFER_FLAG_TFF | GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16). Use GST_VIDEO_BUFFER_IS_TOP_FIELD to check for this flag.

`GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD` (8388608) –

The video frame has the bottom field only. This is the same as GST_VIDEO_BUFFER_FLAG_ONEFIELD (GST_VIDEO_BUFFER_FLAG_TFF flag unset) (Since: 1.16). Use GST_VIDEO_BUFFER_IS_BOTTOM_FIELD to check for this flag.

`GST_VIDEO_BUFFER_FLAG_MARKER` (512) –

The GstBuffer contains the end of a video field or frame boundary such as the last subframe or packet (Since: 1.18).

`GST_VIDEO_BUFFER_FLAG_LAST` (268435456) –

Offset to define more flags

### GstVideo.VideoBufferFlags

Additional video buffer flags. These flags can potentially be used on any buffers carrying closed caption data, or video data - even encoded data.

Note that these are only valid for Gst.Caps of type: video/... and caption/... They can conflict with other extended buffer flags.

##### Members

`GstVideo.VideoBufferFlags.INTERLACED` (1048576) –

If the Gst.Buffer is interlaced. In mixed interlace-mode, this flags specifies if the frame is interlaced or progressive.

`GstVideo.VideoBufferFlags.TFF` (2097152) –

If the Gst.Buffer is interlaced, then the first field in the video frame is the top field. If unset, the bottom field is first.

`GstVideo.VideoBufferFlags.RFF` (4194304) –

If the Gst.Buffer is interlaced, then the first field (as defined by the GstVideo.VideoBufferFlags.TFF flag setting) is repeated.

`GstVideo.VideoBufferFlags.ONEFIELD` (8388608) –

If the Gst.Buffer is interlaced, then only the first field (as defined by the GstVideo.VideoBufferFlags.TFF flag setting) is to be displayed (Since: 1.16).

`GstVideo.VideoBufferFlags.MULTIPLE_VIEW` (16777216) –

The Gst.Buffer contains one or more specific views, such as left or right eye view. This flags is set on any buffer that contains non-mono content - even for streams that contain only a single viewpoint. In mixed mono / non-mono streams, the absence of the flag marks mono buffers.

`GstVideo.VideoBufferFlags.FIRST_IN_BUNDLE` (33554432) –

When conveying stereo/multiview content with frame-by-frame methods, this flag marks the first buffer in a bundle of frames that belong together.

`GstVideo.VideoBufferFlags.TOP_FIELD` (10485760) –

The video frame has the top field only. This is the same as GST_VIDEO_BUFFER_FLAG_TFF | GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16). Use GST_VIDEO_BUFFER_IS_TOP_FIELD (not introspectable) to check for this flag.

`GstVideo.VideoBufferFlags.BOTTOM_FIELD` (8388608) –

The video frame has the bottom field only. This is the same as GST_VIDEO_BUFFER_FLAG_ONEFIELD (GST_VIDEO_BUFFER_FLAG_TFF flag unset) (Since: 1.16). Use GST_VIDEO_BUFFER_IS_BOTTOM_FIELD (not introspectable) to check for this flag.

`GstVideo.VideoBufferFlags.MARKER` (512) –

The Gst.Buffer contains the end of a video field or frame boundary such as the last subframe or packet (Since: 1.18).

`GstVideo.VideoBufferFlags.LAST` (268435456) –

Offset to define more flags

### GstVideo.VideoBufferFlags

Additional video buffer flags. These flags can potentially be used on any buffers carrying closed caption data, or video data - even encoded data.

Note that these are only valid for Gst.Caps of type: video/... and caption/... They can conflict with other extended buffer flags.

##### Members

`GstVideo.VideoBufferFlags.INTERLACED` (1048576) –

If the Gst.Buffer is interlaced. In mixed interlace-mode, this flags specifies if the frame is interlaced or progressive.

`GstVideo.VideoBufferFlags.TFF` (2097152) –

If the Gst.Buffer is interlaced, then the first field in the video frame is the top field. If unset, the bottom field is first.

`GstVideo.VideoBufferFlags.RFF` (4194304) –

If the Gst.Buffer is interlaced, then the first field (as defined by the GstVideo.VideoBufferFlags.TFF flag setting) is repeated.

`GstVideo.VideoBufferFlags.ONEFIELD` (8388608) –

If the Gst.Buffer is interlaced, then only the first field (as defined by the GstVideo.VideoBufferFlags.TFF flag setting) is to be displayed (Since: 1.16).

`GstVideo.VideoBufferFlags.MULTIPLE_VIEW` (16777216) –

The Gst.Buffer contains one or more specific views, such as left or right eye view. This flags is set on any buffer that contains non-mono content - even for streams that contain only a single viewpoint. In mixed mono / non-mono streams, the absence of the flag marks mono buffers.

`GstVideo.VideoBufferFlags.FIRST_IN_BUNDLE` (33554432) –

When conveying stereo/multiview content with frame-by-frame methods, this flag marks the first buffer in a bundle of frames that belong together.

`GstVideo.VideoBufferFlags.TOP_FIELD` (10485760) –

The video frame has the top field only. This is the same as GST_VIDEO_BUFFER_FLAG_TFF | GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16). Use GST_VIDEO_BUFFER_IS_TOP_FIELD (not introspectable) to check for this flag.

`GstVideo.VideoBufferFlags.BOTTOM_FIELD` (8388608) –

The video frame has the bottom field only. This is the same as GST_VIDEO_BUFFER_FLAG_ONEFIELD (GST_VIDEO_BUFFER_FLAG_TFF flag unset) (Since: 1.16). Use GST_VIDEO_BUFFER_IS_BOTTOM_FIELD (not introspectable) to check for this flag.

`GstVideo.VideoBufferFlags.MARKER` (512) –

The Gst.Buffer contains the end of a video field or frame boundary such as the last subframe or packet (Since: 1.18).

`GstVideo.VideoBufferFlags.LAST` (268435456) –

Offset to define more flags

### GstVideoFrameFlags

Extra video frame flags

##### Members

`GST_VIDEO_FRAME_FLAG_NONE` (0) –

no flags

`GST_VIDEO_FRAME_FLAG_INTERLACED` (1) –

The video frame is interlaced. In mixed interlace-mode, this flag specifies if the frame is interlaced or progressive.

`GST_VIDEO_FRAME_FLAG_TFF` (2) –

The video frame has the top field first

`GST_VIDEO_FRAME_FLAG_RFF` (4) –

The video frame has the repeat flag

`GST_VIDEO_FRAME_FLAG_ONEFIELD` (8) –

The video frame has one field

`GST_VIDEO_FRAME_FLAG_MULTIPLE_VIEW` (16) –

The video contains one or more non-mono views

`GST_VIDEO_FRAME_FLAG_FIRST_IN_BUNDLE` (32) –

The video frame is the first in a set of corresponding views provided as sequential frames.

`GST_VIDEO_FRAME_FLAG_TOP_FIELD` (10) –

The video frame has the top field only. This is the same as GST_VIDEO_FRAME_FLAG_TFF | GST_VIDEO_FRAME_FLAG_ONEFIELD (Since: 1.16).

`GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD` (8) –

The video frame has the bottom field only. This is the same as GST_VIDEO_FRAME_FLAG_ONEFIELD (GST_VIDEO_FRAME_FLAG_TFF flag unset) (Since: 1.16).

### GstVideo.VideoFrameFlags

Extra video frame flags

##### Members

`GstVideo.VideoFrameFlags.NONE` (0) –

no flags

`GstVideo.VideoFrameFlags.INTERLACED` (1) –

The video frame is interlaced. In mixed interlace-mode, this flag specifies if the frame is interlaced or progressive.

`GstVideo.VideoFrameFlags.TFF` (2) –

The video frame has the top field first

`GstVideo.VideoFrameFlags.RFF` (4) –

The video frame has the repeat flag

`GstVideo.VideoFrameFlags.ONEFIELD` (8) –

The video frame has one field

`GstVideo.VideoFrameFlags.MULTIPLE_VIEW` (16) –

The video contains one or more non-mono views

`GstVideo.VideoFrameFlags.FIRST_IN_BUNDLE` (32) –

The video frame is the first in a set of corresponding views provided as sequential frames.

`GstVideo.VideoFrameFlags.TOP_FIELD` (10) –

The video frame has the top field only. This is the same as GST_VIDEO_FRAME_FLAG_TFF | GST_VIDEO_FRAME_FLAG_ONEFIELD (Since: 1.16).

`GstVideo.VideoFrameFlags.BOTTOM_FIELD` (8) –

The video frame has the bottom field only. This is the same as GST_VIDEO_FRAME_FLAG_ONEFIELD (GST_VIDEO_FRAME_FLAG_TFF flag unset) (Since: 1.16).

### GstVideo.VideoFrameFlags

Extra video frame flags

##### Members

`GstVideo.VideoFrameFlags.NONE` (0) –

no flags

`GstVideo.VideoFrameFlags.INTERLACED` (1) –

The video frame is interlaced. In mixed interlace-mode, this flag specifies if the frame is interlaced or progressive.

`GstVideo.VideoFrameFlags.TFF` (2) –

The video frame has the top field first

`GstVideo.VideoFrameFlags.RFF` (4) –

The video frame has the repeat flag

`GstVideo.VideoFrameFlags.ONEFIELD` (8) –

The video frame has one field

`GstVideo.VideoFrameFlags.MULTIPLE_VIEW` (16) –

The video contains one or more non-mono views

`GstVideo.VideoFrameFlags.FIRST_IN_BUNDLE` (32) –

The video frame is the first in a set of corresponding views provided as sequential frames.

`GstVideo.VideoFrameFlags.TOP_FIELD` (10) –

The video frame has the top field only. This is the same as GST_VIDEO_FRAME_FLAG_TFF | GST_VIDEO_FRAME_FLAG_ONEFIELD (Since: 1.16).

`GstVideo.VideoFrameFlags.BOTTOM_FIELD` (8) –

The video frame has the bottom field only. This is the same as GST_VIDEO_FRAME_FLAG_ONEFIELD (GST_VIDEO_FRAME_FLAG_TFF flag unset) (Since: 1.16).

### GstVideoFrameMapFlags

Additional mapping flags for gst_video_frame_map.

##### Members

`GST_VIDEO_FRAME_MAP_FLAG_NO_REF` (65536) –

Don't take another reference of the buffer and store it in the GstVideoFrame. This makes sure that the buffer stays writable while the frame is mapped, but requires that the buffer reference stays valid until the frame is unmapped again.

`GST_VIDEO_FRAME_MAP_FLAG_LAST` (16777216) –

Offset to define more flags

Since : 1.6

### GstVideo.VideoFrameMapFlags

Additional mapping flags for GstVideo.prototype.video_frame_map.

##### Members

`GstVideo.VideoFrameMapFlags.NO_REF` (65536) –

Don't take another reference of the buffer and store it in the GstVideoFrame. This makes sure that the buffer stays writable while the frame is mapped, but requires that the buffer reference stays valid until the frame is unmapped again.

`GstVideo.VideoFrameMapFlags.LAST` (16777216) –

Offset to define more flags

Since : 1.6

### GstVideo.VideoFrameMapFlags

Additional mapping flags for GstVideo.video_frame_map.

##### Members

`GstVideo.VideoFrameMapFlags.NO_REF` (65536) –

Don't take another reference of the buffer and store it in the GstVideoFrame. This makes sure that the buffer stays writable while the frame is mapped, but requires that the buffer reference stays valid until the frame is unmapped again.

`GstVideo.VideoFrameMapFlags.LAST` (16777216) –

Offset to define more flags

Since : 1.6

## Constants

### GST_VIDEO_FRAME_INIT

    #define GST_VIDEO_FRAME_INIT { { NULL, }, }

Initializer for GstVideoFrame

Since : 1.22

### _GST_VIDEO_BUFFER_FLAG_FIELD_MASK

    #define _GST_VIDEO_BUFFER_FLAG_FIELD_MASK GST_VIDEO_BUFFER_FLAG_TOP_FIELD

### _GST_VIDEO_FRAME_FLAG_FIELD_MASK

    #define _GST_VIDEO_FRAME_FLAG_FIELD_MASK GST_VIDEO_FRAME_FLAG_TOP_FIELD

The results of the search are