# GstVulkanInstance

GstVulkanInstance encapsulates the necessary information for the toplevel Vulkan instance object.

If GStreamer is built with debugging support, the default Vulkan API chosen can be selected with the environment variable `GST_VULKAN_INSTANCE_API_VERSION=1.0`. Any subsequent setting of the requested Vulkan API version through the available properties will override the environment variable.

## GstVulkanInstance

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstVulkanInstance

### Members

`parent` (GstObject) –

parent GstObject

`instance` (VkInstance) –

the Vulkan instance handle

`physical_devices` (VkPhysicalDevice*) –

list of vulkan physical device handles

`n_physical_devices` (guint32) –
No description available

Since : 1.18

### Class structure

#### GstVulkanInstanceClass

##### Fields

`parent_class` (GstObjectClass) –

parent GstObjectClass

Since : 1.18

### GstVulkan.VulkanInstanceClass

##### Attributes

`parent_class` (Gst.ObjectClass) –

parent Gst.ObjectClass

Since : 1.18

### GstVulkan.VulkanInstanceClass

##### Attributes

`parent_class` (Gst.ObjectClass) –

parent Gst.ObjectClass

Since : 1.18

## GstVulkan.VulkanInstance

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

### Members

`parent` (Gst.Object) –

parent Gst.Object

`instance` (Vulkan.Instance) –

the Vulkan instance handle

`physical_devices` (Vulkan.PhysicalDevice) –

list of vulkan physical device handles

`n_physical_devices` (Number) –
No description available

Since : 1.18

## GstVulkan.VulkanInstance

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

### Members

`parent` (Gst.Object) –

parent Gst.Object

`instance` (Vulkan.Instance) –

the Vulkan instance handle

`physical_devices` (Vulkan.PhysicalDevice) –

list of vulkan physical device handles

`n_physical_devices` (int) –
No description available

Since : 1.18

### Constructors

#### gst_vulkan_instance_new

    GstVulkanInstance *
    gst_vulkan_instance_new ()

Returns ( [transfer: full]) –

a new uninitialized GstVulkanInstance

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.new

    function GstVulkan.VulkanInstance.prototype.new(): {
        // javascript wrapper for 'gst_vulkan_instance_new'
    }

Returns (GstVulkan.VulkanInstance) –

a new uninitialized GstVulkan.VulkanInstance

Since : 1.18

#### GstVulkan.VulkanInstance.new

    def GstVulkan.VulkanInstance.new ():
        #python wrapper for 'gst_vulkan_instance_new'

Returns (GstVulkan.VulkanInstance) –

a new uninitialized GstVulkan.VulkanInstance

Since : 1.18

### Methods

#### gst_vulkan_instance_check_api_version

    gboolean
    gst_vulkan_instance_check_api_version (GstVulkanInstance * instance,
                                           guint major,
                                           guint minor,
                                           guint patch)

Parameters:

`instance` –

a GstVulkanInstance

`major` –

the API major version to check

`minor` –

the API minor version to check

`patch` –

the API patch version to check

Returns –

whether the GstVulkanInstance supports the version specified by major, minor and patch.

Since : 1.26

#### GstVulkan.VulkanInstance.prototype.check_api_version

    function GstVulkan.VulkanInstance.prototype.check_api_version(major: Number, minor: Number, patch: Number): {
        // javascript wrapper for 'gst_vulkan_instance_check_api_version'
    }

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`major` (Number) –

the API major version to check

`minor` (Number) –

the API minor version to check

`patch` (Number) –

the API patch version to check

Returns (Number) –

whether the GstVulkan.VulkanInstance supports the version specified by major, minor and patch.

Since : 1.26

#### GstVulkan.VulkanInstance.check_api_version

    def GstVulkan.VulkanInstance.check_api_version (self, major, minor, patch):
        #python wrapper for 'gst_vulkan_instance_check_api_version'

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`major` (int) –

the API major version to check

`minor` (int) –

the API minor version to check

`patch` (int) –

the API patch version to check

Returns (bool) –

whether the GstVulkan.VulkanInstance supports the version specified by major, minor and patch.

