次の方法で共有


DXVAHDDDI_VPDEVCAPS構造体 (d3dumddi.h)

DXVAHDDDI_VPDEVCAPS構造では、デコード デバイスがサポートするビデオ プロセッサ機能について説明します。

構文

typedef struct _DXVAHDDDI_VPDEVCAPS {
  [in]  UINT        Reserved;
  [out] UINT        DeviceCaps;
  [out] UINT        FeatureCaps;
  [out] UINT        FilterCaps;
  [out] UINT        InputFormatCaps;
  [out] D3DDDI_POOL InputPool;
  [out] UINT        OutputFormatCount;
  [out] UINT        InputFormatCount;
  [out] UINT        VideoProcessorCount;
  [out] UINT        MaxInputStreams;
  [out] UINT        MaxStreamStates;
} DXVAHDDDI_VPDEVCAPS;

メンバーズ

[in] Reserved

引っ込み思案。 0 にする必要があります。

[out] DeviceCaps

デバイス固有の機能を示す、DXVAHDDDI_DEVICE_CAPS列挙の次の値のビットごとの OR。

DXVAHDDDI_DEVICE_CAPS_LINEAR_SPACE (0x1)

ドライバーは、線形空間でビデオ コンテンツをブレンドできます。 従来、ビデオ コンテンツは非線形空間にあり、ガンマ 2.2 が修正されるため (sRGB)、ドライバーはブレンド操作を実行する前にビデオ コンテンツを線形空間に変換して、より良い結果を得ることができます。

DXVAHDDDI_DEVICE_CAPS_xvYCC (0x2)

ドライバーは、ドライバーが YCbCr 形式の種類に入力して出力するときに、拡張色域の色を保持しながらビデオ処理を実行できます。

DXVAHDDDI_DEVICE_CAPS_RGB_RANGE_CONVERSION (0x4)

ドライバーは、入力と出力の両方が RGB 色空間であるが、範囲が異なる場合に範囲変換を実行できます (たとえば、入力がフル レンジ RGB で、出力範囲が RGB に制限されています)。 この値が設定されていない場合、ドライバーは RGB 範囲を無視し、範囲を変更せずに RGB 入力ストリームを RGB 出力に作成します。

DXVAHDDDI_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION (0x8)

ドライバーは、入力と出力の両方が YCbCr 色空間であるが、マトリックスが異なる場合にマトリックス変換を実行できます (たとえば、入力は BT.601、出力は BT.709)。 この値が設定されていない場合、ドライバーは YCbCr マトリックスを無視し、マトリックスを変更せずに YCbCr 出力への YCbCr 入力ストリームを構成します。

DXVAHDDDI_DEVICE_CAPS_NOMINAL_RANGE (0x10)

入力と出力で異なる輝度範囲が使用されている場合、ビデオ プロセッサは輝度範囲間で変換できます。

輝度範囲の詳細については、Windows 8.1 YUV 形式の範囲を参照してください。

Windows 8.1 以降でサポートされています。

ドライバーは、XR_BIAS、FP16、および FP32 形式 (広い色域形式) が線形空間にあると判断するため、前の機能値が設定されているかどうかに関係なく、拡張色域の色を保持できます。

[out] FeatureCaps

機能固有の機能を示す、DXVAHDDDI_FEATURE_CAPS列挙体の次の値のビットごとの OR。

DXVAHDDDI_FEATURE_CAPS_ALPHA_FILL (0x1)

ドライバーは、アルファフィル モードに指定されている出力サーフェイスのターゲット四角形内のアルファ値を設定できます。 この操作の詳細については、DXVAHDDDI_BLT_STATE_ALPHA_FILL_DATAを参照してください。

DXVAHDDDI_FEATURE_CAPS_CONSTRICTION (0x2)

ドライバーは、構成されたターゲット四角形をダウンサンプリングできます。 この操作の詳細については、DXVAHDDDI_BLT_STATE_CONSTRICTION_DATAを参照してください。

DXVAHDDDI_FEATURE_CAPS_LUMA_KEY (0x4)

ドライバーは、luma キー範囲内のピクセルを透明にすることができます。 この操作の詳細については、DXVAHDDDI_STREAM_STATE_LUMA_KEY_DATAを参照してください。

DXVAHDDDI_FEATURE_CAPS_ALPHA_PALETTE (0x8)

ドライバーは、パレット エントリのアルファ値を適用できます。 アルファ ブレンドの詳細については、「DXVAHDDDI_STREAM_STATE_ALPHA_DATA」を参照してください。

DXVAHDDDI_FEATURE_CAPS_ROTATION (0x10)

ドライバーは、ディスプレイ出力サーフェイスに個別の表示回転値を適用できます。 この操作の詳細については、DXVAHDDDI_STREAM_STATE_ROTATION_DATAを参照してください。

Windows 8 以降でサポートされています。

[out] FilterCaps

フィルター固有の機能を示す、DXVAHDDDI_FILTER_CAPS列挙体の次の値のビットごとの OR。

DXVAHDDDI_FILTER_CAPS_BRIGHTNESS (0x1)

ドライバーは、明るさ ProcAmp をサポートしています。

