# GstVulkanDecoder

GstVulkanOperation abstracts a video decoding operation.

## GstVulkanDecoder

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstVulkanDecoder

### Members

`parent` (GstObject) –

the parent GstObject

`queue` (GstVulkanQueue *) –

the GstVulkanQueue to command buffers will be allocated from

`codec` (guint) –

the configured video codec operation

`profile` (GstVulkanVideoProfile) –

the configured GstVulkanVideoProfile

`input_buffer` (GstBuffer *) –

the buffer to upload the bitstream to decode

`layered_buffer` (GstBuffer *) –
No description available
`dedicated_dpb` (gboolean) –

if decoder needs a dedicated DPB

`layered_dpb` (gboolean) –

if decoder's dedicated DPB has to be a layered image

Since : 1.24

### Class structure

#### GstVulkanDecoderClass

##### Fields

`parent` (GstObjectClass) –

the parent GstObject

Since : 1.24

### GstVulkan.VulkanDecoderClass

##### Attributes

`parent` (Gst.ObjectClass) –

the parent Gst.Object

Since : 1.24

### GstVulkan.VulkanDecoderClass

##### Attributes

`parent` (Gst.ObjectClass) –

the parent Gst.Object

Since : 1.24

## GstVulkan.VulkanDecoder

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──GstVulkan.VulkanDecoder

### Members

`parent` (Gst.Object) –

the parent Gst.Object

`queue` (GstVulkan.VulkanQueue) –

the GstVulkan.VulkanQueue to command buffers will be allocated from

`codec` (Number) –

the configured video codec operation

`profile` (GstVulkan.VulkanVideoProfile) –

the configured GstVulkan.VulkanVideoProfile

`input_buffer` (Gst.Buffer) –

the buffer to upload the bitstream to decode

`layered_buffer` (Gst.Buffer) –
No description available
`dedicated_dpb` (Number) –

if decoder needs a dedicated DPB

`layered_dpb` (Number) –

if decoder's dedicated DPB has to be a layered image

Since : 1.24

## GstVulkan.VulkanDecoder

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──GstVulkan.VulkanDecoder

### Members

`parent` (Gst.Object) –

the parent Gst.Object

`queue` (GstVulkan.VulkanQueue) –

the GstVulkan.VulkanQueue to command buffers will be allocated from

`codec` (int) –

the configured video codec operation

`profile` (GstVulkan.VulkanVideoProfile) –

the configured GstVulkan.VulkanVideoProfile

`input_buffer` (Gst.Buffer) –

the buffer to upload the bitstream to decode

`layered_buffer` (Gst.Buffer) –
No description available
`dedicated_dpb` (bool) –

if decoder needs a dedicated DPB

`layered_dpb` (bool) –

if decoder's dedicated DPB has to be a layered image

Since : 1.24

### Methods

#### gst_vulkan_decoder_append_slice

    gboolean
    gst_vulkan_decoder_append_slice (GstVulkanDecoder * self,
                                     GstVulkanDecoderPicture * pic,
                                     const guint8* data,
                                     size_t size,
                                     gboolean add_startcode)

Appends slices's data bitstream into pic internal input buffer.

Parameters:

`self` –

a GstVulkanDecoder

`pic` –

a GstVulkanDecoderPicture

`data` –

slice's bitstream data

`size` –

the size of data

`add_startcode` –

whether add start code

Returns –

whether the slice data were added.

#### GstVulkan.VulkanDecoder.prototype.append_slice

    function GstVulkan.VulkanDecoder.prototype.append_slice(pic: GstVulkan.VulkanDecoderPicture, data: Number, size: Number, add_startcode: Number): {
        // javascript wrapper for 'gst_vulkan_decoder_append_slice'
    }

Appends slices's data bitstream into pic internal input buffer.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

`data` (Number) –

slice's bitstream data

`size` (Number) –

the size of data

`add_startcode` (Number) –

whether add start code

Returns (Number) –

whether the slice data were added.

#### GstVulkan.VulkanDecoder.append_slice

    def GstVulkan.VulkanDecoder.append_slice (self, pic, data, size, add_startcode):
        #python wrapper for 'gst_vulkan_decoder_append_slice'