Since : 1.26

#### gst_vulkan_instance_check_version

    gboolean
    gst_vulkan_instance_check_version (GstVulkanInstance * instance,
                                       guint major,
                                       guint minor,
                                       guint patch)

Check if the configured vulkan instance supports the specified version. Will not work prior to opening the instance with gst_vulkan_instance_open. If a specific version is requested, the patch level is ignored.

Parameters:

`instance` –

a GstVulkanInstance

`major` –

major version

`minor` –

minor version

`patch` –

patch version

Returns –

whether instance is at least the requested version.

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.check_version

    function GstVulkan.VulkanInstance.prototype.check_version(major: Number, minor: Number, patch: Number): {
        // javascript wrapper for 'gst_vulkan_instance_check_version'
    }

Check if the configured vulkan instance supports the specified version. Will not work prior to opening the instance with GstVulkan.VulkanInstance.prototype.open. If a specific version is requested, the patch level is ignored.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`major` (Number) –

major version

`minor` (Number) –

minor version

`patch` (Number) –

patch version

Returns (Number) –

whether instance is at least the requested version.

Since : 1.18

#### GstVulkan.VulkanInstance.check_version

    def GstVulkan.VulkanInstance.check_version (self, major, minor, patch):
        #python wrapper for 'gst_vulkan_instance_check_version'

Check if the configured vulkan instance supports the specified version. Will not work prior to opening the instance with GstVulkan.VulkanInstance.open. If a specific version is requested, the patch level is ignored.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`major` (int) –

major version

`minor` (int) –

minor version

`patch` (int) –

patch version

Returns (bool) –

whether instance is at least the requested version.

Since : 1.18

#### gst_vulkan_instance_create_device

    GstVulkanDevice *
    gst_vulkan_instance_create_device (GstVulkanInstance * instance,
                                       GError ** error)

Parameters:

`instance` –

a GstVulkanInstance

`error` ( [out][optional]) –

a GError

Returns ( [transfer: full]) –

a new GstVulkanDevice

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.create_device

    function GstVulkan.VulkanInstance.prototype.create_device(): {
        // javascript wrapper for 'gst_vulkan_instance_create_device'
    }

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns (GstVulkan.VulkanDevice) –

a new GstVulkan.VulkanDevice

Since : 1.18

#### GstVulkan.VulkanInstance.create_device

    @raises(GLib.GError)
    def GstVulkan.VulkanInstance.create_device (self):
        #python wrapper for 'gst_vulkan_instance_create_device'

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns (GstVulkan.VulkanDevice) –

a new GstVulkan.VulkanDevice

Since : 1.18

#### gst_vulkan_instance_create_device_with_index

    GstVulkanDevice *
    gst_vulkan_instance_create_device_with_index (GstVulkanInstance * instance,
                                                  guint device_index,
                                                  GError ** error)

Parameters:

`instance` –

a GstVulkanInstance

`device_index` –

the device index to create the new GstVulkanDevice from

`error` ( [out][optional]) –

a GError

Returns ( [transfer: full]) –

a new GstVulkanDevice

Since : 1.26

#### GstVulkan.VulkanInstance.prototype.create_device_with_index

    function GstVulkan.VulkanInstance.prototype.create_device_with_index(device_index: Number): {
        // javascript wrapper for 'gst_vulkan_instance_create_device_with_index'
    }

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`device_index` (Number) –

the device index to create the new GstVulkan.VulkanDevice from

Returns (GstVulkan.VulkanDevice) –

a new GstVulkan.VulkanDevice

Since : 1.26

#### GstVulkan.VulkanInstance.create_device_with_index

    @raises(GLib.GError)
    def GstVulkan.VulkanInstance.create_device_with_index (self, device_index):
        #python wrapper for 'gst_vulkan_instance_create_device_with_index'

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`device_index` (int) –

the device index to create the new GstVulkan.VulkanDevice from

Returns (GstVulkan.VulkanDevice) –

a new GstVulkan.VulkanDevice

Since : 1.26

#### gst_vulkan_instance_disable_extension

    gboolean
    gst_vulkan_instance_disable_extension (GstVulkanInstance * instance,
                                           const gchar * name)

