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

予約済み。 ゼロを指定してください。

[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_DATAのRGB_RangeメンバーとYCbCr_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 以降でサポートされています。
Header d3dumddi.h (D3dumddi.h を含む)

こちらもご覧ください

D3DDDIARG_GETCAPS

D3DDDIFORMAT

D3DDDI_POOL

DXVAHDDDI_VPCAPS

GetCaps