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 中选择哪些值作为 FrameRestorationTypeLoopRestorationPixelSize 的输入参数。

第一个数组索引对应于还原筛选器类型。

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