D3DDDIARG_VIDEOPROCESSBLT構造体 (d3dumddi.h)
D3DDDIARG_VIDEOPROCESSBLT構造では、実行する Microsoft DirectX ビデオ アクセラレーション (VA) ビデオ処理操作について説明します。
構文
typedef struct _D3DDDIARG_VIDEOPROCESSBLT {
[in] REFERENCE_TIME TargetFrame;
[in] HANDLE hVideoProcess;
[in] RECT TargetRect;
[in] SIZE ConstrictionSize;
[in] UINT StreamingFlags;
[in] DXVADDI_AYUVSAMPLE16 BackgroundColor;
[in] DXVADDI_EXTENDEDFORMAT DestFormat;
[in] DXVADDI_VIDEOPROCESSBLTFLAGS DestFlags;
[in] DXVADDI_PROCAMPVALUES ProcAmpValues;
[in] DXVADDI_FIXED32 Alpha;
[in] DXVADDI_FILTERVALUES NoiseFilterLuma;
[in] DXVADDI_FILTERVALUES NoiseFilterChroma;
[in] DXVADDI_FILTERVALUES DetailFilterLuma;
[in] DXVADDI_FILTERVALUES DetailFilterChroma;
[in] DXVADDI_VIDEOSAMPLE *pSrcSurfaces;
[in] UINT NumSrcSurfaces;
} D3DDDIARG_VIDEOPROCESSBLT;
メンバーズ
[in] TargetFrame
入力フレームのシーケンス内の出力フレームの位置を識別するREFERENCE_TIME値。 インターレース解除のみが実行される場合、ターゲット時刻は、DXVADDI_VIDEOSAMPLE 構造体の Start メンバーによって定義されたサンプルの開始表示時間、または開始表示時間と終了表示時間の中間点のいずれかと一致する必要があります。
フレーム レート変換が要求された場合、TargetFrame の時間は、サンプルの Start メンバーの時刻と異なる場合があります。
[in] hVideoProcess
DirectX VA ビデオ処理装置へのハンドル。 ユーザー モードのディスプレイ ドライバーは、CreateVideoProcessDevice 関数の呼び出しでこのハンドルを返します。
[in] TargetRect
出力イメージの書き込み先のサーフェス内の場所を記述する RECT 構造体へのポインター。 出力イメージは、TargetRect によって指されている四角形内のピクセル制限されることに注意してください。 つまり、この四角形内のすべてのピクセルに書き込む必要があります。この四角形の外側のピクセルは変更しないでください。
[in] ConstrictionSize
SIZE 構造体。保護されたコンテンツに対して、出力イメージを縮小するサイズを指定します。 ConstrictionSize は、TargetRect メンバーで指定されたターゲット四角形の (1, 1) から (幅、高さ) までである必要があります。 constrictionSize 、constriction を表すには (0, 0) にする必要があります。
たとえば、ネイティブに 1920 x 1080 ピクセルを持ち、出力保護がサポートされていない 1920 x 1080 解像度のモニターに全画面表示のビデオがあるとします。 ビデオ コンテンツで 854 x 480 ピクセルの元の情報のみを表示できるルールが指定されている場合、ドライバーは元の画像を 1920 x 1080 から 854 x 480 に減らし、イメージをもう一度 1920 x 1080 に拡大する必要があります。 この例では、ConstrictionSize メンバーの SIZE 構造体で、854 x 480 ピクセルのサイズを指定します。
[in] StreamingFlags
ストリーミング フラグを識別する UINT 値。 現在、ストリーミング フラグは定義されていません。
[in] BackgroundColor
背景色を識別する DXVADDI_AYUVSAMPLE16 構造体。
[in] DestFormat
変換先サーフェスの拡張書式情報を識別する DXVADDI_EXTENDEDFORMAT 構造体。
[in] DestFlags
前の宛先サーフェスからの現在の宛先サーフェスの変更を識別する DXVADDI_VIDEOPROCESSBLTFLAGS 構造体。
[in] ProcAmpValues
変換先サーフェスに出力される ProcAmp 調整データを指定する DXVADDI_PROCAMPVALUES 構造体。
[in] Alpha
出力イメージが宛先サーフェスに書き込まれるときの平面透明度の値を指定する DXVADDI_FIXED32 構造体。 アルファ値が 1.0 の場合、背景色は不透明 (透明度とアルファ ブレンドなし) で描画されます。 アルファ値が 0.0 の場合、背景は描画されません (透明)。
[in] NoiseFilterLuma
luma ノイズ フィルターを指定する DXVADDI_FILTERVALUES 構造体。
[in] NoiseFilterChroma
クロム ノイズ フィルターを指定する DXVADDI_FILTERVALUES 構造。
[in] DetailFilterLuma
luma 詳細フィルターを指定する DXVADDI_FILTERVALUES 構造体。
[in] DetailFilterChroma
彩度の詳細フィルターを指定する DXVADDI_FILTERVALUES 構造体。
[in] pSrcSurfaces
インターレース解除、フレーム レート変換、サブストリーム合成操作に必要な入力サンプルを記述する DXVADDI_VIDEOSAMPLE 構造体の配列。 この配列に入力サンプルを配置する方法の詳細については、「入力バッファーの順序 を参照してください。
[in] NumSrcSurfaces
pSrcSurfacesにある配列内の入力サンプルの数。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
ヘッダー | d3dumddi.h (D3dumddi.h を含む) |
関連項目
CreateVideoProcessDevice の
RECT の
VideoProcessBlt の