struttura D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1 (d3d12video.h)

Recupera i requisiti delle risorse per la codifica video, con supporto per i metadati facoltativi. Usato con ID3D12VideoDevice::CheckFeatureSupport e il valore della funzionalità D3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1 .

Syntax

typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1 {
  UINT                                               NodeIndex;
  D3D12_VIDEO_ENCODER_CODEC                          Codec;
  D3D12_VIDEO_ENCODER_PROFILE_DESC                   Profile;
  DXGI_FORMAT                                        InputFormat;
  D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC        PictureTargetResolution;
  BOOL                                               IsSupported;
  UINT                                               CompressedBitstreamBufferAccessAlignment;
  UINT                                               EncoderMetadataBufferAccessAlignment;
  UINT                                               MaxEncoderOutputMetadataBufferSize;
  D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAGS OptionalMetadata;
  D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION            CodecConfiguration;
  D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC        EncoderOutputMetadataQPMapTextureDimensions;
  D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC        EncoderOutputMetadataSATDMapTextureDimensions;
  D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC        EncoderOutputMetadataBitAllocationMapTextureDimensions;
  UINT                                               EncoderOutputMetadataFramePSNRComponentsNumber;
  UINT                                               EncoderOutputMetadataSubregionsPSNRComponentsNumber;
  UINT                                               EncoderOutputMetadataSubregionsPSNRResolvedMetadataBufferSize;
} D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1;

Members

NodeIndex

Per una singola operazione GPU, impostare questo valore su zero. Se sono presenti più nodi GPU, impostare un bit per identificare il nodo (una delle schede fisiche del dispositivo) a cui si applica la coda dei comandi. Ogni bit nella maschera corrisponde a un singolo nodo. È necessario impostare un solo bit.

Codec

Oggetto D3D12_VIDEO_ENCODER_CODEC che specifica il codec da eseguire per la query.

Profile

Oggetto D3D12_VIDEO_ENCODER_PROFILE_DESC che specifica il profilo del codificatore.

InputFormat

Oggetto DXGI_FORMAT che specifica il formato di input.

PictureTargetResolution

Oggetto D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC che specifica la risoluzione di destinazione.

IsSupported

Output. Indica se la configurazione è supportata.

CompressedBitstreamBufferAccessAlignment

Output. Allineamento necessario per il buffer bitstream compresso.

EncoderMetadataBufferAccessAlignment

Output. Allineamento necessario per il buffer dei metadati del codificatore.

MaxEncoderOutputMetadataBufferSize

Output. Dimensione massima in byte del buffer dei metadati di output del codificatore.

OptionalMetadata

Valore D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAGS che indica i metadati facoltativi richiesti.

CodecConfiguration

Oggetto D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION che specifica la configurazione del codec. Obbligatorio quando vengono impostati flag in OptionalMetadata; in caso contrario, passare come zero/NULL.

EncoderOutputMetadataQPMapTextureDimensions

Output. Oggetto D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC che indica le dimensioni della trama per l'output della mappa QP. Valido quando D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_QP_MAP è impostato. Le dimensioni del blocco possono essere derivate dividendo PictureTargetResolution per queste dimensioni.

EncoderOutputMetadataSATDMapTextureDimensions

Output. Oggetto D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC che indica le dimensioni della trama per l'output della mappa SATD. Valido quando D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SATD_MAP è impostato. Le dimensioni del blocco possono essere derivate dividendo PictureTargetResolution per queste dimensioni.

EncoderOutputMetadataBitAllocationMapTextureDimensions

Output. Oggetto D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC che indica le dimensioni della trama per l'output della mappa di allocazione dei bit. Valido quando D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_RC_BIT_ALLOCATION_MAP è impostato. Le dimensioni del blocco possono essere derivate dividendo PictureTargetResolution per queste dimensioni.

EncoderOutputMetadataFramePSNRComponentsNumber

Output. Numero di componenti PSNR (Y, U e V in tale ordine) scritti per PSNR a livello di frame. Valido quando D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_FRAME_PSNR è impostato.

EncoderOutputMetadataSubregionsPSNRComponentsNumber

Output. Numero di componenti PSNR (Y, U e V in tale ordine) scritti per ogni area secondaria. Valido quando D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNR è impostato.

EncoderOutputMetadataSubregionsPSNRResolvedMetadataBufferSize

Output. Dimensione della larghezza richiesta del buffer per i dati PSNR delle aree secondarie. Valido quando D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNR è impostato.

Osservazioni:

Quando OptionalMetadata è D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_NONE, gli output presenti anche in D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS devono segnalare valori identici per garantire la compatibilità con le versioni precedenti. I campi di output per i flag di metadati facoltativi non selezionati vengono segnalati come zero.

Requisiti

Requisito Valore
Intestazione d3d12video.h

Vedere anche

D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS

D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAGS