ホーム › Media.DirectShow › IVPConfig
IVPConfig
COM公式ドキュメント
IVPConfig インターフェイスは、ビデオポートを持つハードウェアデコーダーをラップするすべてのフィルターで実装する必要があります。
解説(Remarks)
Vpconfig.h の前に Dvp.h と Vptype.h をインクルードしてください。
メソッド 2
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
IsVPDecimationAllowed メソッドは、コンテキストに基づいて、ビデオポートでのスケーリングが可能かどうかを取得します。
| pbIsDecimationAllowed | BOOL* | inout | デシメーションが可能かどうかを示す Boolean 値を受け取ります。 |
戻り値
HRESULT 値を返します。
解説(Remarks)
Overlay Mixer フィルターは、この関数を使用して、ドライバーがミキサーに独自の判断でビデオデータをデシメートさせる必要があるかどうかを判断します。この関数は、VP ミキサーフィルターにビデオポートでのスケーリングを一切行わせたくないプレビュー付きキャプチャの状況で特に役立ちます。
Vpconfig.h の前に Dvp.h と Vptype.h をインクルードしてください。
SetScalingFactors メソッドは、デコーダーがビデオストリームをスケーリングする際の係数を設定します。
| pamvpSize | AMVPSIZE* | inout | 幅と高さを指定するために使用する、新しいスケーリングサイズ構造体(AMVPSIZE)へのポインター。 |
戻り値
HRESULT 値を返します。
解説(Remarks)
デコーダーが指定されたスケーリング係数をサポートしていない場合、サポート可能な最も近い係数に値を設定します。
Vpconfig.h の前に Dvp.h と Vptype.h をインクルードしてください。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IVPConfig "{BC29A660-30E3-11D0-9E69-00C04FD7C15B}" #usecom global IVPConfig IID_IVPConfig "{}" #comfunc global IVPConfig_IsVPDecimationAllowed 16 var #comfunc global IVPConfig_SetScalingFactors 17 var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_IVPConfig "{BC29A660-30E3-11D0-9E69-00C04FD7C15B}" #usecom global IVPConfig IID_IVPConfig "{}" #comfunc global IVPConfig_IsVPDecimationAllowed 16 sptr #comfunc global IVPConfig_SetScalingFactors 17 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。