Appends slices's data bitstream into pic internal input buffer.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

`data` (int) –

slice's bitstream data

`size` (int) –

the size of data

`add_startcode` (bool) –

whether add start code

Returns (bool) –

whether the slice data were added.

#### gst_vulkan_decoder_caps

    gboolean
    gst_vulkan_decoder_caps (GstVulkanDecoder * self,
                             GstVulkanVideoCapabilities * caps)

Gets the Vulkan decoding capabilities of the current video session.

Parameters:

`self` –

a GstVulkanDecoder

`caps` ( [out]) –

a GstVulkanVideoCapabilities

Returns –

whether the capabilities were fetched correctly.

#### GstVulkan.VulkanDecoder.prototype.caps

    function GstVulkan.VulkanDecoder.prototype.caps(): {
        // javascript wrapper for 'gst_vulkan_decoder_caps'
    }

Gets the Vulkan decoding capabilities of the current video session.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns a tuple made of:

(Number ) –

whether the capabilities were fetched correctly.

`caps` (GstVulkan.VulkanVideoCapabilities ) –

whether the capabilities were fetched correctly.

#### GstVulkan.VulkanDecoder.caps

    def GstVulkan.VulkanDecoder.caps (self):
        #python wrapper for 'gst_vulkan_decoder_caps'

Gets the Vulkan decoding capabilities of the current video session.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns a tuple made of:

(bool ) –

whether the capabilities were fetched correctly.

`caps` (GstVulkan.VulkanVideoCapabilities ) –

whether the capabilities were fetched correctly.

#### gst_vulkan_decoder_create_dpb_pool

    gboolean
    gst_vulkan_decoder_create_dpb_pool (GstVulkanDecoder * self,
                                        GstCaps * caps)

Instantiates an internal Vulkan image pool for driver decoders whose output buffers cannot be used as DPB buffers.

Parameters:

`self` –

a GstVulkanDecoder

`caps` –

the GstCaps of the DP

Returns –

whether the pool was created.

#### GstVulkan.VulkanDecoder.prototype.create_dpb_pool

    function GstVulkan.VulkanDecoder.prototype.create_dpb_pool(caps: Gst.Caps): {
        // javascript wrapper for 'gst_vulkan_decoder_create_dpb_pool'
    }

Instantiates an internal Vulkan image pool for driver decoders whose output buffers cannot be used as DPB buffers.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`caps` (Gst.Caps) –

the Gst.Caps of the DP

Returns (Number) –

whether the pool was created.

#### GstVulkan.VulkanDecoder.create_dpb_pool

    def GstVulkan.VulkanDecoder.create_dpb_pool (self, caps):
        #python wrapper for 'gst_vulkan_decoder_create_dpb_pool'

Instantiates an internal Vulkan image pool for driver decoders whose output buffers cannot be used as DPB buffers.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`caps` (Gst.Caps) –

the Gst.Caps of the DP

Returns (bool) –

whether the pool was created.

#### gst_vulkan_decoder_decode

    gboolean
    gst_vulkan_decoder_decode (GstVulkanDecoder * self,
                               GstVulkanDecoderPicture * pic,
                               GError ** error)

Decodes pic.

Return: whether pic was decoded correctly. It might fill error.

Parameters:

`self` –

a GstVulkanDecoder

`pic` –

a GstVulkanDecoderPicture

`error` –

a GError

Returns –
No description available

#### GstVulkan.VulkanDecoder.prototype.decode

    function GstVulkan.VulkanDecoder.prototype.decode(pic: GstVulkan.VulkanDecoderPicture): {
        // javascript wrapper for 'gst_vulkan_decoder_decode'
    }

Decodes pic.

Return: whether pic was decoded correctly. It might fill error.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

Returns (Number) –
No description available

#### GstVulkan.VulkanDecoder.decode

    @raises(GLib.GError)
    def GstVulkan.VulkanDecoder.decode (self, pic):
        #python wrapper for 'gst_vulkan_decoder_decode'

Decodes pic.

