イベント通知の概要

フィルタは、イベント通知を送信することによって、フィルタ グラフ マネージャにイベントを通知する。イベントは、ストリームの終わりのように予測できる場合もあれば、ストリームのレンダリング失敗のようなエラーの場合もある。フィルタ グラフ マネージャ自身が処理するフィルタ イベントもあれば、アプリケーションが処理するフィルタ イベントもある。フィルタ グラフ マネージャは、フィルタ イベントを処理しない場合、イベント通知をキューに入れる。フィルタ グラフはアプリケーションに対する独自のイベント通知をキューに入れることもできる。

アプリケーションはキューからイベントを取得し、イベントのタイプに基づいて応答する。そのため、DirectShow でのイベント通知は Microsoft® Windows® のメッセージ キューイングのしくみに似ている。アプリケーションは、特定のイベント タイプに対するフィルタ グラフ マネージャのデフォルト動作を取り消すこともできる。この場合、フィルタ グラフ マネージャはイベントを直接キューに入れ、アプリケーションにイベントを処理させることができる。

このメカニズムによって次のことが可能になる。

  • フィルタ グラフ マネージャがアプリケーションと通信する。
  • フィルタがアプリケーションおよびフィルタ グラフ マネージャの両方と通信する。
  • アプリケーションがイベント処理にかかわる度合いを決定する。