DXVAHDDDI_FILTER_CAPS_CONTRAST (0x2)

ドライバーは、コントラスト ProcAmp をサポートしています。

DXVAHDDDI_FILTER_CAPS_HUE (0x4)

ドライバーは Hue ProcAmp をサポートしています。

DXVAHDDDI_FILTER_CAPS_SATURATION (0x8)

ドライバーは、飽和 ProcAmp をサポートしています。

DXVAHDDDI_FILTER_CAPS_NOISE_REDUCTION (0x10)

ドライバーは、ノイズリダクション フィルターをサポートしています。

DXVAHDDDI_FILTER_CAPS_EDGE_ENHANCEMENT (0x20)

ドライバーは、エッジ強化フィルターをサポートしています。

DXVAHDDDI_FILTER_CAPS_ANAMORPHIC_SCALING (0x40)

ドライバーは、ソース四角形から宛先の四角形に線形または非線形にスケーリングできます。 ドライバーにこの機能がある場合は、4:3 の標準ビデオ コンテンツを 16:9 のワイド 画面に拡大できます。

[out] InputFormatCaps

入力形式固有の機能を示す、DXVAHDDDI_INPUT_FORMAT_CAPS列挙体の次の値のビットごとの OR。

DXVAHDDDI_INPUT_FORMAT_CAPS_RGB_INTERLACED (0x1)

ドライバーは、RGB 形式の種類で入力ストリームのインター レースを解除できます。

DXVAHDDDI_INPUT_FORMAT_CAPS_RGB_PROCAMP (0x2)

ドライバーは、RGB 形式の種類の入力ストリームに ProcAmp フィルターを適用できます。

DXVAHDDDI_INPUT_FORMAT_CAPS_RGB_LUMA_KEY (0x4)

ドライバーは、RGB 形式の種類で入力ストリームを luma キーを押すことができます。

DXVAHDDDI_INPUT_FORMAT_CAPS_PALETTE_INTERLACED (0x8)

ドライバーは、淡色化された形式の種類で入力ストリームのインターレースを解除できます。

ドライバーは、入力フレームにほとんど使用されないビデオ処理をサポートするのではなく、上記の機能をサポートできます。 これらの機能をサポートするには、ビデオ プロセッサ パイプラインに追加の手順が必要であるため、ドライバーでサポートされない場合があります。

ドライバーがこれらの機能をサポートしている場合、ドライバーは、入力ストリームに対する処理を実行する特定の色空間が必要な場合があります。 たとえば、ProcAmp と luma キーは YCbCr 色空間で実行されます。 ドライバーは、中間色変換を実行するストリーム状態の色空間を参照します。

たとえば、ドライバーが DXVAHDDDI_STREAM_STATE_INPUT_COLOR_SPACE_DATARGB_RangeYCbCr_Matrix のメンバーをそれぞれ 0 と 1 に設定すると、ドライバーは ProcAmp を適用する前に、フル レンジ RGB から BT.709 YCbCr に変換し、入力ストリームを全範囲 RGB に変換します。

[out] InputPool

入力サーフェスの割り当て元となるメモリ プールを示す D3DDDI_POOL型指定された値。

[out] OutputFormatCount

サポートされている出力形式の数。 ドライバーは、ドライバーの GetCaps 関数がD3DDDICAPS_DXVAHD_GETVPOUTPUTFORMATS値を設定して呼び出されたときに、デコード デバイスがサポートする出力形式の D3DDDIFORMAT 列挙型の配列を返します。

[out] InputFormatCount

サポートされている入力形式の数。 ドライバーは、ドライバーの GetCaps 関数がD3DDDICAPS_DXVAHD_GETVPINPUTFORMATS値を設定して呼び出されたときに、デコード デバイスがサポートする入力形式の D3DDDIFORMAT 列挙型の配列を返します。

[out] VideoProcessorCount

サポートされているビデオ プロセッサの数。 ドライバーは、ドライバーの GetCaps 関数がD3DDDICAPS_DXVAHD_GETVPCAPS値を設定して呼び出されたときに、デコード デバイスがサポートする各ビデオ プロセッサの機能の DXVAHDDDI_VPCAPS 構造体の配列を返します。

[out] MaxInputStreams

ドライバーは、一度に入力ストリームの最大数を有効にすることができます。

[out] MaxStreamStates

ストリームの状態の最大数。

備考

ユーザー モードの表示ドライバーは、GetCaps 関数が D3DDDIARG_GETCAPS の Type メンバーに設定されたD3DDDICAPS_DXVAHD_GETVPDEVCAPS値を使用して呼び出されると、D3DDDIARG_GETCAPS 構造体の pData メンバーに設定されたDXVAHDDDI_VPDEVCAPS構造体へのポインターを返します。

必要条件

要件 価値
サポートされる最小クライアント DXVAHDDDI_VPDEVCAPSは、Windows 7 以降でサポートされています。
ヘッダー d3dumddi.h (D3dumddi.h を含む)

関連項目

D3DDDIARG_GETCAPS

D3DDDIFORMAT

D3DDDI_POOL

DXVAHDDDI_VPCAPS

GetCaps