Return: whether pic was decoded correctly. It might fill error.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

Returns (bool) –
No description available

#### gst_vulkan_decoder_flush

    gboolean
    gst_vulkan_decoder_flush (GstVulkanDecoder * self,
                              GError ** error)

Initializes the decoder at driver level and set its DPB slots to the inactive state.

Parameters:

`self` –

a GstVulkanDecoder

`error` –

a GError

Returns –

whether flush was successful

#### GstVulkan.VulkanDecoder.prototype.flush

    function GstVulkan.VulkanDecoder.prototype.flush(): {
        // javascript wrapper for 'gst_vulkan_decoder_flush'
    }

Initializes the decoder at driver level and set its DPB slots to the inactive state.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (Number) –

whether flush was successful

#### GstVulkan.VulkanDecoder.flush

    @raises(GLib.GError)
    def GstVulkan.VulkanDecoder.flush (self):
        #python wrapper for 'gst_vulkan_decoder_flush'

Initializes the decoder at driver level and set its DPB slots to the inactive state.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (bool) –

whether flush was successful

#### gst_vulkan_decoder_is_started

    gboolean
    gst_vulkan_decoder_is_started (GstVulkanDecoder * self)

Parameters:

`self` –

a GstVulkanDecoder

Returns –

whether gst_vulkan_decoder_start was called correctly previously.

#### GstVulkan.VulkanDecoder.prototype.is_started

    function GstVulkan.VulkanDecoder.prototype.is_started(): {
        // javascript wrapper for 'gst_vulkan_decoder_is_started'
    }

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (Number) –

whether GstVulkan.VulkanDecoder.prototype.start was called correctly previously.

#### GstVulkan.VulkanDecoder.is_started

    def GstVulkan.VulkanDecoder.is_started (self):
        #python wrapper for 'gst_vulkan_decoder_is_started'

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (bool) –

whether GstVulkan.VulkanDecoder.start was called correctly previously.

#### gst_vulkan_decoder_out_format

    gboolean
    gst_vulkan_decoder_out_format (GstVulkanDecoder * self,
                                   VkVideoFormatPropertiesKHR* format)

Gets the Vulkan format properties of the output frames.

Parameters:

`self` –

a GstVulkanDecoder

`format` –

the Vulkan output format properties

Returns –

whether the format was fetched.

#### gst_vulkan_decoder_picture_create_view

    GstVulkanImageView *
    gst_vulkan_decoder_picture_create_view (GstVulkanDecoder * self,
                                            GstBuffer * buf,
                                            gboolean is_out)

Creates a GstVulkanImageView for buf for decoding, with the internal Ycbcr sampler, if available.

Parameters:

`self` –

a GstVulkanDecoder

`buf` –

a GstBuffer

`is_out` –

if buf is for output or for DPB

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

the GstVulkanImageView.

#### GstVulkan.VulkanDecoder.prototype.picture_create_view

    function GstVulkan.VulkanDecoder.prototype.picture_create_view(buf: Gst.Buffer, is_out: Number): {
        // javascript wrapper for 'gst_vulkan_decoder_picture_create_view'
    }

Creates a GstVulkan.VulkanImageView for buf for decoding, with the internal Ycbcr sampler, if available.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`buf` (Gst.Buffer) –

a Gst.Buffer

`is_out` (Number) –

if buf is for output or for DPB

Returns (GstVulkan.VulkanImageView) –

the GstVulkan.VulkanImageView.

#### GstVulkan.VulkanDecoder.picture_create_view

    def GstVulkan.VulkanDecoder.picture_create_view (self, buf, is_out):
        #python wrapper for 'gst_vulkan_decoder_picture_create_view'

Creates a GstVulkan.VulkanImageView for buf for decoding, with the internal Ycbcr sampler, if available.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`buf` (Gst.Buffer) –

a Gst.Buffer

`is_out` (bool) –

if buf is for output or for DPB

Returns (GstVulkan.VulkanImageView) –

the GstVulkan.VulkanImageView.

#### gst_vulkan_decoder_picture_init

    gboolean
    gst_vulkan_decoder_picture_init (GstVulkanDecoder * self,
                                     GstVulkanDecoderPicture * pic,
                                     GstBuffer * out)

Initializes pic with out as output buffer.

Parameters:

`self` –

a GstVulkanDecoder

`pic` –

a GstVulkanDecoderPicture

`out` –

the GstBuffer to use as output

Returns –

whether pic was initialized.

#### GstVulkan.VulkanDecoder.prototype.picture_init

    function GstVulkan.VulkanDecoder.prototype.picture_init(pic: GstVulkan.VulkanDecoderPicture, out: Gst.Buffer): {
        // javascript wrapper for 'gst_vulkan_decoder_picture_init'
    }

Initializes pic with out as output buffer.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

`out` (Gst.Buffer) –

the Gst.Buffer to use as output

Returns (Number) –

whether pic was initialized.

#### GstVulkan.VulkanDecoder.picture_init

    def GstVulkan.VulkanDecoder.picture_init (self, pic, out):
        #python wrapper for 'gst_vulkan_decoder_picture_init'

Initializes pic with out as output buffer.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

`out` (Gst.Buffer) –

the Gst.Buffer to use as output

Returns (bool) –

whether pic was initialized.

#### gst_vulkan_decoder_profile_caps

    GstCaps *
    gst_vulkan_decoder_profile_caps (GstVulkanDecoder * self)

Parameters:

`self` –

a GstVulkanDecoder

Returns ( [transfer: full]) –

the GstCaps of the profile defined at gst_vulkan_decoder_start.

#### GstVulkan.VulkanDecoder.prototype.profile_caps

    function GstVulkan.VulkanDecoder.prototype.profile_caps(): {
        // javascript wrapper for 'gst_vulkan_decoder_profile_caps'
    }

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (Gst.Caps) –

the Gst.Caps of the profile defined at GstVulkan.VulkanDecoder.prototype.start.

#### GstVulkan.VulkanDecoder.profile_caps

    def GstVulkan.VulkanDecoder.profile_caps (self):
        #python wrapper for 'gst_vulkan_decoder_profile_caps'

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (Gst.Caps) –

the Gst.Caps of the profile defined at GstVulkan.VulkanDecoder.start.

#### gst_vulkan_decoder_start

    gboolean
    gst_vulkan_decoder_start (GstVulkanDecoder * self,
                              GstVulkanVideoProfile * profile,
                              GError ** error)

It creates a Vulkan video session for the given profile. If an error occurs, error is filled.

Parameters:

`self` –

a GstVulkanDecoder

`profile` –

a GstVulkanVideoProfile

`error` –

a GError

Returns –

whether the video decoder has started correctly.

#### GstVulkan.VulkanDecoder.prototype.start

    function GstVulkan.VulkanDecoder.prototype.start(profile: GstVulkan.VulkanVideoProfile): {
        // javascript wrapper for 'gst_vulkan_decoder_start'
    }

It creates a Vulkan video session for the given profile. If an error occurs, error is filled.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`profile` (GstVulkan.VulkanVideoProfile) –

a GstVulkan.VulkanVideoProfile

Returns (Number) –

whether the video decoder has started correctly.

#### GstVulkan.VulkanDecoder.start

    @raises(GLib.GError)
    def GstVulkan.VulkanDecoder.start (self, profile):
        #python wrapper for 'gst_vulkan_decoder_start'

It creates a Vulkan video session for the given profile. If an error occurs, error is filled.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`profile` (GstVulkan.VulkanVideoProfile) –

a GstVulkan.VulkanVideoProfile

Returns (bool) –

whether the video decoder has started correctly.

#### gst_vulkan_decoder_stop

    gboolean
    gst_vulkan_decoder_stop (GstVulkanDecoder * self)

Destroys the video session created at gst_vulkan_decoder_start and clean up the internal objects.

Parameters:

`self` –

a GstVulkanDecoder

Returns –

whether the decoder stopped correctly.

#### GstVulkan.VulkanDecoder.prototype.stop

    function GstVulkan.VulkanDecoder.prototype.stop(): {
        // javascript wrapper for 'gst_vulkan_decoder_stop'
    }

