D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT 结构 (d3d12video.h)

提供在指定功能D3D12_FEATURE_VIDEO_ENCODER_SUPPORT时调用 ID3D12VideoDevice::CheckFeatureSupport的数据。 检索指示支持指定视频编码功能和配置值的值。

语法

typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT {
  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_LIMITS *pResolutionDependentSupport;
} D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT;

成员

NodeIndex

在多适配器操作中,这指示此操作适用于设备的哪个物理适配器。

Codec

D3D12_VIDEO_ENCODER_CODEC 枚举的成员,该枚举指定要为其查询支持的编解码器。

InputFormat

一个D3D12_VIDEO_ENCODER_PROFILE_DESC结构,用于指定要为其查询支持的配置文件。

CodecConfiguration

表示要为其查询支持的编解码器配置的 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION 结构。

CodecGopSequence

表示要为其查询支持的 GOP 结构的 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE 结构。

RateControl

表示要为其查询支持的速率控制设置的 D3D12_VIDEO_ENCODER_RATE_CONTROL

IntraRefresh

D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE 枚举的成员,该枚举指定要为其查询支持的内刷新模式。

SubregionFrameEncoding

D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE 枚举的成员,用于指定要为其查询支持的子区域布局模式。

ResolutionsListCount

指定 pResolutionList 字段中提供的分辨率数的 UINT。

pResolutionList

指向 D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC 数组的指针,该数组指定要查询其支持的图片分辨率。

MaxReferenceFramesInDPB

一个 UINT,指定在为帧间调用 EncodeFrame 时要使用的以前引用帧的最大数目。 此值用于计算 SuggestedLevel 字段中返回的建议级别。

ValidationFlags

D3D12_VIDEO_ENCODER_VALIDATION_FLAGS 枚举接收标志的按位 OR 组合,如果未在 SupportFlags 字段中设置D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK标志,则提供其他详细信息。 有关详细信息,请参阅注解

SupportFlags

指定 指定编码器功能和配置值的D3D12_VIDEO_ENCODER_SUPPORT_FLAGS枚举接收标志的按位 OR 组合。

SuggestedProfile

接收 D3D12_VIDEO_ENCODER_PROFILE_DESC 指定指定编码器功能和配置值的建议配置文件。

SuggestedLevel

接收 D3D12_VIDEO_ENCODER_LEVEL_SETTING 指定指定编码器功能和配置值的建议配置文件。 建议的级别假定 pResolutionList 中提供的列表的最大分辨率。

pResolutionDependentSupport

接收指向 D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS 结构数组的指针,这些结构指定与 pResolutionList 中提供的分辨率对应的与分辨率相关的支持限制。

注解

此查询授予或拒绝的支持表示同时支持选择在同一编码会话中使用的所有功能。 在使用单个查询调用进行查询时,可以单独支持某些功能,但不能同时支持这些功能。

例如,检查D3D12_FEATURE_VIDEO_ENCODER_INTRA_REFRESH_MODE时可以支持内部刷新,在检查 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_H264 时可以支持 B 帧 。MaxL1ReferencesForB> 0。 但是,内部刷新和 B 帧不能同时受到支持的情况。 在这种情况下,使用包含 B 帧的 CodecGopSequence 查询 D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT 和基于行的刷新内部模式时,将设置 D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK 标志。

要求

要求
最低受支持的客户端 Windows 内部版本 22000
最低受支持的服务器 Windows 内部版本 22000
标头 d3d12video.h