estrutura D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS1 (d3d12video.h)

Representa argumentos de saída para ID3D12VideoEncodeCommandList4::ResolveEncoderOutputMetadata1, com suporte para saídas de metadados opcionais, incluindo mapas QP, mapas SATD, mapas de alocação de bits e dados 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

Um D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER que contém os metadados resolvidos obrigatórios. O layout resolvido é inalterado em relação às versões anteriores.

pOutputQPMap

Um ponteiro para uma textura ID3D12Resource para a saída do mapa QP. Pode ser NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_QP_MAP não estiver definido. Quando presente, o formato de textura deve ser DXGI_FORMAT_R8_SINT para H.264 e HEVC ou DXGI_FORMAT_R8_UINT para AV1. As dimensões devem corresponder a EncoderOutputMetadataQPMapTextureDimensions de D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1.

pOutputSATDMap

Um ponteiro para uma textura ID3D12Resource para saída do mapa SATD. Pode ser NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SATD_MAP não estiver definido. Quando presente, o formato de textura deve ser DXGI_FORMAT_R32_UINT. As dimensões devem corresponder a EncoderOutputMetadataSATDMapTextureDimensions de D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1.

pOutputBitAllocationMap

Um ponteiro para uma textura ID3D12Resource para a saída do mapa de alocação de bits. Pode ser NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_RC_BIT_ALLOCATION_MAP não estiver definido. Quando presente, o formato de textura deve ser DXGI_FORMAT_R32_UINT. As dimensões devem corresponder a EncoderOutputMetadataBitAllocationMapTextureDimensions deD3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1.

ResolvedFramePSNRData

Um D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER para dados PSNR no nível do quadro. A ID3D12Resource associada poderá ser NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_FRAME_PSNR não estiver definida. Quando presente, o recurso deve ser um D3D12_RESOURCE_DIMENSION_BUFFER com Largura definida como sizeof(D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT). O conteúdo é interpretado como D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT.

ResolvedSubregionsPSNRData

Um D3D12_VIDEO_ENCODER_ENCODE_OPERATION_METADATA_BUFFER para dados PSNR de nível de sub-região. A ID3D12Resource associada poderá ser NULL se D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNR não estiver definida. Quando presente, o recurso deve ser um D3D12_RESOURCE_DIMENSION_BUFFER com EncoderOutputMetadataSubregionsPSNRResolvedMetadataBufferSize de D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1. O conteúdo é interpretado como uma matriz de D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT com um elemento por sub-região.

Observações

Essa estrutura estende D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS com saídas de metadados opcionais.

Requirements

Requisito Valor
Header d3d12video.h

Consulte também

ID3D12VideoEncodeCommandList4::ResolveEncoderOutputMetadata1

D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_ARGUMENTS

D3D12_VIDEO_ENCODER_RESOLVE_METADATA_OUTPUT_PSNR_RESOLVED_LAYOUT