Destroys the video session created at GstVulkan.VulkanDecoder.prototype.start and clean up the internal objects.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (Number) –

whether the decoder stopped correctly.

#### GstVulkan.VulkanDecoder.stop

    def GstVulkan.VulkanDecoder.stop (self):
        #python wrapper for 'gst_vulkan_decoder_stop'

Destroys the video session created at GstVulkan.VulkanDecoder.start and clean up the internal objects.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (bool) –

whether the decoder stopped correctly.

#### gst_vulkan_decoder_update_video_session_parameters

    gboolean
    gst_vulkan_decoder_update_video_session_parameters (GstVulkanDecoder * self,
                                                        GstVulkanDecoderParameters* params,
                                                        GError ** error)

Update the internal codec parameters for the current video session.

Parameters:

`self` –

a GstVulkanDecoder

`params` –

a GstVulkanDecoderParameters union

`error` –

a GError

Returns –

whether the params were updated internally. It might fill error.

#### GstVulkan.VulkanDecoder.prototype.update_video_session_parameters

    function GstVulkan.VulkanDecoder.prototype.update_video_session_parameters(params: GstVulkan.VulkanDecoderParameters): {
        // javascript wrapper for 'gst_vulkan_decoder_update_video_session_parameters'
    }

Update the internal codec parameters for the current video session.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`params` (GstVulkan.VulkanDecoderParameters) –

a GstVulkanDecoderParameters union

Returns (Number) –

whether the params were updated internally. It might fill error.

#### GstVulkan.VulkanDecoder.update_video_session_parameters

    @raises(GLib.GError)
    def GstVulkan.VulkanDecoder.update_video_session_parameters (self, params):
        #python wrapper for 'gst_vulkan_decoder_update_video_session_parameters'

Update the internal codec parameters for the current video session.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`params` (GstVulkan.VulkanDecoderParameters) –

a GstVulkanDecoderParameters union

Returns (bool) –

whether the params were updated internally. It might fill error.

#### gst_vulkan_decoder_update_ycbcr_sampler

    gboolean
    gst_vulkan_decoder_update_ycbcr_sampler (GstVulkanDecoder * self,
                                             VkSamplerYcbcrRange range,
                                             VkChromaLocation xloc,
                                             VkChromaLocation yloc,
                                             GError ** error)

Update the internal Ycbcr sampler for the output images.

Parameters:

`self` –

a GstVulkanDecoder

`range` –

whether color components are encoded using the full range of numerical values or whether values are reserved for headroom and foot room.

`xloc` –

x location of downsampled chroma component samples relative to the luma samples.

`yloc` –

y location of downsampled chroma component samples relative to the luma samples.

`error` –
No description available
Returns –

whether the sampler was updated.

#### GstVulkan.VulkanDecoder.prototype.update_ycbcr_sampler

    function GstVulkan.VulkanDecoder.prototype.update_ycbcr_sampler(range: Vulkan.SamplerYcbcrRange, xloc: Vulkan.ChromaLocation, yloc: Vulkan.ChromaLocation): {
        // javascript wrapper for 'gst_vulkan_decoder_update_ycbcr_sampler'
    }

Update the internal Ycbcr sampler for the output images.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`range` (Vulkan.SamplerYcbcrRange) –

whether color components are encoded using the full range of numerical values or whether values are reserved for headroom and foot room.

`xloc` (Vulkan.ChromaLocation) –

x location of downsampled chroma component samples relative to the luma samples.

`yloc` (Vulkan.ChromaLocation) –

y location of downsampled chroma component samples relative to the luma samples.

Returns (Number) –

whether the sampler was updated.

#### GstVulkan.VulkanDecoder.update_ycbcr_sampler

    @raises(GLib.GError)
    def GstVulkan.VulkanDecoder.update_ycbcr_sampler (self, range, xloc, yloc):
        #python wrapper for 'gst_vulkan_decoder_update_ycbcr_sampler'

Update the internal Ycbcr sampler for the output images.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

`range` (Vulkan.SamplerYcbcrRange) –