Disable an Vulkan extension by name. Disabling an extension will only have an effect before the call to gst_vulkan_instance_open.

Parameters:

`instance` –

a GstVulkanInstance

`name` –

extension name to enable

Returns –

whether the Vulkan extension could be disabled.

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.disable_extension

    function GstVulkan.VulkanInstance.prototype.disable_extension(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_disable_extension'
    }

Disable an Vulkan extension by name. Disabling an extension will only have an effect before the call to GstVulkan.VulkanInstance.prototype.open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (String) –

extension name to enable

Returns (Number) –

whether the Vulkan extension could be disabled.

Since : 1.18

#### GstVulkan.VulkanInstance.disable_extension

    def GstVulkan.VulkanInstance.disable_extension (self, name):
        #python wrapper for 'gst_vulkan_instance_disable_extension'

Disable an Vulkan extension by name. Disabling an extension will only have an effect before the call to GstVulkan.VulkanInstance.open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (str) –

extension name to enable

Returns (bool) –

whether the Vulkan extension could be disabled.

Since : 1.18

#### gst_vulkan_instance_enable_extension

    gboolean
    gst_vulkan_instance_enable_extension (GstVulkanInstance * instance,
                                          const gchar * name)

Enable an Vulkan extension by name. Extensions cannot be enabled until gst_vulkan_instance_fill_info has been called. Enabling an extension will only have an effect before the call to gst_vulkan_instance_open.

Parameters:

`instance` –

a GstVulkanInstance

`name` –

extension name to enable

Returns –

whether the Vulkan extension could be enabled.

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.enable_extension

    function GstVulkan.VulkanInstance.prototype.enable_extension(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_enable_extension'
    }

Enable an Vulkan extension by name. Extensions cannot be enabled until GstVulkan.VulkanInstance.prototype.fill_info has been called. Enabling an extension will only have an effect before the call to GstVulkan.VulkanInstance.prototype.open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (String) –

extension name to enable

Returns (Number) –

whether the Vulkan extension could be enabled.

Since : 1.18

#### GstVulkan.VulkanInstance.enable_extension

    def GstVulkan.VulkanInstance.enable_extension (self, name):
        #python wrapper for 'gst_vulkan_instance_enable_extension'

Enable an Vulkan extension by name. Extensions cannot be enabled until GstVulkan.VulkanInstance.fill_info has been called. Enabling an extension will only have an effect before the call to GstVulkan.VulkanInstance.open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (str) –

extension name to enable

Returns (bool) –

whether the Vulkan extension could be enabled.

Since : 1.18

#### gst_vulkan_instance_enable_layer

    gboolean
    gst_vulkan_instance_enable_layer (GstVulkanInstance * instance,
                                      const gchar * name)

Enable an Vulkan layer by name. Layer cannot be enabled until gst_vulkan_instance_fill_info has been called. Enabling a layer will only have an effect before the call to gst_vulkan_instance_open.

Parameters:

`instance` –

a GstVulkanInstance

`name` –

layer name to enable

Returns –

whether the Vulkan layer could be enabled.

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.enable_layer

    function GstVulkan.VulkanInstance.prototype.enable_layer(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_enable_layer'
    }

Enable an Vulkan layer by name. Layer cannot be enabled until GstVulkan.VulkanInstance.prototype.fill_info has been called. Enabling a layer will only have an effect before the call to GstVulkan.VulkanInstance.prototype.open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (String) –

layer name to enable

Returns (Number) –

whether the Vulkan layer could be enabled.

Since : 1.18

#### GstVulkan.VulkanInstance.enable_layer

    def GstVulkan.VulkanInstance.enable_layer (self, name):
        #python wrapper for 'gst_vulkan_instance_enable_layer'

Enable an Vulkan layer by name. Layer cannot be enabled until GstVulkan.VulkanInstance.fill_info has been called. Enabling a layer will only have an effect before the call to GstVulkan.VulkanInstance.open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (str) –

layer name to enable

Returns (bool) –

whether the Vulkan layer could be enabled.

