# GstVP8Decoder

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstVideoDecoder
                        ╰──GstVp8Decoder

The opaque GstVp8Decoder data structure.

### Class structure

#### GstVp8DecoderClass

##### Fields

`parent_class` (GstVideoDecoderClass) –
No description available

### GstCodecs.Vp8DecoderClass

##### Attributes

`parent_class` (GstVideo.VideoDecoderClass) –
No description available

### GstCodecs.Vp8DecoderClass

##### Attributes

`parent_class` (GstVideo.VideoDecoderClass) –
No description available

## GstCodecs.Vp8Decoder

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.Element
                    ╰──GstVideo.VideoDecoder
                        ╰──GstCodecs.Vp8Decoder

The opaque GstCodecs.Vp8Decoder data structure.

## GstCodecs.Vp8Decoder

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.Element
                    ╰──GstVideo.VideoDecoder
                        ╰──GstCodecs.Vp8Decoder

The opaque GstCodecs.Vp8Decoder data structure.

### Virtual Methods

#### decode_picture

    gboolean
    decode_picture (GstVp8Decoder * decoder,
                    GstVp8Picture * picture,
                    GstVp8Parser * parser)

Parameters:

`decoder` –
No description available
`picture` –
No description available
`parser` –
No description available
Returns –
No description available

#### end_picture

    gboolean
    end_picture (GstVp8Decoder * decoder,
                 GstVp8Picture * picture)

Optional. Called per one GstVp8Picture to notify subclass to finish decoding process for the GstVp8Picture

Parameters:

`decoder` –
No description available
`picture` –
No description available
Returns –
No description available

#### vfunc_end_picture

    function vfunc_end_picture(decoder: GstCodecs.Vp8Decoder, picture: GstCodecs.Vp8Picture): {
        // javascript implementation of the 'end_picture' virtual method
    }

Optional. Called per one GstCodecs.Vp8Picture to notify subclass to finish decoding process for the GstCodecs.Vp8Picture

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( Number ) –
No description available

#### do_end_picture

    def do_end_picture (decoder, picture):
        #python implementation of the 'end_picture' virtual method

Optional. Called per one GstCodecs.Vp8Picture to notify subclass to finish decoding process for the GstCodecs.Vp8Picture

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( bool ) –
No description available

#### new_picture

    gboolean
    new_picture (GstVp8Decoder * decoder,
                 GstVideoCodecFrame * frame,
                 GstVp8Picture * picture)

Optional. Called whenever new GstVp8Picture is created. Subclass can set implementation specific user data on the GstVp8Picture via gst_vp8_picture_set_user_data

Parameters:

`decoder` –
No description available
`frame` –
No description available
`picture` –
No description available
Returns –
No description available

#### vfunc_new_picture

    function vfunc_new_picture(decoder: GstCodecs.Vp8Decoder, frame: GstVideo.VideoCodecFrame, picture: GstCodecs.Vp8Picture): {
        // javascript implementation of the 'new_picture' virtual method
    }

