Structures

VkVideoEncodeIntraRefreshCapabilitiesKHR

Structure describing video encode intra refresh capabilities for a video profile

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:

typedef struct VkVideoEncodeIntraRefreshCapabilitiesKHR {
    VkStructureType sType;
    void* pNext;
    VkVideoEncodeIntraRefreshModeFlagsKHR intraRefreshModes;
    uint32_t maxIntraRefreshCycleDuration;
    uint32_t maxIntraRefreshActiveReferencePictures;
    VkBool32 partitionIndependentIntraRefreshRegions;
    VkBool32 nonRectangularIntraRefreshRegions;
} VkVideoEncodeIntraRefreshCapabilitiesKHR;
  • 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.
    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.
    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.

Valid Usage (Implicit)

VUID-VkVideoEncodeIntraRefreshCapabilitiesKHR-sType-sType

sType must be VK_STRUCTURE_TYPE_VIDEO_ENCODE_INTRA_REFRESH_CAPABILITIES_KHR