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
instance
(VkInstance)
–
the Vulkan instance handle
physical_devices
(VkPhysicalDevice*)
–
list of vulkan physical device handles
n_physical_devices
(guint32)
–
Since : 1.18
Class structure
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)
–
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)
–
Since : 1.18
Constructors
gst_vulkan_instance_new
GstVulkanInstance * gst_vulkan_instance_new ()
a new uninitialized GstVulkanInstance
Since : 1.18
GstVulkan.VulkanInstance.prototype.new
function GstVulkan.VulkanInstance.prototype.new(): {
// javascript wrapper for 'gst_vulkan_instance_new'
}
a new uninitialized GstVulkan.VulkanInstance
Since : 1.18
GstVulkan.VulkanInstance.new
def GstVulkan.VulkanInstance.new ():
#python wrapper for 'gst_vulkan_instance_new'
a new uninitialized GstVulkan.VulkanInstance
Since : 1.18
Methods
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
–
major
–
major version
minor
–
minor version
patch
–
patch version
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:
major version
minor version
patch version
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:
major version
minor version
patch version
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)
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:
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:
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
–
device_index
–
the device index to create the new GstVulkanDevice from
error
(
[out][optional])
–
a GError
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'
}
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'
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.
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:
extension name to enable
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:
extension name to enable
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.
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:
extension name to enable
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:
extension name to enable
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.
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:
layer name to enable
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:
layer name to enable
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.
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:
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:
whether the instance information could be retrieved
Since : 1.18
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
–
name
–
the layer name to look for
spec_version
(
[out][nullable])
–
return value for the layer specification version
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:
the layer name to look for
Returns a tuple made of:
whether extension name is available
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:
the layer name to look for
Returns a tuple made of:
whether extension name is available
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
–
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
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:
the layer name to look for
Returns a tuple made of:
whether layer name is available
whether layer name is available
whether layer name is available
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:
the layer name to look for
Returns a tuple made of:
whether layer name is available
whether layer name is available
whether layer name is available
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
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:
name of the function to retrieve
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:
name of the function to retrieve
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 configured 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
–
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 configured 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:
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 configured 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:
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
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:
a # GstVulkanInstance
extension name
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'
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
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'
}
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'
whether layer name is enabled
Since : 1.18
gst_vulkan_instance_open
gboolean gst_vulkan_instance_open (GstVulkanInstance * instance, GError ** error)
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:
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:
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.
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.
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.
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.
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:
Returns a tuple made of:
whether instance contains a valid 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:
Returns a tuple made of:
whether instance contains a valid 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
–
device_index
–
the index of the device
user_data
–
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:
the index of the device
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:
the index of the device
the newly created GstVulkan.VulkanDevice.
Flags: Run Last
Since : 1.26
Properties
Functions
gst_context_get_vulkan_instance
gboolean gst_context_get_vulkan_instance (GstContext * context, GstVulkanInstance ** instance)
Parameters:
context
–
instance
(
[out][optional][nullable][transfer: full])
–
resulting GstVulkanInstance
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:
Returns a tuple made of:
Whether instance was in context
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:
Returns a tuple made of:
Whether instance was in context
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
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:
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:
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