IMediaFilter::Run メソッド (strmif.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
メソッドは Run
フィルターを実行します。
構文
HRESULT Run(
REFERENCE_TIME tStart
);
パラメーター
tStart
ストリーム時間 0 に対応する参照時間。
戻り値
HRESULT 値を返します。 次の表に示す値を指定できます。
リターン コード | 説明 |
---|---|
|
切り替えが完了していません。 |
|
正常終了しました。 切り替えが完了しました。 |
注釈
フィルターを実行すると、サンプルを受信、処理、配信できます。 ソース フィルターによって新しいサンプルが生成され、レンダラー フィルターによってレンダリングされます。
状態遷移は非同期である可能性があります。 遷移が完了する前に メソッドが を返す場合、戻り値はS_FALSE。
Stream時間は、現在の参照時間から tStart を引いた値として計算されます。 メディア サンプルをレンダリングするタイミングを計算するために、レンダラーはタイム スタンプと現在のストリーム時間を比較します。 したがって、タイム スタンプが 0 のメディア サンプルは、time tStart にレンダリングする必要があります。 詳細については、「 DirectShow の時刻とクロック」を参照してください。
アプリケーションが IMediaControl::Run メソッドを呼び出すと、Filter Graph Manager は各フィルターで を呼び出 IMediaFilter::Run
します。 グラフの待機時間を考慮して、今後少し tStart の値を設定します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | strmif.h (Dshow.h を含む) |
Library | Strmiids.lib |