Optional. Called whenever new GstCodecs.Vp8Picture is created. Subclass can set implementation specific user data on the GstCodecs.Vp8Picture via GstCodecs.Vp8Picture.prototype.set_user_data

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`frame` ( GstVideo.VideoCodecFrame ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( Number ) –
No description available

#### do_new_picture

    def do_new_picture (decoder, frame, picture):
        #python implementation of the 'new_picture' virtual method

Optional. Called whenever new GstCodecs.Vp8Picture is created. Subclass can set implementation specific user data on the GstCodecs.Vp8Picture via GstCodecs.Vp8Picture.set_user_data

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`frame` ( GstVideo.VideoCodecFrame ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( bool ) –
No description available

#### new_sequence

    gboolean
    new_sequence (GstVp8Decoder * decoder,
                  const GstVp8FrameHdr * frame_hdr)

Notifies subclass of SPS update

Parameters:

`decoder` –
No description available
`frame_hdr` –
No description available
Returns –
No description available

#### output_picture

    GstFlowReturn
    output_picture (GstVp8Decoder * decoder,
                    GstVideoCodecFrame * frame,
                    GstVp8Picture * picture)

Called with a GstVp8Picture which is required to be outputted. Subclass can retrieve parent GstVideoCodecFrame by using gst_video_decoder_get_frame with system_frame_number and the GstVideoCodecFrame must be consumed by subclass via gst_video_decoder_{finish,drop,release}_frame.

Parameters:

`decoder` –
No description available
`frame` –
No description available
`picture` –
No description available
Returns –
No description available

#### vfunc_output_picture

    function vfunc_output_picture(decoder: GstCodecs.Vp8Decoder, frame: GstVideo.VideoCodecFrame, picture: GstCodecs.Vp8Picture): {
        // javascript implementation of the 'output_picture' virtual method
    }

Called with a GstCodecs.Vp8Picture which is required to be outputted. Subclass can retrieve parent GstVideo.VideoCodecFrame by using GstVideo.VideoDecoder.prototype.get_frame with system_frame_number and the GstVideo.VideoCodecFrame must be consumed by subclass via gst_video_decoder_{finish,drop,release}_frame.

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`frame` ( GstVideo.VideoCodecFrame ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

#### do_output_picture

    def do_output_picture (decoder, frame, picture):
        #python implementation of the 'output_picture' virtual method

Called with a GstCodecs.Vp8Picture which is required to be outputted. Subclass can retrieve parent GstVideo.VideoCodecFrame by using GstVideo.VideoDecoder.get_frame with system_frame_number and the GstVideo.VideoCodecFrame must be consumed by subclass via gst_video_decoder_{finish,drop,release}_frame.

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`frame` ( GstVideo.VideoCodecFrame ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( Gst.FlowReturn ) –
No description available

#### start_picture

    gboolean
    start_picture (GstVp8Decoder * decoder,
                   GstVp8Picture * picture)

Optional. Called per one GstVp8Picture to notify subclass to prepare decoding process for the GstVp8Picture

Parameters:

`decoder` –
No description available
`picture` –
No description available
Returns –
No description available

#### vfunc_start_picture

    function vfunc_start_picture(decoder: GstCodecs.Vp8Decoder, picture: GstCodecs.Vp8Picture): {
        // javascript implementation of the 'start_picture' virtual method
    }

Optional. Called per one GstCodecs.Vp8Picture to notify subclass to prepare decoding process for the GstCodecs.Vp8Picture

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( Number ) –
No description available

#### do_start_picture

    def do_start_picture (decoder, picture):
        #python implementation of the 'start_picture' virtual method

Optional. Called per one GstCodecs.Vp8Picture to notify subclass to prepare decoding process for the GstCodecs.Vp8Picture

Parameters:

`decoder` ( GstCodecs.Vp8Decoder ) –
No description available
`picture` ( GstCodecs.Vp8Picture ) –
No description available
Returns ( bool ) –
No description available

## GstVp8Picture

### Members

`parent` (GstMiniObject) –
No description available
`pts` (GstClockTime) –
No description available
`system_frame_number` (guint32) –
No description available
`frame_hdr` (GstVp8FrameHdr) –
No description available
`data` (const guint8 *) –
No description available
`size` (gsize) –
No description available
`user_data` (gpointer) –
No description available
`notify` (GDestroyNotify) –
No description available

## GstCodecs.Vp8Picture

### Members

`parent` (Gst.MiniObject) –
No description available
`pts` (Number) –
No description available
`system_frame_number` (Number) –
No description available
`frame_hdr (not introspectable)` (object) –
No description available
`data` (Number) –
No description available
`size` (Number) –
No description available
`user_data` (Object) –
No description available
`notify` (GLib.DestroyNotify) –
No description available

## GstCodecs.Vp8Picture

### Members

`parent` (Gst.MiniObject) –
No description available
`pts` (int) –
No description available
`system_frame_number` (int) –
No description available
`frame_hdr (not introspectable)` (object) –
No description available
`data` (int) –
No description available
`size` (int) –
No description available
`user_data` (object) –
No description available
`notify` (GLib.DestroyNotify) –
No description available

### Constructors

#### gst_vp8_picture_new

    GstVp8Picture *
    gst_vp8_picture_new ()

Create new GstVp8Picture

Returns –

a new GstVp8Picture

#### GstCodecs.Vp8Picture.prototype.new

    function GstCodecs.Vp8Picture.prototype.new(): {
        // javascript wrapper for 'gst_vp8_picture_new'
    }

Create new GstCodecs.Vp8Picture

Returns ( GstCodecs.Vp8Picture ) –

a new GstCodecs.Vp8Picture

#### GstCodecs.Vp8Picture.new

    def GstCodecs.Vp8Picture.new ():
        #python wrapper for 'gst_vp8_picture_new'

Create new GstCodecs.Vp8Picture

Returns ( GstCodecs.Vp8Picture ) –

a new GstCodecs.Vp8Picture

### Methods

#### gst_vp8_picture_get_user_data

    gpointer
    gst_vp8_picture_get_user_data (GstVp8Picture * picture)

Gets private data set on the picture via gst_vp8_picture_set_user_data previously.

Parameters:

`picture` –

a GstVp8Picture

Returns ( [transfer: none] ) –

The previously set user_data

#### GstCodecs.Vp8Picture.prototype.get_user_data

    function GstCodecs.Vp8Picture.prototype.get_user_data(): {
        // javascript wrapper for 'gst_vp8_picture_get_user_data'
    }

Gets private data set on the picture via GstCodecs.Vp8Picture.prototype.set_user_data previously.

Parameters:

`picture` ( GstCodecs.Vp8Picture ) –

a GstCodecs.Vp8Picture

Returns ( Object ) –

The previously set user_data

#### GstCodecs.Vp8Picture.get_user_data

    def GstCodecs.Vp8Picture.get_user_data (self):
        #python wrapper for 'gst_vp8_picture_get_user_data'

Gets private data set on the picture via GstCodecs.Vp8Picture.set_user_data previously.

Parameters:

`picture` ( GstCodecs.Vp8Picture ) –

a GstCodecs.Vp8Picture

Returns ( object ) –

The previously set user_data

#### gst_vp8_picture_set_user_data

    gst_vp8_picture_set_user_data (GstVp8Picture * picture,
                                   gpointer user_data,
                                   GDestroyNotify notify)

Sets user_data on the picture and the GDestroyNotify that will be called when the picture is freed.

If a user_data was previously set, then the previous set notify will be called before the user_data is replaced.

Parameters:

`picture` –

a GstVp8Picture

`user_data` –

private data

`notify` ( [closure] ) –

a GDestroyNotify

#### GstCodecs.Vp8Picture.prototype.set_user_data

    function GstCodecs.Vp8Picture.prototype.set_user_data(user_data: Object, notify: GLib.DestroyNotify): {
        // javascript wrapper for 'gst_vp8_picture_set_user_data'
    }

Sets user_data on the picture and the GLib.DestroyNotify that will be called when the picture is freed.

If a user_data was previously set, then the previous set notify will be called before the user_data is replaced.

Parameters:

`picture` ( GstCodecs.Vp8Picture ) –

a GstCodecs.Vp8Picture

`user_data` ( Object ) –

private data

`notify` ( GLib.DestroyNotify ) –

a GLib.DestroyNotify

#### GstCodecs.Vp8Picture.set_user_data

    def GstCodecs.Vp8Picture.set_user_data (self, *user_data, notify):
        #python wrapper for 'gst_vp8_picture_set_user_data'

Sets user_data on the picture and the GLib.DestroyNotify that will be called when the picture is freed.

If a user_data was previously set, then the previous set notify will be called before the user_data is replaced.

Parameters:

`picture` ( GstCodecs.Vp8Picture ) –

a GstCodecs.Vp8Picture

`user_data` ( variadic ) –

private data

`notify` ( GLib.DestroyNotify ) –

a GLib.DestroyNotify

## Function Macros

### GST_VP8_DECODER_CAST

    #define GST_VP8_DECODER_CAST(obj)       ((GstVP8Decoder*)obj)

### GST_VP8_PICTURE_CAST

    #define GST_VP8_PICTURE_CAST(obj) (GST_VP8_PICTURE(obj))

The results of the search are