D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080 enumeration (d3d12umddi.h)

The D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080 enumeration lists possible HEVC encoder frame types.

Syntax

typedef enum D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080 {
  D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_I_FRAME,
  D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_P_FRAME,
  D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_B_FRAME,
  D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_IDR_FRAME
} ;

Constants

 
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_I_FRAME
An I-frame: completely intra-coded frame.
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_P_FRAME
A P-frame (predicted frame): allows references to past frames.
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_B_FRAME
A B-frame (bi-directional frame): allows references to both past and future frames, in display order.
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_IDR_FRAME
An IDR frame (instantaneous decoder refresh frame): A special type of I-frame where no frame after it can reference any frame before it.

Remarks

The following table lists the expected HEVC header frame type (nal_unit_type) for each of the above defined HEVC frame types.

HEVC frame type Expected default value
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_I_FRAME nal_unit_type = CRA_NUT
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_P_FRAME nal_unit_type = TRAIL_R
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_B_FRAME nal_unit_type = TRAIL_R
D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_IDR_FRAME nal_unit_type = IDR_W_RADL

A set D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAG_0083_0_P_FRAMES_IMPLEMENTED_AS_LOW_DELAY_B_FRAMES bit informs the user that, when encoding frames with type D3D12DDI_VIDEO_ENCODER_FRAME_TYPE_HEVC_0080_P_FRAME, these frames will be written as low delay B frames in the compressed bitstream. If this bit is not set, these frames will be written as P frames in the compressed bistream. When operating in this mode, it is the user's responsibility to code the correct frame type in AUD_NUT and other parts of the HEVC bitstream, taking into account that P frames will be treated as generalized B frames with only references to past frames in picture order counter (POC) order.

See D3D12 video encoding for general information.

Requirements

Requirement Value
Minimum supported client Windows 11 (WDDM 3.0)
Header d3d12umddi.h

See also

D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAGS_0083_0

D3D12DDI_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_0082_0