Compartilhar via


estrutura D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095 (d3d12umddi.h)

Se um valor de D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS for relatado para sua respectiva estrutura, o driver deverá gravar o valor após a execução de EncodeFrame com ou sem modificações (copiar entrada do cliente da API) feitas pelo driver. Caso contrário, o driver deve copiar os valores da entrada do Cliente de API associada ao chamar EncodeFrame.

Sintaxe

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;

Membros

CompoundPredictionType

O sinalizador associado é D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_COMPOUND_PREDICTION_MODE.

LoopFilter

O sinalizador associado é D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER.

LoopFilterDelta

O sinalizador associado é D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER_DELTA.

Quantization

O sinalizador associado é D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION.

QuantizationDelta

O sinalizador associado é D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION_DELTA.

CDEF

O sinalizador associado é D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_CDEF_DATA.

SegmentationConfig

Esse membro opera em modos diferentes, dependendo do modo de segmentação selecionado.

  • Se D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_0095_FLAG_ENABLE_FRAME_SEGMENTATION_AUTO estiver ativado para o quadro atual, o driver:
    • Calcula e grava SegmentationConfig, que será usado pelo Cliente de API para codificar a sintaxe segmentation_params() no cabeçalho do quadro.
    • Calcula e grava as informações do mapa read_segment_id() diretamente no bitstream compactado.
  • Se D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_FRAME_SEGMENTATION_CUSTOM estiver ativado para o quadro atual, o driver:
    • Copie aqui o SegmentationConfig enviado pelo Cliente de API nos parâmetros de quadro de codificação do Cliente de API para codificar a sintaxe segmentation_params() no cabeçalho do quadro.
    • Copie o mapa read_segment_id() enviado pelo Cliente de API nos parâmetros de quadro de codificação diretamente no bitstream compactado.
  • Caso contrário (ambos os modos de segmentação estão desativados):
    • O driver deve gravar todos os zeros.
    • O Cliente de API gravará segmentation_enabled = 0 adequadamente na seção segmentation_params() do cabeçalho do quadro.

PrimaryRefFrame

O sinalizador associado é D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_PRIMARY_REF_FRAME. Se o sinalizador tiver sido definido, o driver controlará a seleção do quadro de referência primário do qual o mapa de ID do segmento, o CDF etc. são herdados.

Quando usado junto com D3D12DDI_VIDEO_ENCODER_AV1_FEATURE_0095_FLAG_AUTO_SEGMENTATION, permite que o driver force um valor diferente de PRIMARY_REF_NONE quando aplicável, dando ao driver controle total da sintaxe AV1: segmentation_update_map, segmentation_temporal_update e segmentation_update_data em segmentation_params().

ReferenceIndices[7]

Quando o sinalizador é relatado, o driver pode reordenar/remapear (mas não alterar o número de referências) da matriz ReferenceIndices , com base na entrada do usuário D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095. ReferenceIndices. Caso contrário, o driver deverá copiar cada entrada de matriz desse parâmetro como está de D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095.ReferenceIndices.

O Cliente de API gravará o cabeçalho da imagem ref_frame_idx sintaxe AV1 desse parâmetro de saída.

Comentários

Confira Codificação de vídeo D3D12 AV1 para obter mais informações.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 11, versão 24H2 (WDDM 3.2)
Cabeçalho d3d12umddi.h

Confira também

D3D12DDI_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT_0095

D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS