C Specification

When calling vkGetPhysicalDeviceVideoCapabilitiesKHR with pVideoProfile->videoCodecOperation specifying an encode operation, the VkVideoEncodeIntraRefreshCapabilitiesKHR structure can be included in the pNext chain of the VkVideoCapabilitiesKHR structure to retrieve capabilities specific to video encode intra refresh.

The VkVideoEncodeIntraRefreshCapabilitiesKHR structure is defined as:

// Provided by VK_KHR_video_encode_intra_refresh
typedef struct VkVideoEncodeIntraRefreshCapabilitiesKHR {
    VkStructureType                          sType;
    void*                                    pNext;
    VkVideoEncodeIntraRefreshModeFlagsKHR    intraRefreshModes;
    uint32_t                                 maxIntraRefreshCycleDuration;
    uint32_t                                 maxIntraRefreshActiveReferencePictures;
    VkBool32                                 partitionIndependentIntraRefreshRegions;
    VkBool32                                 nonRectangularIntraRefreshRegions;
} VkVideoEncodeIntraRefreshCapabilitiesKHR;

Members

  • sType is a VkStructureType value identifying this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • intraRefreshModes is a bitmask of VkVideoEncodeIntraRefreshModeFlagBitsKHR values indicating the set of supported intra refresh modes.

  • maxIntraRefreshCycleDuration specifies the maximum supported intra refresh cycle duration.

  • maxIntraRefreshActiveReferencePictures is the maximum number of active reference pictures when encoding pictures with intra refresh enabled. This capability indicates additional restrictions beyond the maximum number of active reference pictures supported by the video profile, as reported in VkVideoCapabilitiesKHR::maxActiveReferencePictures and the maximum requested at video session creation time in VkVideoSessionCreateInfoKHR::maxActiveReferencePictures.

  • partitionIndependentIntraRefreshRegions specifies whether the implementation supports intra refresh regions that are independent of the picture partitioning used during encoding. If it is VK_TRUE, then pictures can be encoded with multiple picture partitions, independent of the used intra refresh mode. Otherwise, pictures cannot be encoded with multiple picture partitions with any intra refresh mode other than VK_VIDEO_ENCODE_INTRA_REFRESH_MODE_PER_PICTURE_PARTITION_BIT_KHR.

    Note

    This capability is only indicative for AV1 encode profiles and does not impose any restrictions on the application as implementations may change the application requested picture partitioning according to implementation-specific restrictions.

  • nonRectangularIntraRefreshRegions specifies whether the implementation supports non-rectangular intra refresh regions.

    Note

    If this capability is not supported, then using per picture partition intra refresh may impose additional restrictions on the number of picture partitions a picture can be encoded with.

Description

Valid Usage (Implicit)
  • VUID-VkVideoEncodeIntraRefreshCapabilitiesKHR-sType-sType
    sType must be VK_STRUCTURE_TYPE_VIDEO_ENCODE_INTRA_REFRESH_CAPABILITIES_KHR

See Also

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 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0