GstVulkanImageMemory
GstVulkanImageMemory is a GstMemory subclass providing support for the mapping of Vulkan device memory.
gst_memory_copy is supported for the whole memory of images with one mip
level and one array layer that were created with
VK_IMAGE_USAGE_TRANSFER_SRC_BIT. The copy is a new image with the same
format, extent, tiling and memory properties, and the usage of the source
image without the video usage flags. The image data is copied with
vkCmdCopyImage after the pending work signalled on the timeline semaphore
of the source image, and gst_memory_copy waits for the copy to complete.
GstVulkanBarrierImageInfo
Members
parent
(GstVulkanBarrierMemoryInfo)
–
parent GstVulkanBarrierMemoryInfo
image_layout
(VkImageLayout)
–
the image layout of this barrier
subresource_range
(VkImageSubresourceRange)
–
what subresource the barrier applies to
Since : 1.18
GstVulkan.VulkanBarrierImageInfo
Members
parent
(GstVulkan.VulkanBarrierMemoryInfo)
–
image_layout
(Vulkan.ImageLayout)
–
the image layout of this barrier
subresource_range
(Vulkan.ImageSubresourceRange)
–
what subresource the barrier applies to
Since : 1.18
GstVulkan.VulkanBarrierImageInfo
Members
parent
(GstVulkan.VulkanBarrierMemoryInfo)
–
image_layout
(Vulkan.ImageLayout)
–
the image layout of this barrier
subresource_range
(Vulkan.ImageSubresourceRange)
–
what subresource the barrier applies to
Since : 1.18
Methods
gst_vulkan_barrier_image_info_clear
gst_vulkan_barrier_image_info_clear (GstVulkanBarrierImageInfo * info)
Clear any referenced objects from this info.
Parameters:
info
–
Since : 1.30
GstVulkan.VulkanBarrierImageInfo.prototype.clear
function GstVulkan.VulkanBarrierImageInfo.prototype.clear(): {
// javascript wrapper for 'gst_vulkan_barrier_image_info_clear'
}
Clear any referenced objects from this info.
Parameters:
Since : 1.30
GstVulkan.VulkanBarrierImageInfo.clear
def GstVulkan.VulkanBarrierImageInfo.clear (self):
#python wrapper for 'gst_vulkan_barrier_image_info_clear'
Clear any referenced objects from this info.
Parameters:
Since : 1.30
gst_vulkan_barrier_image_info_copy_into
gst_vulkan_barrier_image_info_copy_into (GstVulkanBarrierImageInfo * info, GstVulkanBarrierImageInfo * other)
Since : 1.30
GstVulkan.VulkanBarrierImageInfo.prototype.copy_into
function GstVulkan.VulkanBarrierImageInfo.prototype.copy_into(other: GstVulkan.VulkanBarrierImageInfo): {
// javascript wrapper for 'gst_vulkan_barrier_image_info_copy_into'
}
Parameters:
the other GstVulkan.VulkanBarrierImageInfo to copy into
Since : 1.30
GstVulkan.VulkanBarrierImageInfo.copy_into
def GstVulkan.VulkanBarrierImageInfo.copy_into (self, other):
#python wrapper for 'gst_vulkan_barrier_image_info_copy_into'
Parameters:
the other GstVulkan.VulkanBarrierImageInfo to copy into
Since : 1.30
gst_vulkan_barrier_image_info_is_equal
gboolean gst_vulkan_barrier_image_info_is_equal (GstVulkanBarrierImageInfo * info, GstVulkanBarrierImageInfo * other)
whether info and other_info are the same.
Since : 1.30
GstVulkan.VulkanBarrierImageInfo.prototype.is_equal
function GstVulkan.VulkanBarrierImageInfo.prototype.is_equal(other: GstVulkan.VulkanBarrierImageInfo): {
// javascript wrapper for 'gst_vulkan_barrier_image_info_is_equal'
}
Parameters:
the other GstVulkan.VulkanBarrierImageInfo to compare against
whether info and other_info are the same.
Since : 1.30
GstVulkan.VulkanBarrierImageInfo.is_equal
def GstVulkan.VulkanBarrierImageInfo.is_equal (self, other):
#python wrapper for 'gst_vulkan_barrier_image_info_is_equal'
Parameters:
the other GstVulkan.VulkanBarrierImageInfo to compare against
whether info and other_info are the same.
Since : 1.30
GstVulkanImageMemory
Members
device
(GstVulkanDevice *)
–
the GstVulkanDevice to allocate images from
image
(VkImage)
–
the Vulkan image handle
vk_mem
(GstVulkanMemory *)
–
the backing GstVulkanMemory for image
create_info
(VkImageCreateInfo)
–
creation information for image
requirements
(VkMemoryRequirements)
–
memory requirements for image
format_properties
(VkImageFormatProperties)
–
format properties
usage
(VkImageUsageFlags)
–
intended usage for image
barrier
(GstVulkanBarrierImageInfo)
–
last set barrier for image
Since : 1.18
GstVulkan.VulkanImageMemory
Members
parent
(Gst.Memory)
–
parent Gst.Memory
device
(GstVulkan.VulkanDevice)
–
the GstVulkan.VulkanDevice to allocate images from
image
(Vulkan.Image)
–
the Vulkan image handle
vk_mem
(GstVulkan.VulkanMemory)
–
the backing GstVulkan.VulkanMemory for image
create_info
(Vulkan.ImageCreateInfo)
–
creation information for image
requirements
(Vulkan.MemoryRequirements)
–
memory requirements for image
format_properties
(Vulkan.ImageFormatProperties)
–
format properties
usage
(Vulkan.ImageUsageFlags)
–
intended usage for image
barrier
(GstVulkan.VulkanBarrierImageInfo)
–
last set barrier for image
Since : 1.18
GstVulkan.VulkanImageMemory
Members
parent
(Gst.Memory)
–
parent Gst.Memory
device
(GstVulkan.VulkanDevice)
–
the GstVulkan.VulkanDevice to allocate images from
image
(Vulkan.Image)
–
the Vulkan image handle
vk_mem
(GstVulkan.VulkanMemory)
–
the backing GstVulkan.VulkanMemory for image
create_info
(Vulkan.ImageCreateInfo)
–
creation information for image
requirements
(Vulkan.MemoryRequirements)
–
memory requirements for image
format_properties
(Vulkan.ImageFormatProperties)
–
format properties
usage
(Vulkan.ImageUsageFlags)
–
intended usage for image
barrier
(GstVulkan.VulkanBarrierImageInfo)
–
last set barrier for image
Since : 1.18
Methods
gst_vulkan_image_memory_add_view
gst_vulkan_image_memory_add_view (GstVulkanImageMemory * image, GstVulkanImageView * view)
Since : 1.18
GstVulkan.VulkanImageMemory.prototype.add_view
function GstVulkan.VulkanImageMemory.prototype.add_view(view: GstVulkan.VulkanImageView): {
// javascript wrapper for 'gst_vulkan_image_memory_add_view'
}
Parameters:
Since : 1.18
GstVulkan.VulkanImageMemory.add_view
def GstVulkan.VulkanImageMemory.add_view (self, view):
#python wrapper for 'gst_vulkan_image_memory_add_view'
Parameters:
Since : 1.18
gst_vulkan_image_memory_compare_exchange_barrier_unlocked
gboolean gst_vulkan_image_memory_compare_exchange_barrier_unlocked (GstVulkanImageMemory * image, GstVulkanBarrierImageInfo * old_info, GstVulkanBarrierImageInfo * new_info)
Attempts to atomically update the barrier stored in image to new_info. Only succeeds if the current barrier is the same as old_info.
On failure, the operation should be retried with updated information.
Must be called with gst_vulkan_image_memory_lock called.
Parameters:
image
–
old_info
–
the previous GstVulkanBarrierImageInfo
new_info
–
the new GstVulkanBarrierImageInfo
Since : 1.30
GstVulkan.VulkanImageMemory.prototype.compare_exchange_barrier_unlocked
function GstVulkan.VulkanImageMemory.prototype.compare_exchange_barrier_unlocked(old_info: GstVulkan.VulkanBarrierImageInfo, new_info: GstVulkan.VulkanBarrierImageInfo): {
// javascript wrapper for 'gst_vulkan_image_memory_compare_exchange_barrier_unlocked'
}
Attempts to atomically update the barrier stored in image to new_info. Only succeeds if the current barrier is the same as old_info.
On failure, the operation should be retried with updated information.
Must be called with GstVulkan.VulkanImageMemory.prototype.lock called.
Since : 1.30
GstVulkan.VulkanImageMemory.compare_exchange_barrier_unlocked
def GstVulkan.VulkanImageMemory.compare_exchange_barrier_unlocked (self, old_info, new_info):
#python wrapper for 'gst_vulkan_image_memory_compare_exchange_barrier_unlocked'
Attempts to atomically update the barrier stored in image to new_info. Only succeeds if the current barrier is the same as old_info.
On failure, the operation should be retried with updated information.
Must be called with GstVulkan.VulkanImageMemory.lock called.
Since : 1.30
gst_vulkan_image_memory_find_view
GstVulkanImageView * gst_vulkan_image_memory_find_view (GstVulkanImageMemory * image, GstVulkanImageMemoryFindViewFunc find_func, gpointer user_data)
Return: (transfer full) (nullable): the first GstVulkanImageView that find_func returns TRUE for, or NULL
Parameters:
image
–
find_func
(
[scope call])
–
GstVulkanImageMemoryFindViewFunc to search with
user_data
–
user data to call finc_func with
Since : 1.18
GstVulkan.VulkanImageMemory.prototype.find_view
function GstVulkan.VulkanImageMemory.prototype.find_view(find_func: GstVulkan.VulkanImageMemoryFindViewFunc, user_data: Object): {
// javascript wrapper for 'gst_vulkan_image_memory_find_view'
}
Return: (transfer full) (nullable): the first GstVulkan.VulkanImageView that find_func returns true for, or null
Since : 1.18
GstVulkan.VulkanImageMemory.find_view
def GstVulkan.VulkanImageMemory.find_view (self, find_func, *user_data):
#python wrapper for 'gst_vulkan_image_memory_find_view'
Return: (transfer full) (nullable): the first GstVulkan.VulkanImageView that find_func returns True for, or None
Since : 1.18
gst_vulkan_image_memory_get_height
guint32 gst_vulkan_image_memory_get_height (GstVulkanImageMemory * image)
Return: the height of image
Parameters:
image
–
Since : 1.18
GstVulkan.VulkanImageMemory.prototype.get_height
function GstVulkan.VulkanImageMemory.prototype.get_height(): {
// javascript wrapper for 'gst_vulkan_image_memory_get_height'
}
Return: the height of image
Parameters:
Since : 1.18
GstVulkan.VulkanImageMemory.get_height
def GstVulkan.VulkanImageMemory.get_height (self):
#python wrapper for 'gst_vulkan_image_memory_get_height'
Return: the height of image
Parameters:
Since : 1.18
gst_vulkan_image_memory_get_width
guint32 gst_vulkan_image_memory_get_width (GstVulkanImageMemory * image)
Return: the width of image
Parameters:
image
–
Since : 1.18
GstVulkan.VulkanImageMemory.prototype.get_width
function GstVulkan.VulkanImageMemory.prototype.get_width(): {
// javascript wrapper for 'gst_vulkan_image_memory_get_width'
}
Return: the width of image
Parameters:
Since : 1.18
GstVulkan.VulkanImageMemory.get_width
def GstVulkan.VulkanImageMemory.get_width (self):
#python wrapper for 'gst_vulkan_image_memory_get_width'
Return: the width of image
Parameters:
Since : 1.18
gst_vulkan_image_memory_init
gboolean gst_vulkan_image_memory_init (GstVulkanImageMemory * mem, GstAllocator * allocator, GstMemory * parent, GstVulkanDevice * device, VkFormat format, VkImageUsageFlags usage, VkImageLayout initial_layout, GstAllocationParams * params, gsize size, gpointer user_data, GDestroyNotify notify)
Parameters:
mem
–
allocator
–
parent
–
device
–
format
–
usage
–
initial_layout
–
params
–
size
–
user_data
–
notify
–
GstVulkan.VulkanImageMemory.prototype.init
function GstVulkan.VulkanImageMemory.prototype.init(allocator: Gst.Allocator, parent: Gst.Memory, device: GstVulkan.VulkanDevice, format: Vulkan.Format, usage: Vulkan.ImageUsageFlags, initial_layout: Vulkan.ImageLayout, params: Gst.AllocationParams, size: Number, user_data: Object, notify: GLib.DestroyNotify): {
// javascript wrapper for 'gst_vulkan_image_memory_init'
}
Parameters:
format
(Vulkan.Format)
–
usage
(Vulkan.ImageUsageFlags)
–
initial_layout
(Vulkan.ImageLayout)
–
GstVulkan.VulkanImageMemory.init
def GstVulkan.VulkanImageMemory.init (self, allocator, parent, device, format, usage, initial_layout, params, size, user_data, notify):
#python wrapper for 'gst_vulkan_image_memory_init'
Parameters:
format
(Vulkan.Format)
–
usage
(Vulkan.ImageUsageFlags)
–
initial_layout
(Vulkan.ImageLayout)
–
gst_vulkan_image_memory_init_with_external_semaphore
gboolean gst_vulkan_image_memory_init_with_external_semaphore (GstVulkanImageMemory * mem, GstAllocator * allocator, GstMemory * parent, GstVulkanDevice * device, VkFormat format, VkImageUsageFlags usage, VkImageLayout initial_layout, GstAllocationParams * params, gsize size, gpointer user_data, GDestroyNotify notify, VkExternalSemaphoreHandleTypeFlags ext_flags)
Like gst_vulkan_image_memory_init but also creates the backing timeline semaphore with the export capability given by ext_flags.
Parameters:
mem
–
allocator
–
parent
–
device
–
format
–
usage
–
initial_layout
–
params
–
size
–
user_data
–
notify
–
ext_flags
–
VkExternalSemaphoreHandleTypeFlags
whether the memory was initialized
Since : 1.30
GstVulkan.VulkanImageMemory.prototype.init_with_external_semaphore
function GstVulkan.VulkanImageMemory.prototype.init_with_external_semaphore(allocator: Gst.Allocator, parent: Gst.Memory, device: GstVulkan.VulkanDevice, format: Vulkan.Format, usage: Vulkan.ImageUsageFlags, initial_layout: Vulkan.ImageLayout, params: Gst.AllocationParams, size: Number, user_data: Object, notify: GLib.DestroyNotify, ext_flags: Vulkan.ExternalSemaphoreHandleTypeFlags): {
// javascript wrapper for 'gst_vulkan_image_memory_init_with_external_semaphore'
}
Like GstVulkan.VulkanImageMemory.prototype.init but also creates the backing timeline semaphore with the export capability given by ext_flags.
Parameters:
format
(Vulkan.Format)
–
usage
(Vulkan.ImageUsageFlags)
–
initial_layout
(Vulkan.ImageLayout)
–
ext_flags
(Vulkan.ExternalSemaphoreHandleTypeFlags)
–
VkExternalSemaphoreHandleTypeFlags
whether the memory was initialized
Since : 1.30
GstVulkan.VulkanImageMemory.init_with_external_semaphore
def GstVulkan.VulkanImageMemory.init_with_external_semaphore (self, allocator, parent, device, format, usage, initial_layout, params, size, user_data, notify, ext_flags):
#python wrapper for 'gst_vulkan_image_memory_init_with_external_semaphore'
Like GstVulkan.VulkanImageMemory.init but also creates the backing timeline semaphore with the export capability given by ext_flags.
Parameters:
format
(Vulkan.Format)
–
usage
(Vulkan.ImageUsageFlags)
–
initial_layout
(Vulkan.ImageLayout)
–
ext_flags
(Vulkan.ExternalSemaphoreHandleTypeFlags)
–
VkExternalSemaphoreHandleTypeFlags
whether the memory was initialized
Since : 1.30
gst_vulkan_image_memory_lock
gst_vulkan_image_memory_lock (GstVulkanImageMemory * image)
Exclusively lock the image memory.
Note: if you need to lock multiple memories at the same time, you should use GstVulkanBarrierState to ensure a determinstic locking order and avoid deadlocks.
Parameters:
image
–
Since : 1.30
GstVulkan.VulkanImageMemory.prototype.lock
function GstVulkan.VulkanImageMemory.prototype.lock(): {
// javascript wrapper for 'gst_vulkan_image_memory_lock'
}
Exclusively lock the image memory.
Note: if you need to lock multiple memories at the same time, you should use GstVulkan.VulkanBarrierState to ensure a determinstic locking order and avoid deadlocks.
Parameters:
Since : 1.30
GstVulkan.VulkanImageMemory.lock
def GstVulkan.VulkanImageMemory.lock (self):
#python wrapper for 'gst_vulkan_image_memory_lock'
Exclusively lock the image memory.
Note: if you need to lock multiple memories at the same time, you should use GstVulkan.VulkanBarrierState to ensure a determinstic locking order and avoid deadlocks.
Parameters:
Since : 1.30
gst_vulkan_image_memory_peek_barrier_unlocked
gst_vulkan_image_memory_peek_barrier_unlocked (GstVulkanImageMemory * image, GstVulkanBarrierImageInfo * info)
Retrieve the current GstVulkanBarrierImageInfo for this memory.
Must be called with gst_vulkan_image_memory_lock called.
Since : 1.30
GstVulkan.VulkanImageMemory.prototype.peek_barrier_unlocked
function GstVulkan.VulkanImageMemory.prototype.peek_barrier_unlocked(): {
// javascript wrapper for 'gst_vulkan_image_memory_peek_barrier_unlocked'
}
Retrieve the current GstVulkan.VulkanBarrierImageInfo for this memory.
Must be called with GstVulkan.VulkanImageMemory.prototype.lock called.
Parameters:
Since : 1.30
GstVulkan.VulkanImageMemory.peek_barrier_unlocked
def GstVulkan.VulkanImageMemory.peek_barrier_unlocked (self):
#python wrapper for 'gst_vulkan_image_memory_peek_barrier_unlocked'
Retrieve the current GstVulkan.VulkanBarrierImageInfo for this memory.
Must be called with GstVulkan.VulkanImageMemory.lock called.
Parameters:
Since : 1.30
gst_vulkan_image_memory_unlock
gst_vulkan_image_memory_unlock (GstVulkanImageMemory * image)
Exclusively unlock the image memory.
Parameters:
image
–
Since : 1.30
GstVulkan.VulkanImageMemory.prototype.unlock
function GstVulkan.VulkanImageMemory.prototype.unlock(): {
// javascript wrapper for 'gst_vulkan_image_memory_unlock'
}
Exclusively unlock the image memory.
Parameters:
Since : 1.30
GstVulkan.VulkanImageMemory.unlock
def GstVulkan.VulkanImageMemory.unlock (self):
#python wrapper for 'gst_vulkan_image_memory_unlock'
Exclusively unlock the image memory.
Parameters:
Since : 1.30
Functions
gst_vulkan_image_memory_alloc
GstMemory * gst_vulkan_image_memory_alloc (GstVulkanDevice * device, VkFormat format, gsize width, gsize height, VkImageTiling tiling, VkImageUsageFlags usage, VkMemoryPropertyFlags mem_prop_flags)
Allocated a new GstVulkanImageMemory.
Parameters:
device
–
format
–
the VkFormat for the new image
width
–
width for the new image
height
–
height for the new image
tiling
–
tiling for the new image
usage
–
usage flags for the new image
mem_prop_flags
–
VkDeviceMemory property flags for the new image
a GstMemory object backed by a vulkan device memory
Since : 1.18
GstVulkan.prototype.vulkan_image_memory_alloc
function GstVulkan.prototype.vulkan_image_memory_alloc(device: GstVulkan.VulkanDevice, format: Vulkan.Format, width: Number, height: Number, tiling: Vulkan.ImageTiling, usage: Vulkan.ImageUsageFlags, mem_prop_flags: Vulkan.MemoryPropertyFlags): {
// javascript wrapper for 'gst_vulkan_image_memory_alloc'
}
Allocated a new GstVulkan.VulkanImageMemory.
Parameters:
format
(Vulkan.Format)
–
the VkFormat for the new image
width for the new image
height for the new image
tiling
(Vulkan.ImageTiling)
–
tiling for the new image
usage
(Vulkan.ImageUsageFlags)
–
usage flags for the new image
mem_prop_flags
(Vulkan.MemoryPropertyFlags)
–
VkDeviceMemory property flags for the new image
a Gst.Memory object backed by a vulkan device memory
Since : 1.18
GstVulkan.vulkan_image_memory_alloc
def GstVulkan.vulkan_image_memory_alloc (device, format, width, height, tiling, usage, mem_prop_flags):
#python wrapper for 'gst_vulkan_image_memory_alloc'
Allocated a new GstVulkan.VulkanImageMemory.
Parameters:
format
(Vulkan.Format)
–
the VkFormat for the new image
width for the new image
height for the new image
tiling
(Vulkan.ImageTiling)
–
tiling for the new image
usage
(Vulkan.ImageUsageFlags)
–
usage flags for the new image
mem_prop_flags
(Vulkan.MemoryPropertyFlags)
–
VkDeviceMemory property flags for the new image
a Gst.Memory object backed by a vulkan device memory
Since : 1.18
gst_vulkan_image_memory_alloc_with_image_info
GstMemory * gst_vulkan_image_memory_alloc_with_image_info (GstVulkanDevice * device, VkImageCreateInfo* image_info, VkMemoryPropertyFlags mem_prop_flags)
Parameters:
device
–
image_info
–
VkImageCreateInfo structure
mem_prop_flags
–
VkMemoryPropertyFlags flags
a GstMemory object backed by a vulkan device memory
Since : 1.24
GstVulkan.prototype.vulkan_image_memory_alloc_with_image_info
function GstVulkan.prototype.vulkan_image_memory_alloc_with_image_info(device: GstVulkan.VulkanDevice, image_info: Vulkan.ImageCreateInfo, mem_prop_flags: Vulkan.MemoryPropertyFlags): {
// javascript wrapper for 'gst_vulkan_image_memory_alloc_with_image_info'
}
Parameters:
image_info
(Vulkan.ImageCreateInfo)
–
VkImageCreateInfo structure
mem_prop_flags
(Vulkan.MemoryPropertyFlags)
–
VkMemoryPropertyFlags flags
a Gst.Memory object backed by a vulkan device memory
Since : 1.24
GstVulkan.vulkan_image_memory_alloc_with_image_info
def GstVulkan.vulkan_image_memory_alloc_with_image_info (device, image_info, mem_prop_flags):
#python wrapper for 'gst_vulkan_image_memory_alloc_with_image_info'
Parameters:
image_info
(Vulkan.ImageCreateInfo)
–
VkImageCreateInfo structure
mem_prop_flags
(Vulkan.MemoryPropertyFlags)
–
VkMemoryPropertyFlags flags
a Gst.Memory object backed by a vulkan device memory
Since : 1.24
gst_vulkan_image_memory_alloc_with_image_info2
GstMemory * gst_vulkan_image_memory_alloc_with_image_info2 (GstVulkanDevice * device, VkImageCreateInfo* image_info, VkMemoryPropertyFlags mem_prop_flags, VkExternalSemaphoreHandleTypeFlags ext_sem_handle_types)
Like gst_vulkan_image_memory_alloc_with_image_info but also creates the backing timeline semaphore with the export capability given by ext_sem_handle_types.
Parameters:
device
–
image_info
–
VkImageCreateInfo structure
mem_prop_flags
–
VkMemoryPropertyFlags flags
ext_sem_handle_types
–
VkExternalSemaphoreHandleTypeFlags
a GstMemory object backed by a vulkan device memory
Since : 1.30
GstVulkan.prototype.vulkan_image_memory_alloc_with_image_info2
function GstVulkan.prototype.vulkan_image_memory_alloc_with_image_info2(device: GstVulkan.VulkanDevice, image_info: Vulkan.ImageCreateInfo, mem_prop_flags: Vulkan.MemoryPropertyFlags, ext_sem_handle_types: Vulkan.ExternalSemaphoreHandleTypeFlags): {
// javascript wrapper for 'gst_vulkan_image_memory_alloc_with_image_info2'
}
Like GstVulkan.prototype.vulkan_image_memory_alloc_with_image_info but also creates the backing timeline semaphore with the export capability given by ext_sem_handle_types.
Parameters:
image_info
(Vulkan.ImageCreateInfo)
–
VkImageCreateInfo structure
mem_prop_flags
(Vulkan.MemoryPropertyFlags)
–
VkMemoryPropertyFlags flags
ext_sem_handle_types
(Vulkan.ExternalSemaphoreHandleTypeFlags)
–
VkExternalSemaphoreHandleTypeFlags
a Gst.Memory object backed by a vulkan device memory
Since : 1.30
GstVulkan.vulkan_image_memory_alloc_with_image_info2
def GstVulkan.vulkan_image_memory_alloc_with_image_info2 (device, image_info, mem_prop_flags, ext_sem_handle_types):
#python wrapper for 'gst_vulkan_image_memory_alloc_with_image_info2'
Like GstVulkan.vulkan_image_memory_alloc_with_image_info but also creates the backing timeline semaphore with the export capability given by ext_sem_handle_types.
Parameters:
image_info
(Vulkan.ImageCreateInfo)
–
VkImageCreateInfo structure
mem_prop_flags
(Vulkan.MemoryPropertyFlags)
–
VkMemoryPropertyFlags flags
ext_sem_handle_types
(Vulkan.ExternalSemaphoreHandleTypeFlags)
–
VkExternalSemaphoreHandleTypeFlags
a Gst.Memory object backed by a vulkan device memory
Since : 1.30
gst_vulkan_image_memory_init_once
gst_vulkan_image_memory_init_once ()
Initializes the Vulkan image memory allocator. It is safe to call this function multiple times. This must be called before any other GstVulkanImageMemory operation.
Since : 1.18
GstVulkan.prototype.vulkan_image_memory_init_once
function GstVulkan.prototype.vulkan_image_memory_init_once(): {
// javascript wrapper for 'gst_vulkan_image_memory_init_once'
}
Initializes the Vulkan image memory allocator. It is safe to call this function multiple times. This must be called before any other GstVulkan.VulkanImageMemory operation.
Since : 1.18
GstVulkan.vulkan_image_memory_init_once
def GstVulkan.vulkan_image_memory_init_once ():
#python wrapper for 'gst_vulkan_image_memory_init_once'
Initializes the Vulkan image memory allocator. It is safe to call this function multiple times. This must be called before any other GstVulkan.VulkanImageMemory operation.
Since : 1.18
gst_vulkan_image_memory_wrapped
GstMemory * gst_vulkan_image_memory_wrapped (GstVulkanDevice * device, VkImage image, VkFormat format, gsize width, gsize height, VkImageTiling tiling, VkImageUsageFlags usage, gpointer user_data, GDestroyNotify notify)
Return: a new GstVulkanImageMemory wrapping image
Parameters:
device
–
image
–
a VkImage
format
–
the VkFormat for image
width
–
width of image
height
–
height of image
tiling
–
tiling of image
usage
–
usage flags of image
user_data
(
[nullable])
–
user data for notify
notify
–
a GDestroyNotify when image is no longer needed
Since : 1.18
GstVulkan.prototype.vulkan_image_memory_wrapped
function GstVulkan.prototype.vulkan_image_memory_wrapped(device: GstVulkan.VulkanDevice, image: Vulkan.Image, format: Vulkan.Format, width: Number, height: Number, tiling: Vulkan.ImageTiling, usage: Vulkan.ImageUsageFlags, user_data: Object, notify: GLib.DestroyNotify): {
// javascript wrapper for 'gst_vulkan_image_memory_wrapped'
}
Return: a new GstVulkan.VulkanImageMemory wrapping image
Parameters:
image
(Vulkan.Image)
–
a VkImage
format
(Vulkan.Format)
–
the VkFormat for image
width of image
height of image
tiling
(Vulkan.ImageTiling)
–
tiling of image
usage
(Vulkan.ImageUsageFlags)
–
usage flags of image
user data for notify
a GLib.DestroyNotify when image is no longer needed
Since : 1.18
GstVulkan.vulkan_image_memory_wrapped
def GstVulkan.vulkan_image_memory_wrapped (device, image, format, width, height, tiling, usage, user_data, notify):
#python wrapper for 'gst_vulkan_image_memory_wrapped'
Return: a new GstVulkan.VulkanImageMemory wrapping image
Parameters:
image
(Vulkan.Image)
–
a VkImage
format
(Vulkan.Format)
–
the VkFormat for image
width of image
height of image
tiling
(Vulkan.ImageTiling)
–
tiling of image
usage
(Vulkan.ImageUsageFlags)
–
usage flags of image
user data for notify
a GLib.DestroyNotify when image is no longer needed
Since : 1.18
gst_vulkan_image_memory_wrapped_with_image_info
GstMemory * gst_vulkan_image_memory_wrapped_with_image_info (GstVulkanDevice * device, VkImage image, const VkImageCreateInfo* image_info, gpointer user_data, GDestroyNotify notify)
Parameters:
device
–
image
–
a VkImage
image_info
–
the VkImageCreateInfo used to create image
user_data
(
[nullable])
–
user data for notify
notify
–
a GDestroyNotify when image is no longer needed
a new GstVulkanImageMemory wrapping image
Since : 1.30
GstVulkan.prototype.vulkan_image_memory_wrapped_with_image_info
function GstVulkan.prototype.vulkan_image_memory_wrapped_with_image_info(device: GstVulkan.VulkanDevice, image: Vulkan.Image, image_info: Vulkan.ImageCreateInfo, user_data: Object, notify: GLib.DestroyNotify): {
// javascript wrapper for 'gst_vulkan_image_memory_wrapped_with_image_info'
}
Parameters:
image
(Vulkan.Image)
–
a VkImage
image_info
(Vulkan.ImageCreateInfo)
–
the VkImageCreateInfo used to create image
user data for notify
a GLib.DestroyNotify when image is no longer needed
a new GstVulkan.VulkanImageMemory wrapping image
Since : 1.30
GstVulkan.vulkan_image_memory_wrapped_with_image_info
def GstVulkan.vulkan_image_memory_wrapped_with_image_info (device, image, image_info, user_data, notify):
#python wrapper for 'gst_vulkan_image_memory_wrapped_with_image_info'
Parameters:
image
(Vulkan.Image)
–
a VkImage
image_info
(Vulkan.ImageCreateInfo)
–
the VkImageCreateInfo used to create image
user data for notify
a GLib.DestroyNotify when image is no longer needed
a new GstVulkan.VulkanImageMemory wrapping image
Since : 1.30
GstVulkanImageMemoryAllocator
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstAllocator ╰──GstVulkanImageMemoryAllocator
Opaque GstVulkanImageMemoryAllocator struct
Members
parent
(GstAllocator)
–
the parent GstAllocator
Since : 1.18
Class structure
GstVulkanImageMemoryAllocatorClass
The GstVulkanImageMemoryAllocatorClass only contains private data
Fields
parent_class
(GstAllocatorClass)
–
the parent GstAllocatorClass
Since : 1.18
GstVulkan.VulkanImageMemoryAllocatorClass
The GstVulkan.VulkanImageMemoryAllocatorClass only contains private data
Attributes
parent_class
(Gst.AllocatorClass)
–
the parent Gst.AllocatorClass
Since : 1.18
GstVulkan.VulkanImageMemoryAllocatorClass
The GstVulkan.VulkanImageMemoryAllocatorClass only contains private data
Attributes
parent_class
(Gst.AllocatorClass)
–
the parent Gst.AllocatorClass
Since : 1.18
GstVulkan.VulkanImageMemoryAllocator
GObject.Object ╰──GObject.InitiallyUnowned ╰──Gst.Object ╰──Gst.Allocator ╰──GstVulkan.VulkanImageMemoryAllocator
Opaque GstVulkan.VulkanImageMemoryAllocator struct
Members
parent
(Gst.Allocator)
–
the parent Gst.Allocator
Since : 1.18
GstVulkan.VulkanImageMemoryAllocator
GObject.Object ╰──GObject.InitiallyUnowned ╰──Gst.Object ╰──Gst.Allocator ╰──GstVulkan.VulkanImageMemoryAllocator
Opaque GstVulkan.VulkanImageMemoryAllocator struct
Members
parent
(Gst.Allocator)
–
the parent Gst.Allocator
Since : 1.18
Functions
gst_is_vulkan_image_memory
gboolean gst_is_vulkan_image_memory (GstMemory * mem)
Parameters:
mem
–
whether the memory at mem is a GstVulkanImageMemory
Since : 1.18
GstVulkan.prototype.is_vulkan_image_memory
function GstVulkan.prototype.is_vulkan_image_memory(mem: Gst.Memory): {
// javascript wrapper for 'gst_is_vulkan_image_memory'
}
Parameters:
whether the memory at mem is a GstVulkan.VulkanImageMemory
Since : 1.18
GstVulkan.is_vulkan_image_memory
def GstVulkan.is_vulkan_image_memory (mem):
#python wrapper for 'gst_is_vulkan_image_memory'
Parameters:
whether the memory at mem is a GstVulkan.VulkanImageMemory
Since : 1.18
Function Macros
GST_VULKAN_IMAGE_MEMORY_ALLOCATOR_CAST
#define GST_VULKAN_IMAGE_MEMORY_ALLOCATOR_CAST(obj) ((GstVulkanImageMemoryAllocator *)(obj))
Since : 1.18
Constants
GST_CAPS_FEATURE_MEMORY_VULKAN_IMAGE
#define GST_CAPS_FEATURE_MEMORY_VULKAN_IMAGE "memory:VulkanImage"
Since : 1.18
GstVulkan.CAPS_FEATURE_MEMORY_VULKAN_IMAGE
Since : 1.18
GstVulkan.CAPS_FEATURE_MEMORY_VULKAN_IMAGE
Since : 1.18
GST_VULKAN_IMAGE_MEMORY_ALLOCATOR_NAME
#define GST_VULKAN_IMAGE_MEMORY_ALLOCATOR_NAME "VulkanImage"
Since : 1.18
GstVulkan.VULKAN_IMAGE_MEMORY_ALLOCATOR_NAME
Since : 1.18
GstVulkan.VULKAN_IMAGE_MEMORY_ALLOCATOR_NAME
Since : 1.18
Callbacks
GstVulkanImageMemoryFindViewFunc
gboolean (*GstVulkanImageMemoryFindViewFunc) (GstVulkanImageView * view, gpointer user_data)
Function definition used to find views. Return TRUE if view matches the criteria.
Parameters:
view
–
user_data
–
Since : 1.18
GstVulkan.VulkanImageMemoryFindViewFunc
function GstVulkan.VulkanImageMemoryFindViewFunc(view: GstVulkan.VulkanImageView, user_data: Object): {
// javascript wrapper for 'GstVulkanImageMemoryFindViewFunc'
}
Function definition used to find views. Return true if view matches the criteria.
Parameters:
Since : 1.18
GstVulkan.VulkanImageMemoryFindViewFunc
def GstVulkan.VulkanImageMemoryFindViewFunc (view, *user_data):
#python wrapper for 'GstVulkanImageMemoryFindViewFunc'
Function definition used to find views. Return True if view matches the criteria.
Parameters:
Since : 1.18
The results of the search are