IVMRImagePresenter::P resentImage メソッド (strmif.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]
メソッドは PresentImage
、このビデオ フレームが表示される瞬間に正確に呼び出されます。
構文
HRESULT PresentImage(
[in] DWORD_PTR dwUserID,
[in] VMRPRESENTATIONINFO *lpPresInfo
);
パラメーター
[in] dwUserID
Allocator-Presenter の 1 つのインスタンスで VMR の複数のインスタンスが使用されているシナリオで、VMR のこのインスタンスを一意に識別するアプリケーション定義のDWORD_PTR。 「解説」を参照してください
[in] lpPresInfo
VMRPRESENTATIONINFO 構造体を指定します。
戻り値
メソッドが成功した場合は、S_OK を返します。 失敗した場合はエラー コードを返します。
解説
PresentImage
は、フィルターが実行中または一時停止状態のときに呼び出すことができます。 StartPresenting と StopPresenting は、実行中の状態でのみ呼び出すことができます。 そのため、グラフが実行される前に一時停止されている場合は、 PresentImage
StartPresenting の前に が呼び出されます。
アプリケーションでは、1 つのフィルター グラフまたは複数のフィルター グラフで VMR の複数のインスタンスを持つ Allocator-Presenter の 1 つのインスタンスを使用して、カスタム ブレンド効果を作成できます。 この方法でアロケーター 発表者を使用すると、アプリケーションは異なるフィルター グラフからのストリームをブレンドしたり、同じフィルター グラフ内のさまざまなストリームをブレンドしたりできます。 VMR の 1 つのインスタンスを使用している場合は、この値を 0 に設定します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | WINDOWS XP と SP1 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | strmif.h (Dshow.h を含む) |
Library | Strmiids.lib |