Since : 1.18

#### gst_vulkan_instance_fill_info

    gboolean
    gst_vulkan_instance_fill_info (GstVulkanInstance * instance,
                                   GError ** error)

Retrieve as much information about the available Vulkan instance without actually creating an Vulkan instance. Will not do anything while instance is open.

Parameters:

`instance` –

a GstVulkanInstance

`error` –

GError

Returns –

whether the instance information could be retrieved

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.fill_info

    function GstVulkan.VulkanInstance.prototype.fill_info(): {
        // javascript wrapper for 'gst_vulkan_instance_fill_info'
    }

Retrieve as much information about the available Vulkan instance without actually creating an Vulkan instance. Will not do anything while instance is open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns (Number) –

whether the instance information could be retrieved

Since : 1.18

#### GstVulkan.VulkanInstance.fill_info

    @raises(GLib.GError)
    def GstVulkan.VulkanInstance.fill_info (self):
        #python wrapper for 'gst_vulkan_instance_fill_info'

Retrieve as much information about the available Vulkan instance without actually creating an Vulkan instance. Will not do anything while instance is open.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns (bool) –

whether the instance information could be retrieved

Since : 1.18

#### gst_vulkan_instance_get_api_version

    gst_vulkan_instance_get_api_version (GstVulkanInstance * instance,
                                         guint * major,
                                         guint * minor,
                                         guint * patch)

Returns the vulkan API version configured when constructing the GstVulkanInstance. This value can be any valid Vulkan API version and may not match gst_vulkan_instance_get_version in any way. This version is the maximum allowed vulkan API to be used in any capacity.

This will not return valid values until gst_vulkan_instance_open has been called.

Parameters:

`instance` –

a GstVulkanInstance

`major` ( [out]) –

major version

`minor` ( [out]) –

minor version

`patch` ( [out]) –

patch version

Since : 1.26

#### GstVulkan.VulkanInstance.prototype.get_api_version

    function GstVulkan.VulkanInstance.prototype.get_api_version(): {
        // javascript wrapper for 'gst_vulkan_instance_get_api_version'
    }

Returns the vulkan API version configured when constructing the GstVulkan.VulkanInstance. This value can be any valid Vulkan API version and may not match GstVulkan.VulkanInstance.prototype.get_version in any way. This version is the maximum allowed vulkan API to be used in any capacity.

This will not return valid values until GstVulkan.VulkanInstance.prototype.open has been called.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Since : 1.26

#### GstVulkan.VulkanInstance.get_api_version

    def GstVulkan.VulkanInstance.get_api_version (self):
        #python wrapper for 'gst_vulkan_instance_get_api_version'

Returns the vulkan API version configured when constructing the GstVulkan.VulkanInstance. This value can be any valid Vulkan API version and may not match GstVulkan.VulkanInstance.get_version in any way. This version is the maximum allowed vulkan API to be used in any capacity.

This will not return valid values until GstVulkan.VulkanInstance.open has been called.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Since : 1.26

#### gst_vulkan_instance_get_extension_info

    gboolean
    gst_vulkan_instance_get_extension_info (GstVulkanInstance * instance,
                                            const gchar * name,
                                            guint32 * spec_version)

Retrieves information about an extension.

Will not find any extensions before gst_vulkan_instance_fill_info has been called.

Parameters:

`instance` –

a GstVulkanInstance

`name` –

the layer name to look for

`spec_version` ( [out][nullable]) –

return value for the layer specification version

Returns –

whether extension name is available

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.get_extension_info

    function GstVulkan.VulkanInstance.prototype.get_extension_info(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_get_extension_info'
    }

Retrieves information about an extension.

Will not find any extensions before GstVulkan.VulkanInstance.prototype.fill_info has been called.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (String) –

the layer name to look for

Returns a tuple made of:

(Number ) –

whether extension name is available

`spec_version` (Number ) –

whether extension name is available

Since : 1.18

#### GstVulkan.VulkanInstance.get_extension_info

    def GstVulkan.VulkanInstance.get_extension_info (self, name):
        #python wrapper for 'gst_vulkan_instance_get_extension_info'

