struttura D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS1 (d3d12video.h)

Rappresenta gli argomenti di output per ID3D12VideoEncodeCommandList4::ResolveEncoderOutputMetadata1, con supporto per output di metadati facoltativi, tra cui mappe QP, mappe SATD, mappe di allocazione dei bit e dati PSNR.

Syntax

typedef struct D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS1 {
  D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER ResolvedLayoutMetadata;
  ID3D12Resource                                       *pOutputQPMap;
  ID3D12Resource                                       *pOutputSATDMap;
  ID3D12Resource                                       *pOutputBitAllocationMap;
  D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER ResolvedFramePSNRData;
  D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER ResolvedSubregionsPSNRData;
} D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS1;

Members

ResolvedLayoutMetadata

Oggetto D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER contenente i metadati risolti obbligatori. Il layout risolto rimane invariato rispetto alle versioni precedenti.

pOutputQPMap

Puntatore a una trama ID3D12Resource per l'output della mappa QP. Può essere NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_QP_MAP non è impostato. Quando presente, il formato della trama deve essere DXGI_FORMAT_R8_SINT per H.264 e HEVC o DXGI_FORMAT_R8_UINT per AV1. Le dimensioni devono corrispondere a EncoderOutputMetadataQPMapTextureDimensions da D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1.

pOutputSATDMap

Puntatore a una trama ID3D12Resource per l'output della mappa SATD. Può essere NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SATD_MAP non è impostato. Quando presente, il formato della trama deve essere DXGI_FORMAT_R32_UINT. Le dimensioni devono corrispondere a EncoderOutputMetadataSATDMapTextureDimensions da D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1.

pOutputBitAllocationMap

Puntatore a una trama ID3D12Resource per l'output della mappa di allocazione dei bit. Può essere NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_RC_BIT_ALLOCATION_MAP non è impostato. Quando presente, il formato della trama deve essere DXGI_FORMAT_R32_UINT. Le dimensioni devono corrispondere a EncoderOutputMetadataBitAllocationMapTextureDimensions da D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1.

ResolvedFramePSNRData

Un D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER per i dati PSNR a livello di frame. L'ID3D12Resource associato può essere NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_FRAME_PSNR non è impostato. Quando presente, la risorsa deve essere un D3D12_RESOURCE_DIMENSION_BUFFER con Width impostato su sizeof(D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT). Il contenuto viene interpretato come D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT.

ResolvedSubregionsPSNRData

Un D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER per i dati PSNR a livello di area secondaria. L'ID3D12Resource associato può essere NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNR non è impostato. Quando presente, la risorsa deve essere un D3D12_RESOURCE_DIMENSION_BUFFER con Width matching EncoderOutputMetadataSubregionsPSNRResolvedMetadataBufferSize da D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1. Il contenuto viene interpretato come una matrice di D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT compressa con un elemento per ogni area secondaria.

Osservazioni:

Questa struttura estende D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS con output di metadati facoltativi.

Requisiti

Requisito Valore
Intestazione d3d12video.h

Vedere anche

ID3D12VideoEncodeCommandList4::ResolveEncoderOutputMetadata1

D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS

D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT