D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1構造体 (d3d12video.h)

オプションのメタデータをサポートして、ビデオ エンコードのリソース要件を取得します。 ID3D12VideoDevice::CheckFeatureSupportD3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS1機能値で使用されます。

構文

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

1 つの GPU 操作の場合は、これを 0 に設定します。 複数の GPU ノードがある場合は、コマンド キューが適用されるノード (デバイスの物理アダプターの 1 つ) を特定するように少し設定します。 マスク内の各ビットは、1 つのノードに対応します。 1 ビットのみを設定する必要があります。

Codec

クエリするコーデックを指定する D3D12_VIDEO_ENCODER_CODEC

Profile

エンコーダー プロファイルを指定する D3D12_VIDEO_ENCODER_PROFILE_DESC

InputFormat

入力形式を指定する DXGI_FORMAT

PictureTargetResolution

ターゲットの解像度を指定する D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC

IsSupported

出力。 構成がサポートされているかどうかを示します。

CompressedBitstreamBufferAccessAlignment

出力。 圧縮されたビットストリーム バッファーに必要なアラインメント。

EncoderMetadataBufferAccessAlignment

出力。 エンコーダー メタデータ バッファーに必要なアラインメント。

MaxEncoderOutputMetadataBufferSize

出力。 エンコーダー出力メタデータ バッファーの最大サイズ (バイト単位)。

OptionalMetadata

要求される省略可能なメタデータを示す D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAGS 値。

CodecConfiguration

コーデック構成を指定する D3D12_VIDEO_ENCODER_CODEC_CONFIGURATIONOptionalMetadata でフラグが設定されている場合は必須。それ以外の場合は、ゼロ/NULL として渡します。

EncoderOutputMetadataQPMapTextureDimensions

出力。 QP マップ出力のテクスチャ ディメンションを示す D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESCD3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_QP_MAPが設定されている場合に有効です。 ブロック サイズは、 PictureTargetResolution をこれらのディメンションで除算することで派生できます。

EncoderOutputMetadataSATDMapTextureDimensions

出力。 SATD マップ出力のテクスチャ ディメンションを示す D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESCD3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SATD_MAPが設定されている場合に有効です。 ブロック サイズは、 PictureTargetResolution をこれらのディメンションで除算することで派生できます。

EncoderOutputMetadataBitAllocationMapTextureDimensions

出力。 ビット割り当てマップ出力のテクスチャ ディメンションを示す D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESCD3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_RC_BIT_ALLOCATION_MAPが設定されている場合に有効です。 ブロック サイズは、 PictureTargetResolution をこれらのディメンションで除算することで派生できます。

EncoderOutputMetadataFramePSNRComponentsNumber

出力。 フレーム レベルの PSNR 用に書き込まれた PSNR コンポーネント (Y、U、V の順序) の数。 D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_FRAME_PSNRが設定されている場合に有効です。

EncoderOutputMetadataSubregionsPSNRComponentsNumber

出力。 サブ領域ごとに書き込まれた PSNR コンポーネント (Y、U、V の順序) の数。 D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNRが設定されている場合に有効です。

EncoderOutputMetadataSubregionsPSNRResolvedMetadataBufferSize

出力。 サブ領域 PSNR データに必要なバッファー の幅 サイズ。 D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_SUBREGIONS_PSNRが設定されている場合に有効です。

注釈

OptionalMetadataD3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAG_NONEされている場合、D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTSに存在する出力は、下位互換性のために同じ値を報告する必要があります。 選択されていない省略可能なメタデータ フラグの出力フィールドは 0 として報告されます。

Requirements

Requirement 価値
ヘッダー d3d12video.h

こちらも参照ください

D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOURCE_REQUIREMENTS

D3D12_VIDEO_ENCODER_OPTIONAL_METADATA_ENABLE_FLAGS