Edit

D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT2 structure (d3d12video.h)

Extends D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT1 for the driver to report support details when enabling QPMap, dirty regions, and/or motion search hints features. If the driver does not support a given combination, it must report D3D12_VIDEO_ENCODER_SUPPORT_FLAG_NONE and specify conflicting features in D3D12_VIDEO_ENCODER_VALIDATION_FLAGS.

Syntax

typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT2 {
  UINT                                                        NodeIndex;
  D3D12_VIDEO_ENCODER_CODEC                                   Codec;
  DXGI_FORMAT                                                 InputFormat;
  D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION                     CodecConfiguration;
  D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE                  CodecGopSequence;
  D3D12_VIDEO_ENCODER_RATE_CONTROL                            RateControl;
  D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE                      IntraRefresh;
  D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE             SubregionFrameEncoding;
  UINT                                                        ResolutionsListCount;
  const D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC           *pResolutionList;
  UINT                                                        MaxReferenceFramesInDPB;
  D3D12_VIDEO_ENCODER_VALIDATION_FLAGS                        ValidationFlags;
  D3D12_VIDEO_ENCODER_SUPPORT_FLAGS                           SupportFlags;
  D3D12_VIDEO_ENCODER_PROFILE_DESC                            SuggestedProfile;
  D3D12_VIDEO_ENCODER_LEVEL_SETTING                           SuggestedLevel;
  D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS1 *pResolutionDependentSupport;
  D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA  SubregionFrameEncodingData;
  UINT                                                        MaxQualityVsSpeed;
  D3D12_VIDEO_ENCODER_QPMAP_CONFIGURATION                     QPMap;
  D3D12_VIDEO_ENCODER_DIRTY_REGIONS_CONFIGURATION             DirtyRegions;
  D3D12_VIDEO_ENCODER_MOTION_SEARCH_CONFIGURATION             MotionSearch;
  D3D12_VIDEO_ENCODER_FRAME_ANALYSIS_CONFIGURATION            FrameAnalysis;
} D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT2;

Members

NodeIndex

Input parameter. In multi-adapter operation, indicates which physical adapter of the device this operation applies to.

Codec

Input parameter. A D3D12_VIDEO_ENCODER_CODEC value specifying the codec.

InputFormat

Input parameter. A DXGI_FORMAT value specifying the input format.

CodecConfiguration

Input parameter. A D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION specifying the codec configuration.

CodecGopSequence

Input parameter. A D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE specifying the GOP structure.

RateControl

Input parameter. A D3D12_VIDEO_ENCODER_RATE_CONTROL specifying the rate control.

IntraRefresh

Input parameter. A D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE specifying the intra refresh mode.

SubregionFrameEncoding

Input parameter. A D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE value specifying the subregion layout mode.

ResolutionsListCount

Input parameter. The number of resolutions in pResolutionList.

pResolutionList

Input parameter. Pointer to an array of D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC structures specifying the resolutions.

MaxReferenceFramesInDPB

Input parameter. The maximum number of reference frames in the decoded picture buffer.

ValidationFlags

Output parameter. A combination of D3D12_VIDEO_ENCODER_VALIDATION_FLAGS indicating unsupported features.

SupportFlags

Output parameter. A combination of D3D12_VIDEO_ENCODER_SUPPORT_FLAGS indicating support.

SuggestedProfile

Output parameter. A D3D12_VIDEO_ENCODER_PROFILE_DESC with the suggested profile.

SuggestedLevel

Output parameter. A D3D12_VIDEO_ENCODER_LEVEL_SETTING with the suggested level.

pResolutionDependentSupport

Output parameter. Pointer to a caller-allocated array of D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS1 structures the driver fills for each resolution in pResolutionList.

SubregionFrameEncodingData

A D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA specifying the subregion layout data.

MaxQualityVsSpeed

Output parameter. Maximum quality versus speed value.

QPMap

Input parameter. A D3D12_VIDEO_ENCODER_QPMAP_CONFIGURATION specifying the intended QPMap configuration.

DirtyRegions

Input parameter. A D3D12_VIDEO_ENCODER_DIRTY_REGIONS_CONFIGURATION specifying the intended dirty regions configuration.

MotionSearch

Input parameter. A D3D12_VIDEO_ENCODER_MOTION_SEARCH_CONFIGURATION specifying the intended motion search configuration.

FrameAnalysis

Requirements

Requirement Value
Header d3d12video.h