Function Prototype

vkCmdEndVideoCodingKHR

End video coding scope
primary
outside
inside
decode / encode
action / state

To end a video coding scope, call:

void vkCmdEndVideoCodingKHR(
    VkCommandBuffer commandBuffer,
    const VkVideoEndCodingInfoKHR* pEndCodingInfo);
  • commandBuffer is the command buffer in which to record the command.
  • pEndCodingInfo is a pointer to a VkVideoEndCodingInfoKHR structure specifying the parameters for ending the video coding scope.

After ending a video coding scope, the video session object, the optional video session parameters object, and all reference picture resources previously bound by the corresponding vkCmdBeginVideoCodingKHR command are unbound.

Valid Usage

Valid Usage (Implicit)

VUID-vkCmdEndVideoCodingKHR-pEndCodingInfo-parameter

pEndCodingInfo must be a valid pointer to a valid VkVideoEndCodingInfoKHR structure

VUID-vkCmdEndVideoCodingKHR-commandBuffer-cmdpool

The VkCommandPool that commandBuffer was allocated from must support decode, or encode operations

VUID-vkCmdEndVideoCodingKHR-renderpass

This command must only be called outside of a render pass instance

VUID-vkCmdEndVideoCodingKHR-videocoding

This command must only be called inside of a video coding scope

VUID-vkCmdEndVideoCodingKHR-bufferlevel

commandBuffer must be a primary VkCommandBuffer

Host Synchronization

  • Host access to commandBuffer must be externally synchronized
  • Host access to the VkCommandPool that commandBuffer was allocated from must be externally synchronized ::