Structures

VkVideoPictureResourceInfoKHR

Structure specifying the parameters of a video picture resource

The VkVideoPictureResourceInfoKHR structure is defined as:

typedef struct VkVideoPictureResourceInfoKHR {
    VkStructureType sType;
    const void* pNext;
    VkOffset2D codedOffset;
    VkExtent2D codedExtent;
    uint32_t baseArrayLayer;
    VkImageView imageViewBinding;
} VkVideoPictureResourceInfoKHR;
  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • codedOffset is the offset in texels of the image subregion to use.
  • codedExtent is the size in pixels of the coded image data.
  • baseArrayLayer is the array layer of the image view specified in imageViewBinding to use as the video picture resource.
  • imageViewBinding is an image view representing the video picture resource.

The image subresource referred to by such a structure is defined as the image array layer index specified in baseArrayLayer relative to the image subresource range the image view specified in imageViewBinding was created with.

The meaning of the codedOffset and codedExtent depends on the command and context the video picture resource is used in, as well as on the used video profile and corresponding codec-specific semantics, as described later.

A video picture resource is uniquely defined by the image subresource referred to by an instance of this structure, together with the codedOffset and codedExtent members that identify the image subregion within the image subresource referenced corresponding to the video picture resource according to the particular codec-specific semantics.

Accesses to image data within a video picture resource happen at the granularity indicated by VkVideoCapabilitiesKHR::pictureAccessGranularity, as returned by vkGetPhysicalDeviceVideoCapabilitiesKHR for the used video profile. As a result, given an effective image subregion corresponding to a video picture resource, the actual image subregion accessed may be larger than that as it may include additional padding texels due to the picture access granularity. Any writes performed by video coding operations to such padding texels will result in undefined: texel values.

Two video picture resources match if they refer to the same image subresource and they specify identical codedOffset and codedExtent values.

Valid Usage

VUID-VkVideoPictureResourceInfoKHR-baseArrayLayer-07175

baseArrayLayer must be less than the VkImageViewCreateInfo::subresourceRange.layerCount specified when the image view imageViewBinding was created

Valid Usage (Implicit)

VUID-VkVideoPictureResourceInfoKHR-sType-sType

sType must be VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR