Condividi tramite


struttura D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095 (d3d12umddi.h)

Se viene segnalato un valore D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS per la rispettiva struttura, il driver deve scrivere il valore dopo l'esecuzione di EncodeFrame con o senza modifiche (copia input client API) eseguite dal driver. In caso contrario, il driver deve copiare i valori dall'input client API associato quando si chiama EncodeFrame.

Sintassi

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;

Membri

CompoundPredictionType

Il flag associato è D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_COMPOUND_PREDICTION_MODE.

LoopFilter

Il flag associato è D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER.

LoopFilterDelta

Il flag associato è D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_LOOP_FILTER_DELTA.

Quantization

Il flag associato è D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION.

QuantizationDelta

Il flag associato è D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_QUANTIZATION_DELTA.

CDEF

Il flag associato è D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_CDEF_DATA.

SegmentationConfig

Questo membro opera in modalità diverse a seconda della modalità di segmentazione selezionata.

  • Se D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_0095_FLAG_ENABLE_FRAME_SEGMENTATION_AUTO è attivo per il frame corrente, il driver:
    • Calcola e scrive SegmentationConfig, che verrà usato dal client API per codificare la sintassi segmentation_params() nell'intestazione del frame.
    • Calcola e scrive le informazioni sulla mappa read_segment_id() direttamente nel flusso di bit compresso.
  • Se D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_FRAME_SEGMENTATION_CUSTOM è attivo per il frame corrente, il driver:
    • Copiare qui il SegmentationConfig inviato dal client API nei parametri del frame di codifica per il client API per codificare la sintassi segmentation_params() nell'intestazione del frame.
    • Copiare la mappa read_segment_id() inviata dal client API nei parametri del frame di codifica direttamente nel flusso di bit compresso.
  • In caso contrario (entrambe le modalità di segmentazione sono disattivate):
    • Il driver deve scrivere tutti gli zere.
    • Il client API scriverà segmentation_enabled = 0 di conseguenza nella sezione segmentation_params() dell'intestazione del frame.

PrimaryRefFrame

Il flag associato è D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAG_PRIMARY_REF_FRAME. Se il flag è stato impostato, il driver controlla la selezione del frame di riferimento primario da cui viene ereditata la mappa id segmento, CDF e così via.

Se usato insieme a D3D12DDI_VIDEO_ENCODER_AV1_FEATURE_0095_FLAG_AUTO_SEGMENTATION, consente al driver di forzare un valore diverso da PRIMARY_REF_NONE, se applicabile, assegnando al driver il controllo completo della sintassi AV1: segmentation_update_map, segmentation_temporal_update e segmentation_update_data in segmentation_params().

ReferenceIndices[7]

Quando viene segnalato il flag, il driver può riordinare/rieseguire il mapping (ma non modificare il numero di riferimenti) la matrice ReferenceIndices, in base all'input dell'utente D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095. ReferenceIndices. In caso contrario, il driver deve copiare ogni voce di matrice di questo parametro as-is da D3D12DDI_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA_0095.ReferenceIndices.

Il client API scriverà l'intestazione dell'immagine ref_frame_idx sintassi AV1 da questo parametro di output.

Osservazioni

Per altre informazioni, vedere di codifica video D3D12 AV1.

Fabbisogno

Requisito Valore
client minimo supportato Windows 11, versione 24H2 (WDDM 3.2)
intestazione d3d12umddi.h

Vedere anche

D3D12DDI_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT_0095

D3D12DDI_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_0095_FLAGS