Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Specifies which optional metadata features are enabled for a video encode operation. These flags are used with D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS1 and D3D12_VIDEO_ENCODER_RESOLVE_METADATA_INPUT_ARGUMENTS1.
Syntax
typedef enum D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAGS {
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_NONE = 0x0,
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_QP_MAP = 0x1,
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SATD_MAP = 0x2,
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_RC_BIT_ALLOCATION_MAP = 0x4,
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_FRAME_PSNR = 0x8,
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNR = 0x10
} ;
Constants
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_NONENo additional optional metadata is present. All previously existing mandatory metadata and stats are still included for backward compatibility. |
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_QP_MAPQP map output in metadata is enabled. The reported QP values are the final QP values used to encode each block, including any QP delta map applied on top of the rate control algorithm's QP value. Check D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_QP_MAP_METADATA_AVAILABLE before using this flag. |
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SATD_MAPSATD (Sum of Absolute Transformed Differences) map output in metadata is enabled. The reported SATD values are before quantization for each block. Check D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_SATD_MAP_METADATA_AVAILABLE before using this flag. |
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_RC_BIT_ALLOCATION_MAPPer-block rate control bit allocation output in metadata is enabled. The driver writes the number of allocated bits used for each block. Check D3D12_VIDEO_ENCODER_SUPPORT_FLAG_PER_BLOCK_RC_BIT_ALLOCATION_MAP_METADATA_AVAILABLE before using this flag. |
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_FRAME_PSNRFrame-level PSNR (Peak Signal-to-Noise Ratio) output stats are enabled. The driver writes the PSNR of Y (and optionally U and V in that order) components. Check D3D12_VIDEO_ENCODER_SUPPORT_FLAG_FRAME_PSNR_METADATA_AVAILABLE before using this flag. |
D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNRSubregion-level PSNR output stats are enabled. The driver writes the PSNR of Y (and optionally U and V in that order) components for each frame subregion. Check D3D12_VIDEO_ENCODER_SUPPORT_FLAG_SUBREGIONS_PSNR_METADATA_AVAILABLE before using this flag. |
Remarks
When a flag is not set, the driver can skip calculating that metadata during encoding to avoid performance impact.
Requirements
| Requirement | Value |
|---|---|
| Header | d3d12video.h |