GStreamer Bad Plugins 1.0 Library Reference Manual: gstmpegvideometa

## gstmpegvideometa gstmpegvideometa |

## Functions

#define | GST_MPEG_VIDEO_META_API_TYPE
#define | GST_MPEG_VIDEO_META_INFO
GstMpegVideoMeta * | gst_buffer_add_mpeg_video_meta ()
#define | gst_buffer_get_mpeg_video_meta()
const GstMetaInfo * | gst_mpeg_video_meta_get_info ()

## Types and Values

struct | GstMpegVideoMeta

## Object Hierarchy

## Includes

    #include <gst/codecparsers/gstmpegvideometa.h>

## Description

## Functions

### GST_MPEG_VIDEO_META_API_TYPE

    #define GST_MPEG_VIDEO_META_API_TYPE  (gst_mpeg_video_meta_api_get_type())

### GST_MPEG_VIDEO_META_INFO

    #define GST_MPEG_VIDEO_META_INFO  (gst_mpeg_video_meta_get_info())

### gst_buffer_add_mpeg_video_meta ()

    GstMpegVideoMeta *
    gst_buffer_add_mpeg_video_meta (GstBuffer *buffer,
                                    const GstMpegVideoSequenceHdr *seq_hdr,
                                    const GstMpegVideoSequenceExt *seq_ext,
                                    const GstMpegVideoSequenceDisplayExt *disp_ext,
                                    const GstMpegVideoPictureHdr *pic_hdr,
                                    const GstMpegVideoPictureExt *pic_ext,
                                    const GstMpegVideoQuantMatrixExt *quant_ext);

Creates and adds a GstMpegVideoMeta to a `buffer` .

Provided structures must either be `NULL` or GSlice-allocated.

#### Parameters

buffer | a GstBuffer |

#### Returns

a newly created GstMpegVideoMeta.

[transfer full]

Since 1.2

### gst_buffer_get_mpeg_video_meta()

    #define gst_buffer_get_mpeg_video_meta(b) ((GstMpegVideoMeta*)gst_buffer_get_meta((b),GST_MPEG_VIDEO_META_API_TYPE))

### gst_mpeg_video_meta_get_info ()

    const GstMetaInfo *
    gst_mpeg_video_meta_get_info (void);

## Types and Values

### struct GstMpegVideoMeta

    struct GstMpegVideoMeta {
      GstMeta            meta;

      GstMpegVideoSequenceHdr        *sequencehdr;
      GstMpegVideoSequenceExt        *sequenceext;
      GstMpegVideoSequenceDisplayExt *sequencedispext;
      GstMpegVideoPictureHdr         *pichdr;
      GstMpegVideoPictureExt         *picext;
      GstMpegVideoQuantMatrixExt     *quantext;

      guint num_slices;
      gsize slice_offset;
    };

Extra buffer metadata describing the contents of a MPEG1/2 Video frame

Can be used by elements (mainly decoders) to avoid having to parse Mpeg video 1/2 packets if it can be done upstream.

The various fields are only valid during the lifetime of the GstMpegVideoMeta. If elements wish to use those for longer, they are required to make a copy.

#### Members

GstMeta `meta`; | parent GstMeta |
GstMpegVideoSequenceHdr *`sequencehdr`; | the GstMpegVideoSequenceHdr if present in the buffer |
GstMpegVideoSequenceExt *`sequenceext`; | the GstMpegVideoSequenceExt if present in the buffer |
GstMpegVideoSequenceDisplayExt *`sequencedispext`; | the GstMpegVideoSequenceDisplayExt if present in the buffer. |
GstMpegVideoPictureHdr *`pichdr`; | the GstMpegVideoPictureHdr if present in the buffer. |
GstMpegVideoPictureExt *`picext`; | the GstMpegVideoPictureExt if present in the buffer. |
GstMpegVideoQuantMatrixExt *`quantext`; | the GstMpegVideoQuantMatrixExt if present in the buffer |
guint `num_slices`; |  |
gsize `slice_offset`; |  |

Since 1.2