whether color components are encoded using the full range of numerical values or whether values are reserved for headroom and foot room.

`xloc` (Vulkan.ChromaLocation) –

x location of downsampled chroma component samples relative to the luma samples.

`yloc` (Vulkan.ChromaLocation) –

y location of downsampled chroma component samples relative to the luma samples.

Returns (bool) –

whether the sampler was updated.

#### gst_vulkan_decoder_wait

    gboolean
    gst_vulkan_decoder_wait (GstVulkanDecoder * self)

Waits indefinitely for decoding fences to signal, and queries the operation result if available.

Parameters:

`self` –

a GstVulkanDecoder

Returns –

whether the wait succeeded in waiting for all the fences to be freed.

#### GstVulkan.VulkanDecoder.prototype.wait

    function GstVulkan.VulkanDecoder.prototype.wait(): {
        // javascript wrapper for 'gst_vulkan_decoder_wait'
    }

Waits indefinitely for decoding fences to signal, and queries the operation result if available.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (Number) –

whether the wait succeeded in waiting for all the fences to be freed.

#### GstVulkan.VulkanDecoder.wait

    def GstVulkan.VulkanDecoder.wait (self):
        #python wrapper for 'gst_vulkan_decoder_wait'

Waits indefinitely for decoding fences to signal, and queries the operation result if available.

Parameters:

`self` (GstVulkan.VulkanDecoder) –

a GstVulkan.VulkanDecoder

Returns (bool) –

whether the wait succeeded in waiting for all the fences to be freed.

## GstVulkanDecoderPicture

It contains the whole state for decoding a single picture.

### Members

`out` (GstBuffer *) –

output buffer

`dpb` (GstBuffer *) –

DPB representation of out if needed by driver

`img_view_ref` (GstVulkanImageView *) –

image view for reference

`img_view_out` (GstVulkanImageView *) –

image view for output

`slice_offs` (GArray *) –

array of offsets of each uploaded slice

`refs` (GstVulkanDecoderPicture *) –

references required to decode current pictures

Since : 1.24

## GstVulkan.VulkanDecoderPicture

It contains the whole state for decoding a single picture.

### Members

`out` (Gst.Buffer) –

output buffer

`dpb` (Gst.Buffer) –

DPB representation of out if needed by driver

`img_view_ref` (GstVulkan.VulkanImageView) –

image view for reference

`img_view_out` (GstVulkan.VulkanImageView) –

image view for output

`slice_offs` ([ Object ]) –

array of offsets of each uploaded slice

`refs` ([ GstVulkan.VulkanDecoderPicture ]) –

references required to decode current pictures

Since : 1.24

## GstVulkan.VulkanDecoderPicture

It contains the whole state for decoding a single picture.

### Members

`out` (Gst.Buffer) –

output buffer

`dpb` (Gst.Buffer) –

DPB representation of out if needed by driver

`img_view_ref` (GstVulkan.VulkanImageView) –

image view for reference

`img_view_out` (GstVulkan.VulkanImageView) –

image view for output

`slice_offs` ([ object ]) –

array of offsets of each uploaded slice

`refs` ([ GstVulkan.VulkanDecoderPicture ]) –

references required to decode current pictures

Since : 1.24

### Methods

#### gst_vulkan_decoder_picture_release

    gst_vulkan_decoder_picture_release (GstVulkanDecoderPicture * pic)

Releases the internal resource of pic.

Parameters:

`pic` –

a GstVulkanDecoderPicture

#### GstVulkan.VulkanDecoderPicture.prototype.release

    function GstVulkan.VulkanDecoderPicture.prototype.release(): {
        // javascript wrapper for 'gst_vulkan_decoder_picture_release'
    }

Releases the internal resource of pic.

Parameters:

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

#### GstVulkan.VulkanDecoderPicture.release

    def GstVulkan.VulkanDecoderPicture.release (self):
        #python wrapper for 'gst_vulkan_decoder_picture_release'

Releases the internal resource of pic.

Parameters:

`pic` (GstVulkan.VulkanDecoderPicture) –

a GstVulkan.VulkanDecoderPicture

The results of the search are