VkVideoFormatPropertiesKHR(3)

# VkVideoFormatPropertiesKHR(3) Manual Page

## Name

VkVideoFormatPropertiesKHR - Structure enumerating the video image formats

## C Specification

The `VkVideoFormatPropertiesKHR` structure is defined as:

    // Provided by VK_KHR_video_queue
    typedef struct VkVideoFormatPropertiesKHR {
        VkStructureType       sType;
        void*                 pNext;
        VkFormat              format;
        VkComponentMapping    componentMapping;
        VkImageCreateFlags    imageCreateFlags;
        VkImageType           imageType;
        VkImageTiling         imageTiling;
        VkImageUsageFlags     imageUsageFlags;
    } VkVideoFormatPropertiesKHR;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `format` is a VkFormat that specifies the format that can be used with the specified video profiles and image usages.

- `componentMapping` defines the color channel order used for the format. `format` along with `componentMapping` describe how the color channels are ordered when producing video decoder output or are expected to be ordered in video encoder input, when applicable. If the `format` reported does not require component swizzling then all members of `componentMapping` will be set to VK_COMPONENT_SWIZZLE_IDENTITY.

- `imageCreateFlags` is a bitmask of VkImageCreateFlagBits specifying the supported image creation flags for the format.

- `imageType` is a VkImageType that specifies the image type the format can be used with.

- `imageTiling` is a VkImageTiling that specifies the image tiling the format can be used with.

- `imageUsageFlags` is a bitmask of VkImageUsageFlagBits specifying the supported image usage flags for the format.

## Description

Only create flags representable in VkImageCreateFlagBits are returned in `imageCreateFlags`. If the `pNext` chain includes a VkImageCreateFlags2CreateInfoKHR structure, all create flags are returned in VkImageCreateFlags2CreateInfoKHR::`flags`.

Only usage flags representable in VkImageUsageFlagBits are returned in `imageUsageFlags`. If the `pNext` chain includes a VkImageUsageFlags2CreateInfoKHR structure, all usage flags are returned in VkImageUsageFlags2CreateInfoKHR::`usage`.

Valid Usage (Implicit)

- VUID-VkVideoFormatPropertiesKHR-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR

- VUID-VkVideoFormatPropertiesKHR-pNext-pNext
  Each `pNext` member of any structure (including this one) in the `pNext` chain must be either `NULL` or a pointer to a valid instance of VkImageCreateFlags2CreateInfoKHR, VkImageUsageFlags2CreateInfoKHR, VkVideoFormatAV1QuantizationMapPropertiesKHR, VkVideoFormatH265QuantizationMapPropertiesKHR, or VkVideoFormatQuantizationMapPropertiesKHR

- VUID-VkVideoFormatPropertiesKHR-sType-unique
  The `sType` value of each structure in the `pNext` chain must be unique

## See Also

VK_KHR_video_queue, VkComponentMapping, VkFormat, VkImageCreateFlags, VkImageTiling, VkImageType, VkImageUsageFlags, VkStructureType, vkGetPhysicalDeviceVideoFormatPropertiesKHR

## Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0