Retrieves information about an extension.

Will not find any extensions before GstVulkan.VulkanInstance.fill_info has been called.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (str) –

the layer name to look for

Returns a tuple made of:

(bool ) –

whether extension name is available

`spec_version` (int ) –

whether extension name is available

Since : 1.18

#### gst_vulkan_instance_get_layer_info

    gboolean
    gst_vulkan_instance_get_layer_info (GstVulkanInstance * instance,
                                        const gchar * name,
                                        gchar ** description,
                                        guint32 * spec_version,
                                        guint32 * implementation_version)

Retrieves information about a layer.

Will not find any layers before gst_vulkan_instance_fill_info has been called.

Parameters:

`instance` –

a GstVulkanInstance

`name` –

the layer name to look for

`description` ( [out][nullable]) –

return value for the layer description or NULL

`spec_version` ( [out][nullable]) –

return value for the layer specification version

`implementation_version` ( [out][nullable]) –

return value for the layer implementation version

Returns –

whether layer name is available

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.get_layer_info

    function GstVulkan.VulkanInstance.prototype.get_layer_info(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_get_layer_info'
    }

Retrieves information about a layer.

Will not find any layers before GstVulkan.VulkanInstance.prototype.fill_info has been called.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (String) –

the layer name to look for

Returns a tuple made of:

(Number ) –

whether layer name is available

`description` (String ) –

whether layer name is available

`spec_version` (Number ) –

whether layer name is available

`implementation_version` (Number ) –

whether layer name is available

Since : 1.18

#### GstVulkan.VulkanInstance.get_layer_info

    def GstVulkan.VulkanInstance.get_layer_info (self, name):
        #python wrapper for 'gst_vulkan_instance_get_layer_info'

Retrieves information about a layer.

Will not find any layers before GstVulkan.VulkanInstance.fill_info has been called.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (str) –

the layer name to look for

Returns a tuple made of:

(bool ) –

whether layer name is available

`description` (str ) –

whether layer name is available

`spec_version` (int ) –

whether layer name is available

`implementation_version` (int ) –

whether layer name is available

Since : 1.18

#### gst_vulkan_instance_get_proc_address

    gpointer
    gst_vulkan_instance_get_proc_address (GstVulkanInstance * instance,
                                          const gchar * name)

Performs `vkGetInstanceProcAddr()` with instance and name

Parameters:

`instance` –

a GstVulkanInstance

`name` –

name of the function to retrieve

Returns ( [nullable]) –

the function pointer for name or NULL

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.get_proc_address

    function GstVulkan.VulkanInstance.prototype.get_proc_address(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_get_proc_address'
    }

Performs `vkGetInstanceProcAddr()` with instance and name

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (String) –

name of the function to retrieve

Returns (Object) –

the function pointer for name or null

Since : 1.18

#### GstVulkan.VulkanInstance.get_proc_address

    def GstVulkan.VulkanInstance.get_proc_address (self, name):
        #python wrapper for 'gst_vulkan_instance_get_proc_address'

Performs `vkGetInstanceProcAddr()` with instance and name

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

`name` (str) –

name of the function to retrieve

Returns (object) –

the function pointer for name or None

Since : 1.18

#### gst_vulkan_instance_get_version

    gst_vulkan_instance_get_version (GstVulkanInstance * instance,
                                     guint * major,
                                     guint * minor,
                                     guint * patch)

Retrieve the vulkan instance supported version. Only returns the supported API version by the instance without taking into account the requested API version. This means gst_vulkan_instance_check_version will return different values if a specific version has been requested (which is the default) than a version check that is performed manually by retrieving the version with this function.

Parameters:

`instance` –

a GstVulkanInstance

`major` ( [out]) –

major version

`minor` ( [out]) –

minor version

`patch` ( [out]) –

patch version

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.get_version

    function GstVulkan.VulkanInstance.prototype.get_version(): {
        // javascript wrapper for 'gst_vulkan_instance_get_version'
    }

