VkVideoDecodeInfoKHR
The VkVideoDecodeInfoKHR structure is defined as:
typedef struct VkVideoDecodeInfoKHR {
VkStructureType sType;
const void* pNext;
VkVideoDecodeFlagsKHR flags;
VkBuffer srcBuffer;
VkDeviceSize srcBufferOffset;
VkDeviceSize srcBufferRange;
VkVideoPictureResourceInfoKHR dstPictureResource;
const VkVideoReferenceSlotInfoKHR* pSetupReferenceSlot;
uint32_t referenceSlotCount;
const VkVideoReferenceSlotInfoKHR* pReferenceSlots;
} VkVideoDecodeInfoKHR;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.flagsis reserved for future use.srcBufferis the source video bitstream buffer to read the encoded bitstream from.srcBufferOffsetis the starting offset in bytes from the start ofsrcBufferto read the encoded bitstream from.srcBufferRangeis the size in bytes of the encoded bitstream to decode fromsrcBuffer, starting fromsrcBufferOffset.dstPictureResourceis the video picture resource to use as the decode output picture.pSetupReferenceSlotisNULLor a pointer to a VkVideoReferenceSlotInfoKHR structure specifying the reconstructed picture information.referenceSlotCountis the number of elements in thepReferenceSlotsarray.pReferenceSlotsisNULLor a pointer to an array of VkVideoReferenceSlotInfoKHR structures describing the DPB slots and corresponding reference picture resources to use in this video decode operation (the set of active reference pictures).
Valid Usage
VUID-VkVideoDecodeInfoKHR-srcBuffer-07165
srcBuffer must have been created with
VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR set
VUID-VkVideoDecodeInfoKHR-srcBufferOffset-07166
srcBufferOffset must be less than the size of srcBuffer
VUID-VkVideoDecodeInfoKHR-srcBufferRange-07167
srcBufferRange must be less than or equal to the size of
srcBuffer minus srcBufferOffset
VUID-VkVideoDecodeInfoKHR-pSetupReferenceSlot-07168
If pSetupReferenceSlot is not NULL, then its slotIndex
member must not be negative
VUID-VkVideoDecodeInfoKHR-pSetupReferenceSlot-07169
If pSetupReferenceSlot is not NULL, then its
pPictureResource must not be NULL
VUID-VkVideoDecodeInfoKHR-slotIndex-07171
The slotIndex member of each element of pReferenceSlotsmust not be negative
VUID-VkVideoDecodeInfoKHR-pPictureResource-07172
The pPictureResource member of each element of
pReferenceSlots must not be NULL
Valid Usage (Implicit)
VUID-VkVideoDecodeInfoKHR-sType-sType
sType must be VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR
VUID-VkVideoDecodeInfoKHR-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 VkVideoDecodeAV1InlineSessionParametersInfoKHR, VkVideoDecodeAV1PictureInfoKHR, VkVideoDecodeH264InlineSessionParametersInfoKHR, VkVideoDecodeH264PictureInfoKHR, VkVideoDecodeH265InlineSessionParametersInfoKHR, VkVideoDecodeH265PictureInfoKHR, or VkVideoInlineQueryInfoKHR
VUID-VkVideoDecodeInfoKHR-sType-unique
The sType value of each structure in the pNext chain must be unique
VUID-VkVideoDecodeInfoKHR-flags-zerobitmask
flags must be 0
VUID-VkVideoDecodeInfoKHR-srcBuffer-parameter
srcBuffer must be a valid VkBuffer handle
VUID-VkVideoDecodeInfoKHR-dstPictureResource-parameter
dstPictureResource must be a valid VkVideoPictureResourceInfoKHR structure
VUID-VkVideoDecodeInfoKHR-pSetupReferenceSlot-parameter
If pSetupReferenceSlot is not NULL, pSetupReferenceSlot must be a valid pointer to a valid VkVideoReferenceSlotInfoKHR structure
VUID-VkVideoDecodeInfoKHR-pReferenceSlots-parameter
If referenceSlotCount is not 0, pReferenceSlots must be a valid pointer to an array of referenceSlotCount valid VkVideoReferenceSlotInfoKHR structures