IMFSourceReader::Flush メソッド (mfreadwrite.h)
1 つ以上のストリームをフラッシュします。
構文
HRESULT Flush(
[in] DWORD dwStreamIndex
);
パラメーター
[in] dwStreamIndex
フラッシュするストリーム。 値には、次のいずれかを指定できます。
戻り値
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
注釈
Flush メソッドは、キューに登録されているすべてのサンプルを破棄し、保留中のすべてのサンプル要求を取り消します。
このメソッドは、同期的または非同期的に完了できます。
ソース リーダーを作成するときにコールバック ポインターを指定すると、メソッドは非同期になります。 それ以外の場合、メソッドは同期です。 コールバック ポインターの設定の詳細については、「 MF_SOURCE_READER_ASYNC_CALLBACK」を参照してください。
同期モードでは、メソッドは操作が完了するまでブロックします。
非同期モードでは、フラッシュ操作が完了すると、アプリケーションの IMFSourceReaderCallback::OnFlush メソッドが呼び出されます。 フラッシュ操作が保留中の間、 IMFSourceReader::ReadSample メソッドは MF_E_NOTACCEPTINGを返します。
メモ Windows 7 では、このメソッドの実装にバグがあり、フラッシュ操作が完了する前に OnFlush が呼び出されます。 以前は、そのバグを修正した修正プログラムを使用できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista 用 Windows 7、Windows Vista およびプラットフォーム更新プログラムの補足 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | mfreadwrite.h |