Retrieve the vulkan instance supported version. Only returns the supported API version by the instance without taking into account the requested API version. This means GstVulkan.VulkanInstance.prototype.check_version will return different values if a specific version has been requested (which is the default) than a version check that is performed manually by retrieving the version with this function.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Since : 1.18

#### GstVulkan.VulkanInstance.get_version

    def GstVulkan.VulkanInstance.get_version (self):
        #python wrapper for 'gst_vulkan_instance_get_version'

Retrieve the vulkan instance supported version. Only returns the supported API version by the instance without taking into account the requested API version. This means GstVulkan.VulkanInstance.check_version will return different values if a specific version has been requested (which is the default) than a version check that is performed manually by retrieving the version with this function.

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Since : 1.18

#### gst_vulkan_instance_is_extension_enabled

    gboolean
    gst_vulkan_instance_is_extension_enabled (GstVulkanInstance * instance,
                                              const gchar * name)

Parameters:

`instance` –

a # GstVulkanInstance

`name` –

extension name

Returns –

whether extension name is enabled

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.is_extension_enabled

    function GstVulkan.VulkanInstance.prototype.is_extension_enabled(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_is_extension_enabled'
    }

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a # GstVulkanInstance

`name` (String) –

extension name

Returns (Number) –

whether extension name is enabled

Since : 1.18

#### GstVulkan.VulkanInstance.is_extension_enabled

    def GstVulkan.VulkanInstance.is_extension_enabled (self, name):
        #python wrapper for 'gst_vulkan_instance_is_extension_enabled'

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a # GstVulkanInstance

`name` (str) –

extension name

Returns (bool) –

whether extension name is enabled

Since : 1.18

#### gst_vulkan_instance_is_layer_enabled

    gboolean
    gst_vulkan_instance_is_layer_enabled (GstVulkanInstance * instance,
                                          const gchar * name)

Parameters:

`instance` –

a # GstVulkanInstance

`name` –

layer name

Returns –

whether layer name is enabled

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.is_layer_enabled

    function GstVulkan.VulkanInstance.prototype.is_layer_enabled(name: String): {
        // javascript wrapper for 'gst_vulkan_instance_is_layer_enabled'
    }

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a # GstVulkanInstance

`name` (String) –

layer name

Returns (Number) –

whether layer name is enabled

Since : 1.18

#### GstVulkan.VulkanInstance.is_layer_enabled

    def GstVulkan.VulkanInstance.is_layer_enabled (self, name):
        #python wrapper for 'gst_vulkan_instance_is_layer_enabled'

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a # GstVulkanInstance

`name` (str) –

layer name

Returns (bool) –

whether layer name is enabled

Since : 1.18

#### gst_vulkan_instance_open

    gboolean
    gst_vulkan_instance_open (GstVulkanInstance * instance,
                              GError ** error)

Parameters:

`instance` –

a GstVulkanInstance

`error` –

GError

Returns –

whether the instance could be created

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.open

    function GstVulkan.VulkanInstance.prototype.open(): {
        // javascript wrapper for 'gst_vulkan_instance_open'
    }

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns (Number) –

whether the instance could be created

Since : 1.18

#### GstVulkan.VulkanInstance.open

    @raises(GLib.GError)
    def GstVulkan.VulkanInstance.open (self):
        #python wrapper for 'gst_vulkan_instance_open'

Parameters:

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns (bool) –

whether the instance could be created

Since : 1.18

### Functions

#### gst_vulkan_instance_handle_context_query

    gboolean
    gst_vulkan_instance_handle_context_query (GstElement * element,
                                              GstQuery * query,
                                              GstVulkanInstance * instance)

If a GstVulkanInstance is requested in query, sets instance as the reply.

Intended for use with element query handlers to respond to GST_QUERY_CONTEXT for a GstVulkanInstance.

Parameters:

`element` –

a GstElement

`query` –

a GstQuery of type GST_QUERY_CONTEXT

`instance` ( [nullable]) –

the GstVulkanInstance

Returns –

whether query was responded to with instance

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.handle_context_query

    function GstVulkan.VulkanInstance.prototype.handle_context_query(element: Gst.Element, query: Gst.Query, instance: GstVulkan.VulkanInstance): {
        // javascript wrapper for 'gst_vulkan_instance_handle_context_query'
    }

