VkVideoBeginCodingInfoKHR(3)

# VkVideoBeginCodingInfoKHR(3) Manual Page

## Name

VkVideoBeginCodingInfoKHR - Structure specifying parameters of decode starts

Loading… please wait.

## C Specification

The VkVideoBeginCodingInfoKHR structure is defined as:

    // Provided by VK_KHR_video_queue
    typedef struct VkVideoBeginCodingInfoKHR {
        VkStructureType                       sType;
        const void*                           pNext;
        VkVideoBeginCodingFlagsKHR            flags;
        VkVideoCodingQualityPresetFlagsKHR    codecQualityPreset;
        VkVideoSessionKHR                     videoSession;
        VkVideoSessionParametersKHR           videoSessionParameters;
        uint32_t                              referenceSlotCount;
        const VkVideoReferenceSlotKHR*        pReferenceSlots;
    } VkVideoBeginCodingInfoKHR;

## Members

- `sType` is the type of this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `flags` is reserved for future use.

- `codecQualityPreset` is a bitmask of VkVideoCodingQualityPresetFlagBitsKHR specifying the Video Decode or Encode quality preset.

- `videoSession` is the video session object to be bound for the processing of the video commands.

- `videoSessionParameters` is VK_NULL_HANDLE or a handle of a VkVideoSessionParametersKHR object to be used for the processing of the video commands. If VK_NULL_HANDLE, then no video session parameters apply to this command buffer context.

- `referenceSlotCount` is the number of reference slot entries provided in `pReferenceSlots`.

- `pReferenceSlots` is a pointer to an array of VkVideoReferenceSlotKHR structures specifying reference slots, used within the video command context between this vkCmdBeginVideoCodingKHR command and the vkCmdEndVideoCodingKHR commmand that follows. Each reference slot provides a slot index and the VkVideoPictureResourceKHR specifying the reference picture resource bound to this slot index. A slot index must not appear more than once in `pReferenceSlots` in a given command.

## Description

Valid Usage

- VUID-VkVideoBeginCodingInfoKHR-referenceSlotCount-04856
  VkVideoBeginCodingInfoKHR::`referenceSlotCount` must not exceed the value specified in VkVideoSessionCreateInfoKHR::`maxReferencePicturesSlotsCount` when creating the video session object that is being provided in `videoSession`

- VUID-VkVideoBeginCodingInfoKHR-videoSessionParameters-04857
  If `videoSessionParameters` is not VK_NULL_HANDLE, it must have been created using `videoSession` as a parent object

Valid Usage (Implicit)

- VUID-VkVideoBeginCodingInfoKHR-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR`

- VUID-VkVideoBeginCodingInfoKHR-pNext-pNext
  `pNext` must be `NULL`

- VUID-VkVideoBeginCodingInfoKHR-flags-zerobitmask
  `flags` must be `0`

- VUID-VkVideoBeginCodingInfoKHR-codecQualityPreset-parameter
  `codecQualityPreset` must be a valid combination of VkVideoCodingQualityPresetFlagBitsKHR values

- VUID-VkVideoBeginCodingInfoKHR-codecQualityPreset-requiredbitmask
  `codecQualityPreset` must not be `0`

- VUID-VkVideoBeginCodingInfoKHR-videoSession-parameter
  `videoSession` must be a valid VkVideoSessionKHR handle

- VUID-VkVideoBeginCodingInfoKHR-videoSessionParameters-parameter
  If `videoSessionParameters` is not VK_NULL_HANDLE, `videoSessionParameters` must be a valid VkVideoSessionParametersKHR handle

- VUID-VkVideoBeginCodingInfoKHR-pReferenceSlots-parameter
  If `referenceSlotCount` is not `0`, `pReferenceSlots` must be a valid pointer to an array of `referenceSlotCount` valid VkVideoReferenceSlotKHR structures

- VUID-VkVideoBeginCodingInfoKHR-videoSessionParameters-parent
  If `videoSessionParameters` is a valid handle, it must have been created, allocated, or retrieved from `videoSession`

- VUID-VkVideoBeginCodingInfoKHR-commonparent
  Both of `videoSession`, and `videoSessionParameters` that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice

## See Also

VK_KHR_video_queue, VkStructureType, VkVideoBeginCodingFlagsKHR, VkVideoCodingQualityPresetFlagsKHR, VkVideoReferenceSlotKHR, VkVideoSessionKHR, VkVideoSessionParametersKHR, vkCmdBeginVideoCodingKHR

## 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

Copyright 2014-2022 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0