次の方法で共有


D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080列挙 (d3d12umddi.h)

D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080列挙は、レート制御のフラグを指定します。

構文

typedef enum D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAGS_0080 {
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_NONE = 0x0,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_DELTA_QP = 0x1,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_FRAME_ANALYSIS = 0x2,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE = 0x4,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_INITIAL_QP = 0x8,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_MAX_FRAME_SIZE = 0x10,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_1_ENABLE_VBV_SIZES = 0x20,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT = 0x40,
  D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_QUALITY_VS_SPEED = 0x80
} ;

定数

 
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_NONE
値: 0x0
レート制御フラグはありません。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_DELTA_QP
値: 0x1
選択したレート制御モードが D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP場合、 pRateControlQPMap フィールドの QP 値が絶対 QP 値として使用されるため、このフラグは効果がありません。

他のレート制御モードの場合、このフラグを使用すると、 pRateControlQPMap を差分 QP マップとして解釈して、現在の フレーム エンコード操作に使用できます。 マップで提供される値は、レート制御アルゴリズムまたは CQP モードで設定されたベースライン QP 定数によって決定される QP 値の上にインクリメントまたはデクリメントされます。

デルタ QP 調整を一部のアクティブなレート制御モードと共に使用すると、レート制御の予算作成アルゴリズムによって選択された QP 値が明示的に変更されるため、ビットレート制約に違反する可能性があります。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_FRAME_ANALYSIS
値: 0x2
D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGSでサポートが示されている場合、このフラグを使用すると、レート制御アルゴリズムは、最初のパスでフレーム分析を実行して収集された統計情報に基づいて QP 値を選択することで、ビットレートの使用を最適化できます。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_QP_RANGE
値: 0x4
設定する場合は、レート制御アルゴリズムの範囲として MinQp 値と MaxQp 値を使用します。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_INITIAL_QP
値: 0x8
設定する場合は、速度制御アルゴリズムの範囲として InitialQP 値を使用します。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_ENABLE_MAX_FRAME_SIZE
値: 0x10
D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_0083_0_RATE_CONTROL_MAX_FRAME_SIZE_AVAILABLEがサポートされている場合、レート制御アルゴリズムでは、フレームあたりの最大サイズをレート制御構成の指定されたパラメーターに制限する必要があります。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0080_1_ENABLE_VBV_SIZES
値: 0x20
設定した場合は、 VBVCapacityInitialVBVFullness の使用を有効にします。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORT
値: 0x40
D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORTを設定する必要があります。 「解説」を参照してください。
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_QUALITY_VS_SPEED
値: 0x80
D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_EXTENSION1_SUPPORTD3D12DDI_VIDEO_ENCODER_SUPPORT_FLAG_RATE_CONTROL_QUALITY_VS_SPEED_AVAILABLEが必要です。 を有効にすると、レート制御構造での QualityVsSpeed の使用が示されます。

注釈

D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_FLAG_0096_ENABLE_EXTENSION1_SUPPORTを有効にすると、次の表に示すように、AV1 エンコード用に拡張されたレート制御構造が D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS.pConfiguration_Xxx で使用されることを示します。

フラグが有効になっている場合のレート制御モード D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMSの種類 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS DataSize
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_ABSOLUTE_QP_MAP sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_ABSOLUTE_QP_MAP)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP1 sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP1)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CBR D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR1 sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR1)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_VBR D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR1 sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR1)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_QVBR D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1 sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR1)

それ以外の場合は、次の表に従って、無効にした場合にレガシ構造体が使用されます。

フラグが無効になっている場合のレート制御モード D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMSの種類 D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CONFIGURATION_PARAMS DataSize
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP NULL 0
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CQP)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_CBR D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_VBR D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR)
D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_MODE_QVBR D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR sizeof(D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR)

一般的な情報については、「 D3D12 ビデオ エンコード 」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 11 (WDDM 3.0)
Header d3d12umddi.h

こちらもご覧ください

D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_0080_2

D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_CBR_0080

D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_QVBR_0080_2

D3D12DDI_VIDEO_ENCODER_RATE_CONTROL_VBR_0080

D3D12DDI_VIDEO_ENCODER_SUPPORT_FLAGS_0083_0

PFND3D12DDI_VIDEO_ENCODE_FRAME_0082_0