If a GstVulkan.VulkanInstance is requested in query, sets instance as the reply.

Intended for use with element query handlers to respond to Gst.QueryType.CONTEXT for a GstVulkan.VulkanInstance.

Parameters:

`element` (Gst.Element) –

a Gst.Element

`query` (Gst.Query) –

a Gst.Query of type Gst.QueryType.CONTEXT

`instance` (GstVulkan.VulkanInstance) –

the GstVulkan.VulkanInstance

Returns (Number) –

whether query was responded to with instance

Since : 1.18

#### GstVulkan.VulkanInstance.handle_context_query

    def GstVulkan.VulkanInstance.handle_context_query (element, query, instance):
        #python wrapper for 'gst_vulkan_instance_handle_context_query'

If a GstVulkan.VulkanInstance is requested in query, sets instance as the reply.

Intended for use with element query handlers to respond to Gst.QueryType.CONTEXT for a GstVulkan.VulkanInstance.

Parameters:

`element` (Gst.Element) –

a Gst.Element

`query` (Gst.Query) –

a Gst.Query of type Gst.QueryType.CONTEXT

`instance` (GstVulkan.VulkanInstance) –

the GstVulkan.VulkanInstance

Returns (bool) –

whether query was responded to with instance

Since : 1.18

#### gst_vulkan_instance_run_context_query

    gboolean
    gst_vulkan_instance_run_context_query (GstElement * element,
                                           GstVulkanInstance ** instance)

Attempt to retrieve a GstVulkanInstance using GST_QUERY_CONTEXT from the surrounding elements of element.

Parameters:

`element` –

a GstElement

`instance` ( [inout]) –

a GstVulkanInstance

Returns –

whether instance contains a valid GstVulkanInstance

Since : 1.18

#### GstVulkan.VulkanInstance.prototype.run_context_query

    function GstVulkan.VulkanInstance.prototype.run_context_query(element: Gst.Element, instance: GstVulkan.VulkanInstance): {
        // javascript wrapper for 'gst_vulkan_instance_run_context_query'
    }

Attempt to retrieve a GstVulkan.VulkanInstance using Gst.QueryType.CONTEXT from the surrounding elements of element.

Parameters:

`element` (Gst.Element) –

a Gst.Element

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns a tuple made of:

(Number ) –

whether instance contains a valid GstVulkan.VulkanInstance

`instance` (GstVulkan.VulkanInstance ) –

whether instance contains a valid GstVulkan.VulkanInstance

Since : 1.18

#### GstVulkan.VulkanInstance.run_context_query

    def GstVulkan.VulkanInstance.run_context_query (element, instance):
        #python wrapper for 'gst_vulkan_instance_run_context_query'

Attempt to retrieve a GstVulkan.VulkanInstance using Gst.QueryType.CONTEXT from the surrounding elements of element.

Parameters:

`element` (Gst.Element) –

a Gst.Element

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Returns a tuple made of:

(bool ) –

whether instance contains a valid GstVulkan.VulkanInstance

`instance` (GstVulkan.VulkanInstance ) –

whether instance contains a valid GstVulkan.VulkanInstance

Since : 1.18

### Signals

#### create-device

    GstVulkanDevice *
    create_device_callback (GstVulkanInstance * self,
                            guint device_index,
                            gpointer user_data)

Overrides the GstVulkanDevice creation mechanism. It can be called from any thread.

Parameters:

`self` –
No description available
`device_index` –

the index of the device

`user_data` –
No description available
Returns ( [transfer: full]) –

the newly created GstVulkanDevice.

Flags: Run Last

Since : 1.26

#### create-device

    function create_device_callback(self: GstVulkan.VulkanInstance, device_index: Number, user_data: Object): {
        // javascript callback for the 'create-device' signal
    }

Overrides the GstVulkan.VulkanDevice creation mechanism. It can be called from any thread.

Parameters:

`self` (GstVulkan.VulkanInstance) –
No description available
`device_index` (Number) –

the index of the device

