IMediaEvent オブジェクト

IMediaEvent オブジェクトは、イベント通知を取得するメソッドと、フィルタ グラフ マネージャのデフォルトのイベント処理をオーバーライドするメソッドを提供する。アプリケーションでは、このオブジェクトを使って、ストリームの終了、レンダリング エラーなど、フィルタ グラフ内で発生するイベントに応答できる。

このオブジェクトを使うには、IMediaEvent 型の変数を宣言し、その変数が FilgraphManager オブジェクトと等しくなるように設定する。

Dim mGraph As New FilgraphManager
Dim iEvent As IMediaEvent
Set iEvent = mGraph

イベント通知の詳細については、「DirectShow でのイベント通知」を参照すること。システム定義のイベント通知の一覧については、「イベント通知コード」を参照すること。

要件

プロジェクトに "ActiveMovie コントロール タイプ ライブラリ" (Quartz.dll) への参照を含めること。

IMediaEvent オブジェクトは次のメソッドを公開する。

メソッド 説明
CancelDefaultHandling 指定したイベントに対するフィルタ グラフ マネージャのデフォルト処理をキャンセルする。
FreeEventParams イベントのパラメータに関連付けられたリソースを解放する。
GetEvent 次の通知イベントをイベント キューから取得する。
GetEventHandle キューにイベント通知が入っている間に通知済み状態の自動リセット イベントのハンドルを取得する。
RestoreDefaultHandling 指定したイベントに対するフィルタ グラフ マネージャのデフォルト処理を復元する。
WaitForCompletion フィルタ グラフがすべての有効なデータをレンダリングするまで待機する。