D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC structure (d3d12video.h)

Represents codec configuration for HEVC encoding.

Syntax

typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC {
  D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAGS  ConfigurationFlags;
  D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE MinLumaCodingUnitSize;
  D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE MaxLumaCodingUnitSize;
  D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE MinLumaTransformUnitSize;
  D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE MaxLumaTransformUnitSize;
  UCHAR                                               max_transform_hierarchy_depth_inter;
  UCHAR                                               max_transform_hierarchy_depth_intra;
} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC;

Members

ConfigurationFlags

A bitwise OR combination of flags from the D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAGS enumeration defining the set of enabled codec features.

MinLumaCodingUnitSize

A value from the D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE enumeration indicating the minimum luma coding block size to be used in the encoder. This value matches what the caller will code in SPS.

MaxLumaCodingUnitSize

A value from the D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE enumeration indicating the maximum luma coding block size to be used in the encoder. This value matches what the caller will code in SPS.

MinLumaTransformUnitSize

A value from the D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE enumeration indicating the minimum luma transform block size to be used in the encoder. This value matches the pixel size of what the user will code in SPS.log2_min_luma_transform_block_size_minus2.

MaxLumaTransformUnitSize

D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE

A value from the D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE enumeration indicating the maximum luma transform block size to be used in the encoder. This value has to be consistent with the pixel size the user will code in SPS.log2_diff_max_min_luma_transform_block_size. The variable MaxTbLog2SizeY is set equal to log2_min_luma_transform_block_size_minus2 + 2 + log2_diff_max_min_luma_transform_block_size.

max_transform_hierarchy_depth_inter

A UCHAR indicating the maximum hierarchy depth for transform units of coding units coded in inter prediction mode. The value of max_transform_hierarchy_depth_inter shall be in the range of 0 to CtbLog2SizeY − MinTbLog2SizeY, inclusive. The value indicated here must be consistent with the caller-coded SPS headers.

max_transform_hierarchy_depth_intra

A UCHAR indicating the maximum hierarchy depth for transform units of coding units coded in intra prediction mode. The value of max_transform_hierarchy_depth_intra shall be in the range of 0 to CtbLog2SizeY − MinTbLog2SizeY, inclusive. The value indicated here must be consistent with the caller-coded SPS headers.

Requirements

Requirement Value
Minimum supported client Windows Build 22000
Minimum supported server Windows Build 22000
Header d3d12video.h