次の方法で共有


IVMRDeinterlaceControl9::SetDeinterlaceMode

SetDeinterlaceMode メソッドは、指定されたビデオ ストリームの非インターレース モードを設定する。

構文

  HRESULT SetDeinterlaceMode(
  DWORD  dwStreamID,
  GUID  *lpDeinterlaceMode,
);

パラメータ

dwStreamID

[in] 設定するビデオ ストリームのインデックス。すべてのストリームを設定するには、値 0xFFFFFFFF を使う。

lpDeinterlaceMode

[in] 非インターレース モードを指定する GUID へのポインタ。非インターレース処理をオフにするには、値 GUID_NULL を使う。

戻り値

HRESULT 値を返す。可能な値は次のとおりである。

戻りコード 説明
E_INVALIDARG 無効なストリーム番号。
E_POINTER NULL ポインタ引数。
S_OK 成功。
VFW_E_VMR_NOT_IN_MIXER_MODE VMR はミキサー モードではない。

注意

アプリケーションがモードを指定しない場合、VMR ではデフォルトで、ドライバが報告した最初のモードに設定される。いずれの場合でも、VMR が優先モードを使えない場合は、IVMRDeinterlaceControl9::SetDeinterlacePrefs メソッドで指定された別のモードにフォール バックする。

SetDeinterlaceMode メソッドは、VMR に対する新しい接続についてのみ有効である。一部の非インターレース モードには、追加の参照サンプルが利用できるようにする必要がある。正確な数はモードによって異なる。VMR は、これらの追加サンプルに対応するサーフェイスを割り当てる。クライアントは、サーフェイスが割り当てられる前に非インターレース モードを設定する必要がある。サーフェイス割り当ては、次のいずれかの後で行われる。

  • 動的再接続を含む、ピン接続。
  • 動的なフォーマット変更 (アップストリーム フィルタが IPin::ReceiveConnection を呼び出して新しいフォーマットを指定する)。
  • 解像度の変更。
  • モニタの変更。

要件

D3d9.h、Vmr9.h をインクルードすること。

参照