IMediaControl::Pause

Pause メソッドは、フィルタ グラフのフィルタをすべてポーズする。

構文

  HRESULT Pause(void);

戻り値

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

説明
S_FALSE グラフのポーズに成功したが、状態の移行が完了していないフィルタがある。
S_OK グラフのフィルタがすべてポーズ状態への移行を完了した。

注意

フィルタ グラフをポーズすると、次にグラフを実行するとき即座にレンダリングされるようグラフが頭出しされる。グラフがポーズしているとき、データは処理されるが、レンダリングは行われない。データは、バッファに余裕がある限り、グラフに引き渡され、変換フィルタで処理されるが、そのデータをレンダリング フィルタがレンダリングすることはない。ただし、ビデオ レンダラは現在のサンプルの静的なポスター フレームを表示する。

このメソッドが S_FALSE を返す場合は、IMediaControl::GetState メソッドを呼び出して、状態の移行の完了を待機するか、または移行が完了しているかを確認すること。Pause を呼び出してビデオ ファイルの最初のフレームを表示した後は必ず、即座に GetState を呼び出して、状態移行が完了したことを確認すること。状態移行が完了していないと、ビデオ矩形が黒くなる場合がある。

失敗した場合、メソッドは、戻る前にグラフを停止する。

参照