VkVideoEncodeH265CapabilitiesEXT(3)

# VkVideoEncodeH265CapabilitiesEXT(3) Manual Page

## Name

VkVideoEncodeH265CapabilitiesEXT - Structure specifying H.265 encode capabilities

Loading… please wait.

## C Specification

When calling vkGetPhysicalDeviceVideoCapabilitiesKHR with `pVideoProfile->videoCodecOperation` specified as `VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT`, the VkVideoEncodeH265CapabilitiesEXT structure must be included in the `pNext` chain of the VkVideoCapabilitiesKHR structure to retrieve more capabilities specific to H.265 video encoding.

The `VkVideoEncodeH265CapabilitiesEXT` structure is defined as:

    // Provided by VK_EXT_video_encode_h265
    typedef struct VkVideoEncodeH265CapabilitiesEXT {
        VkStructureType                                sType;
        void*                                          pNext;
        VkVideoEncodeH265CapabilityFlagsEXT            flags;
        VkVideoEncodeH265CtbSizeFlagsEXT               ctbSizes;
        VkVideoEncodeH265TransformBlockSizeFlagsEXT    transformBlockSizes;
        uint32_t                                       maxPPictureL0ReferenceCount;
        uint32_t                                       maxBPictureL0ReferenceCount;
        uint32_t                                       maxL1ReferenceCount;
        uint32_t                                       maxSubLayersCount;
        uint32_t                                       minLog2MinLumaCodingBlockSizeMinus3;
        uint32_t                                       maxLog2MinLumaCodingBlockSizeMinus3;
        uint32_t                                       minLog2MinLumaTransformBlockSizeMinus2;
        uint32_t                                       maxLog2MinLumaTransformBlockSizeMinus2;
        uint32_t                                       minMaxTransformHierarchyDepthInter;
        uint32_t                                       maxMaxTransformHierarchyDepthInter;
        uint32_t                                       minMaxTransformHierarchyDepthIntra;
        uint32_t                                       maxMaxTransformHierarchyDepthIntra;
        uint32_t                                       maxDiffCuQpDeltaDepth;
        uint32_t                                       minMaxNumMergeCand;
        uint32_t                                       maxMaxNumMergeCand;
    } VkVideoEncodeH265CapabilitiesEXT;

## Members

- `sType` is the type of this structure.

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

- `flags` is a bitmask of VkVideoEncodeH265CapabilityFlagBitsEXT describing supported encoding tools.

- `ctbSizes` is a bitmask of VkVideoEncodeH265CtbSizeFlagBitsEXT describing the supported CTB sizes.

- `transformBlockSizes` is a bitmask of VkVideoEncodeH265TransformBlockSizeFlagBitsEXT describing the supported transform block sizes.

- `maxPPictureL0ReferenceCount` reports the maximum number of reference pictures the implementation supports in the reference list L0 for P pictures.

- `maxBPictureL0ReferenceCount` reports the maximum number of reference pictures the implementation supports in the reference list L0 for B pictures. The reported value is `0` if encoding of B pictures is not supported.

- `maxL1ReferenceCount` reports the maximum number of reference pictures the implementation supports in the reference list L1 if encoding of B pictures is supported. The reported value is `0` if encoding of B pictures is not supported.

- `maxSubLayersCount` reports the maximum number of sublayers.

- `minLog2MinLumaCodingBlockSizeMinus3` reports the minimum value that may be set for log2_min_luma_coding_block_size_minus3 in StdVideoH265SequenceParameterSet.

- `maxLog2MinLumaCodingBlockSizeMinus3` reports the maximum value that may be set for log2_min_luma_coding_block_size_minus3 in StdVideoH265SequenceParameterSet.

- `minLog2MinLumaTransformBlockSizeMinus2` reports the minimum value that may be set for log2_min_luma_transform_block_size_minus2 in StdVideoH265SequenceParameterSet.

- `maxLog2MinLumaTransformBlockSizeMinus2` reports the maximum value that may be set for log2_min_luma_transform_block_size_minus2 in StdVideoH265SequenceParameterSet.

- `minMaxTransformHierarchyDepthInter` reports the minimum value that may be set for max_transform_hierarchy_depth_inter in StdVideoH265SequenceParameterSet.

- `maxMaxTransformHierarchyDepthInter` reports the maximum value that may be set for max_transform_hierarchy_depth_inter in StdVideoH265SequenceParameterSet.

- `minMaxTransformHierarchyDepthIntra` reports the minimum value that may be set for max_transform_hierarchy_depth_intra in StdVideoH265SequenceParameterSet.

- `maxMaxTransformHierarchyDepthIntra` reports the maximum value that may be set for max_transform_hierarchy_depth_intra in StdVideoH265SequenceParameterSet.

- `maxDiffCuQpDeltaDepth` reports the maximum value that may be set for diff_cu_qp_delta_depth in StdVideoH265PictureParameterSet.

- `minMaxNumMergeCand` reports the minimum value that may be set for MaxNumMergeCand in StdVideoEncodeH265SliceHeader.

- `maxMaxNumMergeCand` reports the maximum value that may be set for MaxNumMergeCand in StdVideoEncodeH265SliceHeader.

## Description

Valid Usage (Implicit)

- VUID-VkVideoEncodeH265CapabilitiesEXT-sType-sType
  `sType` must be `VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT`

## See Also

VK_EXT_video_encode_h265, VkStructureType, VkVideoEncodeH265CapabilityFlagsEXT, VkVideoEncodeH265CtbSizeFlagsEXT, VkVideoEncodeH265TransformBlockSizeFlagsEXT

## 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-2023 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0