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 |