`user_data` (Object) –
No description available
Returns (GstVulkan.VulkanDevice) –

the newly created GstVulkan.VulkanDevice.

Flags: Run Last

Since : 1.26

#### create-device

    def create_device_callback (self, device_index, *user_data):
        #python callback for the 'create-device' signal

Overrides the GstVulkan.VulkanDevice creation mechanism. It can be called from any thread.

Parameters:

`self` (GstVulkan.VulkanInstance) –
No description available
`device_index` (int) –

the index of the device

`user_data` (variadic) –
No description available
Returns (GstVulkan.VulkanDevice) –

the newly created GstVulkan.VulkanDevice.

Flags: Run Last

Since : 1.26

### Properties

#### requested-api-major

    “requested-api-major” guint

Flags : Read / Write

Since : 1.18

#### requested-api-major

    “requested-api-major” Number

Flags : Read / Write

Since : 1.18

#### requested_api_major

    “self.props.requested_api_major” int

Flags : Read / Write

Since : 1.18

#### requested-api-minor

    “requested-api-minor” guint

Flags : Read / Write

Since : 1.18

#### requested-api-minor

    “requested-api-minor” Number

Flags : Read / Write

Since : 1.18

#### requested_api_minor

    “self.props.requested_api_minor” int

Flags : Read / Write

Since : 1.18

## Functions

### gst_context_get_vulkan_instance

    gboolean
    gst_context_get_vulkan_instance (GstContext * context,
                                     GstVulkanInstance ** instance)

Parameters:

`context` –

a GstContext

`instance` ( [out][optional][nullable][transfer: full]) –

resulting GstVulkanInstance

Returns –

Whether instance was in context

Since : 1.18

### GstVulkan.prototype.context_get_vulkan_instance

    function GstVulkan.prototype.context_get_vulkan_instance(context: Gst.Context): {
        // javascript wrapper for 'gst_context_get_vulkan_instance'
    }

Parameters:

`context` (Gst.Context) –

a Gst.Context

Returns a tuple made of:

(Number ) –

Whether instance was in context

`instance` (GstVulkan.VulkanInstance ) –

Whether instance was in context

Since : 1.18

### GstVulkan.context_get_vulkan_instance

    def GstVulkan.context_get_vulkan_instance (context):
        #python wrapper for 'gst_context_get_vulkan_instance'

Parameters:

`context` (Gst.Context) –

a Gst.Context

Returns a tuple made of:

(bool ) –

Whether instance was in context

`instance` (GstVulkan.VulkanInstance ) –

Whether instance was in context

Since : 1.18

### gst_context_set_vulkan_instance

    gst_context_set_vulkan_instance (GstContext * context,
                                     GstVulkanInstance * instance)

Sets instance on context

Parameters:

`context` –

a GstContext

`instance` ( [transfer: none][nullable]) –

a GstVulkanInstance

Since : 1.18

### GstVulkan.prototype.context_set_vulkan_instance

    function GstVulkan.prototype.context_set_vulkan_instance(context: Gst.Context, instance: GstVulkan.VulkanInstance): {
        // javascript wrapper for 'gst_context_set_vulkan_instance'
    }

Sets instance on context

Parameters:

`context` (Gst.Context) –

a Gst.Context

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Since : 1.18

### GstVulkan.context_set_vulkan_instance

    def GstVulkan.context_set_vulkan_instance (context, instance):
        #python wrapper for 'gst_context_set_vulkan_instance'

Sets instance on context

Parameters:

`context` (Gst.Context) –

a Gst.Context

`instance` (GstVulkan.VulkanInstance) –

a GstVulkan.VulkanInstance

Since : 1.18

## Constants

### GST_VULKAN_INSTANCE_CONTEXT_TYPE_STR

    #define GST_VULKAN_INSTANCE_CONTEXT_TYPE_STR "gst.vulkan.instance"

Since : 1.18

### GstVulkan.VULKAN_INSTANCE_CONTEXT_TYPE_STR

Since : 1.18

### GstVulkan.VULKAN_INSTANCE_CONTEXT_TYPE_STR

Since : 1.18

The results of the search are