D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0结构 (d3d12umddi.h)

D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0 结构为请求的输入配置提供驱动程序的支持详细信息。

语法

typedef struct D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0 {
  UINT                                                      NodeIndex;
  D3D12DDI_VIDEO_ENCODER_CODEC_0080                         Codec;
  DXGI_FORMAT                                               InputFormat;
  D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_0082_0         CodecConfiguration;
  D3D12DDI_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_0082_0      CodecGopSequence;
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_0080_2                RateControl;
  D3D12DDI_VIDEO_ENCODER_INTRA_REFRESH_MODE_0080            IntraRefresh;
  D3D12DDI_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_0080   SubregionFrameEncoding;
  UINT                                                      ResolutionsListCount;
  const D3D12DDI_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC_0080 *pResolutionList;
  UINT                                                      MaxReferenceFramesInDPB;
  D3D12DDI_VIDEO_ENCODER_VALIDATION_FLAGS_0082_0            ValidationFlags;
  D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS_0083_0               SupportFlags;
  D3D12DDI_VIDEO_ENCODER_PROFILE_DESC_0080_2                SuggestedProfile;
  D3D12DDI_VIDEO_ENCODER_LEVEL_SETTING_0080_2               SuggestedLevel;
  D3D12DDI_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS_0080_2   *pResolutionDependentSupport;
} D3D12DDICAPS_VIDEO_ENCODER_SUPPORT_DATA_0083_0;

成员

NodeIndex

[in]在多适配器作中,NodeIndex 指示作应用于的设备的物理适配器。

Codec

[in]指定要使用的编码编解码器的 D3D12DDI_VIDEO_ENCODER_CODEC_0080 值。

InputFormat

[in]指定输入帧的输入格式的 DXGI_FORMAT 值。

CodecConfiguration

[in]一个 D3D12DDI_VIDEO_ENCODER_CODEC_CONFIGURATION_0082_0 结构,指定所选编解码器的请求配置。 此结构中的编解码器特定结构应与 编解码器指定的编解码器类型匹配。

CodecGopSequence

[in]一个 D3D12DDI_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_0082_0 结构,指定所选编解码器的请求图片组(GOP)配置。 此结构中的编解码器特定结构应与 编解码器指定的编解码器类型匹配。

RateControl

[in]指定所请求速率控制配置的 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_0080_2 结构。

IntraRefresh

[in]一个指定刷新模式下请求的 D3D12DDI_VIDEO_ENCODER_INTRA_REFRESH_MODE_0080 值。

SubregionFrameEncoding

[in]指定所请求的分区模式的 D3D12DDI_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_0080 值。

ResolutionsListCount

[in]指示 pResolutionList 指向的列表中的解析数。

pResolutionList

[in]指向 D3D12DDI_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC_0080 结构的数组的指针,该数组指定请求支持的解决方案列表。

MaxReferenceFramesInDPB

[in]为帧间调用 EncodeFrame 时要使用的前一个引用帧的最大数目。 此值用于计算建议的级别。

ValidationFlags

[out]一个 D3D12DDI_VIDEO_ENCODER_VALIDATION_FLAGS_0082_0 值,如果 cap 查询返回时未设置D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_0083_0_GENERAL_SUPPORT_OK 位,则提供更多详细信息。

SupportFlags

[out]一个 D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS_0083_0 值,该值指定所请求的配置的支持详细信息。

SuggestedProfile

[out]驱动程序返回所请求配置的匹配配置文件的 D3D12DDI_VIDEO_ENCODER_PROFILE_DESC_0080_2 结构。

SuggestedLevel

[out]D3D12DDI_VIDEO_ENCODER_LEVEL_SETTING_0080_2 结构,驱动程序将返回 pResolutionList中每个分辨率请求的配置的匹配级别。

pResolutionDependentSupport

[out]指向驱动程序返回依赖于分辨率的支持限制的 D3D12DDI_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS_0080_2 结构列表的指针。

言论

D3D 运行时调用 PFND3D12DDI_VIDEO_GETCAPSD3D12DDICAPS_TYPE_VIDEO_0080_ENCODER_SUPPORT 指定为功能类型。

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

例如,在检查 D3D12DDICAPS_TYPE_VIDEO_0080_ENCODER_INTRA_REFRESH_MODE 时,可以支持内部刷新,在检查 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_H264 时可以支持 B 帧。MaxL1ReferencesForB 大于 0。 但是,可以同时支持刷新和 B 帧内部的情况。 在这种情况下,使用包含 B 帧和刷新行内模式的 CodecGopSequence 查询D3D12DDICAPS_TYPE_VIDEO_0080_ENCODER_SUPPORT 时,必须设置D3D12_VIDEO_ENCODER_SUPPORT_FLAG_GENERAL_SUPPORT_OK标志。

此结构不适用于 AV1 编解码器输入。 请改用 D3D12DDICAPS_VIDEO_ENCODER_SUPPORT1_DATA_0096 进行 AV1 编解码器支持。

有关一般信息,请参阅 D3D12 视频编码

要求

要求 价值
最低支持的客户端 Windows 11 (WDDM 3.0)
标头 d3d12umddi.h

另请参阅

D3D12DDIARG_VIDEO_GETCAPS_0020

PFND3D12DDI_VIDEO_ENCODE_FRAME_0082_0