# GstVulkanBufferPool

a GstVulkanBufferPool is an object that allocates buffers with GstVulkanBufferMemory

A GstVulkanBufferPool is created with gst_vulkan_buffer_pool_new

GstVulkanBufferPool implements the VideoMeta buffer pool option GST_BUFFER_POOL_OPTION_VIDEO_META

## GstVulkanBufferPool

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstBufferPool
                    ╰──GstVulkanBufferPool

Opaque GstVulkanBufferPool struct

### Members

`bufferpool` (GstBufferPool) –

the parent GstBufferPool

`device` (GstVulkanDevice *) –

the GstVulkanDevice to allocate Vulkan buffers from

Since : 1.18

### Class structure

#### GstVulkanBufferPoolClass

The GstVulkanBufferPoolClass structure contains only private data

##### Fields

`parent_class` (GstBufferPoolClass) –

the parent GstBufferPoolClass

Since : 1.18

### GstVulkan.VulkanBufferPoolClass

The GstVulkan.VulkanBufferPoolClass structure contains only private data

##### Attributes

`parent_class` (Gst.BufferPoolClass) –

the parent Gst.BufferPoolClass

Since : 1.18

### GstVulkan.VulkanBufferPoolClass

The GstVulkan.VulkanBufferPoolClass structure contains only private data

##### Attributes

`parent_class` (Gst.BufferPoolClass) –

the parent Gst.BufferPoolClass

Since : 1.18

## GstVulkan.VulkanBufferPool

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.BufferPool
                    ╰──GstVulkan.VulkanBufferPool

Opaque GstVulkan.VulkanBufferPool struct

### Members

`bufferpool` (Gst.BufferPool) –

the parent Gst.BufferPool

`device` (GstVulkan.VulkanDevice) –

the GstVulkan.VulkanDevice to allocate Vulkan buffers from

Since : 1.18

## GstVulkan.VulkanBufferPool

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──Gst.Object
                ╰──Gst.BufferPool
                    ╰──GstVulkan.VulkanBufferPool

Opaque GstVulkan.VulkanBufferPool struct

### Members

`bufferpool` (Gst.BufferPool) –

the parent Gst.BufferPool

`device` (GstVulkan.VulkanDevice) –

the GstVulkan.VulkanDevice to allocate Vulkan buffers from

Since : 1.18

### Constructors

#### gst_vulkan_buffer_pool_new

    GstBufferPool *
    gst_vulkan_buffer_pool_new (GstVulkanDevice * device)

Parameters:

`device` –

the GstVulkanDevice to use

Returns ( [transfer: full]) –

a GstBufferPool that allocates buffers with GstGLMemory

Since : 1.18

#### GstVulkan.VulkanBufferPool.prototype.new

    function GstVulkan.VulkanBufferPool.prototype.new(device: GstVulkan.VulkanDevice): {
        // javascript wrapper for 'gst_vulkan_buffer_pool_new'
    }

Parameters:

`device` (GstVulkan.VulkanDevice) –

the GstVulkan.VulkanDevice to use

Returns (Gst.BufferPool) –

a Gst.BufferPool that allocates buffers with GstGL.GLMemory

Since : 1.18

#### GstVulkan.VulkanBufferPool.new

    def GstVulkan.VulkanBufferPool.new (device):
        #python wrapper for 'gst_vulkan_buffer_pool_new'

Parameters:

`device` (GstVulkan.VulkanDevice) –

the GstVulkan.VulkanDevice to use

Returns (Gst.BufferPool) –

a Gst.BufferPool that allocates buffers with GstGL.GLMemory

Since : 1.18

### Functions

#### gst_vulkan_buffer_pool_config_set_allocation_params

    gst_vulkan_buffer_pool_config_set_allocation_params (GstStructure * config,
                                                         VkBufferUsageFlags usage,
                                                         VkMemoryPropertyFlags mem_properties)

Sets the usage of the buffers to setup.

Parameters:

`config` –

the GstStructure with the pool's configuration.

`usage` –

The Vulkan buffer usage flags.

`mem_properties` –
No description available

Since : 1.24

#### GstVulkan.VulkanBufferPool.prototype.config_set_allocation_params

    function GstVulkan.VulkanBufferPool.prototype.config_set_allocation_params(config: Gst.Structure, usage: Vulkan.BufferUsageFlags, mem_properties: Vulkan.MemoryPropertyFlags): {
        // javascript wrapper for 'gst_vulkan_buffer_pool_config_set_allocation_params'
    }

Sets the usage of the buffers to setup.

Parameters:

`config` (Gst.Structure) –

the Gst.Structure with the pool's configuration.

`usage` (Vulkan.BufferUsageFlags) –

The Vulkan buffer usage flags.

`mem_properties` (Vulkan.MemoryPropertyFlags) –
No description available

Since : 1.24

#### GstVulkan.VulkanBufferPool.config_set_allocation_params

    def GstVulkan.VulkanBufferPool.config_set_allocation_params (config, usage, mem_properties):
        #python wrapper for 'gst_vulkan_buffer_pool_config_set_allocation_params'

Sets the usage of the buffers to setup.

Parameters:

`config` (Gst.Structure) –

the Gst.Structure with the pool's configuration.

`usage` (Vulkan.BufferUsageFlags) –

The Vulkan buffer usage flags.

`mem_properties` (Vulkan.MemoryPropertyFlags) –
No description available

Since : 1.24

## Function Macros

### GST_VULKAN_BUFFER_POOL_CAST

    #define GST_VULKAN_BUFFER_POOL_CAST(obj) ((GstVulkanBufferPool*)(obj))

Since : 1.18

The results of the search are