D3D12DDICAPS_VIDEO_ENCODER_RESOURCE_REQUIREMENTS_DATA_0080_2 structure (d3d12umddi.h)

The D3D12DDICAPS_VIDEO_ENCODER_RESOURCE_REQUIREMENTS_DATA_0080_2 structure specifies resource access requirements.

Syntax

typedef struct D3D12DDICAPS_VIDEO_ENCODER_RESOURCE_REQUIREMENTS_DATA_0080_2 {
  UINT                                                NodeIndex;
  D3D12DDI_VIDEO_ENCODER_CODEC_0080                   Codec;
  D3D12DDI_VIDEO_ENCODER_PROFILE_DESC_0080_2          Profile;
  DXGI_FORMAT                                         InputFormat;
  D3D12DDI_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC_0080 PictureTargetResolution;
  BOOL                                                IsSupported;
  UINT                                                CompressedBitstreamBufferAccessAlignment;
  UINT                                                EncoderMetadataBufferAccessAlignment;
  UINT                                                MaxEncoderOutputMetadataBufferSize;
} D3D12DDICAPS_VIDEO_ENCODER_RESOURCE_REQUIREMENTS_DATA_0080_2;

Members

NodeIndex

[in] In a multi-adapter operation, NodeIndex indicates which physical adapter of the device that the operation applies to.

Codec

[in] A D3D12DDI_VIDEO_ENCODER_CODEC_0080 value that specifies the codec to check support for.

Profile

[in] A D3D12DDI_VIDEO_ENCODER_PROFILE_DESC_0080_2 structure that specifies the profile to check support for.

InputFormat

[in] A DXGI_FORMAT value that specifies the input format of the input frames.

PictureTargetResolution

[in] A D3D12DDI_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC_0080 structure that indicates the picture resolution for which resource requirements are being queried.

IsSupported

[out] Indicates whether the given input values are supported.

CompressedBitstreamBufferAccessAlignment

[out] Indicates the alignment required in bytes for the resource to be passed in the hDrvBuffer and Offset members of D3D12DDI_VIDEO_ENCODER_COMPRESSED_BITSTREAM_0080. If no alignment is required, the driver should report 1 to indicate 1 byte (trivial) alignment.

EncoderMetadataBufferAccessAlignment

[out] Indicates the alignment required in bytes for the resource to be passed in D3D12DDI_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_STREAM_ARGUMENTS_0080_2.HWLayoutEncoderMetadataDrvBuffer. If no alignment is required, the driver should report 1 to convey 1 byte (trivial) alignment.

MaxEncoderOutputMetadataBufferSize

[out] Indicates the maximum size in bytes needed for the resource that will be allocated by the host and used as output in PFND3D12DDI_VIDEO_ENCODE_FRAME_0082_0 for output encoder metadata based on the input arguments.

Remarks

The D3D runtime calls PFND3D12DDI_VIDEO_GETCAPS with D3D12DDICAPS_TYPE_VIDEO_0080_ENCODER_RESOURCE_REQUIREMENTS specified as the capability type.

See D3D12 video encoding for general information.

Requirements

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

See also

D3D12DDIARG_VIDEO_GETCAPS_0020