D3D12DDI_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT_0095 结构 (d3d12umddi.h)
D3D12DDI_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT_0095 结构包含 AV1 编码的配置支持参数。
语法
typedef struct D3D12DDI_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT_0095 {
D3D12DDI_VIDEO_ENCODER_AV1_FEATURE_0095_FLAGS SupportedFeatureFlags;
D3D12DDI_VIDEO_ENCODER_AV1_FEATURE_0095_FLAGS RequiredFeatureFlags;
D3D12DDI_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_0095_FLAGS SupportedInterpolationFilters;
D3D12DDI_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_0095_FLAGS SupportedRestorationParams[3][3];
D3D12DDI_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_0095_FLAGS SupportedSegmentationModes;
D3D12DDI_VIDEO_ENCODER_AV1_TX_MODE_0095_FLAGS SupportedTxModes[4];
D3D12DDI_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE_0095 SegmentationBlockSize;
D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS PostEncodeValuesFlags;
UINT MaxTemporalLayers;
UINT MaxSpatialLayers;
} D3D12DDI_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT_0095;
成员
SupportedFeatureFlags
输出参数。 一个D3D12DDI_VIDEO_ENCODER_AV1_FEATURE_0095_FLAGS枚举,指示编解码器支持哪些功能。 API 客户端可以设置或不设置支持的功能。
RequiredFeatureFlags
输出参数。 一个D3D12DDI_VIDEO_ENCODER_AV1_FEATURE_0095_FLAGS枚举,指示驱动程序需要由 API 客户端设置的功能。
SupportedInterpolationFilters
输出参数。 一个D3D12DDI_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_0095_FLAGS枚举,指示哪些值可以选择为D3D12DDI_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS类型的输入参数。
SupportedRestorationParams[3]
输出参数。 一个D3D12DDI_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_0095_FLAGS枚举,指示可以在 D3D12DDI_VIDEO_ENCODER_AV1_RESTORATION_CONFIG_0095 中选择哪些值作为 FrameRestorationType 和 LoopRestorationPixelSize 的输入参数。
第一个数组索引对应于还原筛选器类型。
SupportedRestorationParams[i][j] 中的索引 i | 筛选器类型 |
---|---|
0 | 切换 |
1 | 维纳 |
2 | SGRPROJ |
请注意,筛选器类型的索引对应于D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE减 1 (跳过D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE_DISABLED) 。
第二个数组索引对应于平面。
SupportedRestorationParams 中的 Index j[i][j] | 平面 |
---|---|
0 | Y 平面 |
1 | U 平面 |
2 | V 平面 |
SupportedRestorationParams[i][j] 中返回的值是一个位标志掩码,指示 j 平面中的第 i 个筛选器是否为:
- SupportedRestorationParams[i][j] = D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAG_NOT_SUPPORTED 表示不支持。
- 支持任何D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE,如 SupportedRestorationParams[i][j] 中的可组合位标志所示。
SupportedSegmentationModes
输出参数。 一个D3D12DDI_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_0095_FLAGS枚举,指示可以在D3D12DDI_VIDEO_ENCODER_AV1_SEGMENTATION_CONFIG_0095中选择哪些分段模式。
SupportedTxModes[4]
输出参数。 一个D3D12DDI_VIDEO_ENCODER_AV1_TX_MODE_0095_FLAGS值的数组,指示哪些转换模式值可以作为每个不同D3D12DDI_VIDEO_ENCODER_AV1_FRAME_TYPE_0095 D3D12DDI_VIDEO_ENCODER_AV1_TX_MODE_0095类型的输入参数。 驱动程序必须为每个帧类型至少支持 1 种模式;也就是说,掩码值不能为 0。
SegmentationBlockSize
输出参数。 指示段映射的块大小的 D3D12DDI_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE_0095 枚举。 这既适用于 自定义分段D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MAP_0095 中的输入块,也适用于自动分段中驱动程序在压缩位流中写入的段映射的块大小。
PostEncodeValuesFlags
一个D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS枚举,指定基础编码器能够覆盖关联的 AV1 语法值或完全接受 API 客户端可配置输入的 AV1 编码功能。
MaxTemporalLayers
指定可支持的最大时态层数。 报告的值必须在 [1..MaxTemporalIdSupported + 1] 范围内。 报告的值为 1,没有临时可伸缩性支持。
MaxSpatialLayers
指定可支持的最大空间层数。 报告的值必须在 [1..MaxSpatialIdSupported + 1] 范围内。 报告的值为 1,没有空间可伸缩性支持。
注解
有关详细信息,请参阅 D3D12 AV1 视频编码 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 11 版本 24H2 (WDDM 3.2) |
标头 | d3d12umddi.h |
另请参阅
D3D12DDICAPS_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_DATA_0083_0