CBaseRenderer.GetState メソッド
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]
メソッドは GetState
、フィルターの状態 (実行中、停止、または一時停止) を取得します。
構文
HRESULT GetState(
DWORD dwMilliSecsTimeout,
FILTER_STATE *State
);
パラメーター
-
dwMilliSecsTimeout
-
タイムアウト間隔 (ミリ秒単位)。
-
State
-
フィルターの状態を示す、 FILTER_STATE 列挙型のメンバーを受け取る変数へのポインター。
戻り値
次の表に示す HRESULT 値のいずれかを返します。
リターン コード | 説明 |
---|---|
|
成功しました。 |
|
フィルターは、指定された状態に遷移しています。 |
|
NULL ポインター引数。 |
解説
このメソッドは 、CBaseFilter::GetState メソッドをオーバーライドします。 レンダラーが一時停止すると、レンダリングするサンプルを受け取るまで、状態遷移は完了しません。 状態遷移が完了する前にタイムアウトが切れた場合、メソッドは VFW_S_STATE_INTERMEDIATEを返します。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|