Поделиться через


структура 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, указывающее, какие значения можно выбрать в качестве входных параметров для FrameRestorationType и LoopRestorationPixelSize в D3D12DDI_VIDEO_ENCODER_AV1_RESTORATION_CONFIG_0095.

Первое индексирование массива соответствует типу фильтра восстановления.

Индекс i в SupportedRestorationParams[i][j] Тип фильтра
0 ПЕРЕКЛЮЧАЕМЫЙ
1 САРДЕЛЬКА
2 SGRPROJ

Обратите внимание, что индексирование типов фильтров соответствует D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE минус 1 (пропуск D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE_DISABLED).

Второе индексирование массива соответствует плоскостям.

Index j in SupportedRestorationParams[i][j] Плоскость
0 Плоскость Y
1 Плоскость U
2 Плоскость V

Значение, возвращаемое в SupportedRestorationParams[i][j], представляет собой маску bitflag, указывающую, является ли фильтр i-th в плоскости j-th либо:

  • Не поддерживается параметром 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_TX_MODE_0095 для каждой разной D3D12DDI_VIDEO_ENCODER_AV1_FRAME_TYPE_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 базовый кодировщик может переопределить связанные значения синтаксиса AV1 для или принять настраиваемые входные данные клиента API.

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