структура D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095 (d3d12umddi.h)
Если значение D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS отображается для соответствующей структуры, драйвер должен записать значение после выполнения EncodeFrame с изменениями или без изменений (копирование входных данных клиента API), выполненных драйвером. В противном случае драйвер должен скопировать значения из связанных входных данных клиента API при вызове EncodeFrame.
Синтаксис
typedef struct D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095 {
UINT64 CompoundPredictionType;
D3D12DDI_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_CONFIG_0095 LoopFilter;
D3D12DDI_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_DELTA_CONFIG_0095 LoopFilterDelta;
D3D12DDI_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_CONFIG_0095 Quantization;
D3D12DDI_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_DELTA_CONFIG_0095 QuantizationDelta;
D3D12DDI_VIDEO_ENCODER_AV1_CDEF_CONFIG_0095 CDEF;
D3D12DDI_VIDEO_ENCODER_AV1_SEGMENTATION_CONFIG_0095 SegmentationConfig;
UINT64 PrimaryRefFrame;
UINT64 ReferenceIndices[7];
} D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095;
Члены
CompoundPredictionType
Связанный флаг D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_COMPOUND_PREDICTION_MODE.
LoopFilter
Связанный флаг D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER.
LoopFilterDelta
Связанный флаг D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER_DELTA.
Quantization
Связанный флаг D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION.
QuantizationDelta
Связанный флаг D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION_DELTA.
CDEF
Связанный флаг D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_CDEF_DATA.
SegmentationConfig
Этот элемент работает в разных режимах в зависимости от выбранного режима сегментации.
- Если для текущего кадра включена D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_0095_FLAG_ENABLE_FRAME_SEGMENTATION_AUTO , драйвер:
- Вычисляет и записывает SegmentationConfig, который будет использоваться клиентом API для написания синтаксиса segmentation_params() в заголовке кадра.
- Вычисляет и записывает данные карты read_segment_id() непосредственно в сжатый битовый поток.
- Если D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_FRAME_SEGMENTATION_CUSTOM включена для текущего кадра, драйвер:
- Скопируйте сюда объект SegmentationConfig , отправленный клиентом API в параметрах кодирования кадра для клиента API, чтобы закодировать синтаксис segmentation_params() в заголовке кадра.
- Скопируйте карту read_segment_id(), отправленную клиентом API, в параметры кодирования кадра непосредственно в сжатом битовом потоке.
- В противном случае (оба режима сегментации отключены):
- Драйвер должен записать все нули.
- Клиент API записывает segmentation_enabled = 0 соответствующим образом в разделе segmentation_params() заголовка кадра.
PrimaryRefFrame
Связанный флаг D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_PRIMARY_REF_FRAME. Если флаг установлен, драйвер управляет выбором основной опорной рамки, от которой наследуются идентификаторы сегментов, CDF и т. д.
При использовании вместе с D3D12DDI_VIDEO_ENCODER_AV1_FEATURE_0095_FLAG_AUTO_SEGMENTATION позволяет драйверу принудительно применять значение, отличное от PRIMARY_REF_NONE, если применимо, предоставляя драйверу полный контроль над синтаксисом AV1: segmentation_update_map, segmentation_temporal_update и segmentation_update_data в segmentation_params().
ReferenceIndices[7]
Когда отображается флаг, драйвер может изменить порядок или переназначить (но не изменить количество ссылок) массив ReferenceIndices на основе введенных пользователем D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095. ReferenceIndices. В противном случае драйвер должен скопировать все записи массива этого параметра "как есть" из D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095.ReferenceIndices.
Клиент API записывает заголовок рисунка ref_frame_idx синтаксис AV1 из этого выходного параметра.
Комментарии
Дополнительные сведения см. в разделе Кодирование видео D3D12 AV1 .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 11 версии 24H2 (WDDM 3.2) |
Верхняя часть | d3d12umddi.h |