IPin::BeginFlush method (strmif.h)
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
The BeginFlush
method begins a flush operation.
Applications should not call this method. This method is called by other filters, to flush data from the graph.
Syntax
HRESULT BeginFlush();
Return value
Returns an HRESULT value. Possible values include the following.
Return code | Description |
---|---|
|
Success. |
|
The pin is an output pin. |
Remarks
Call this method only on input pins. Output pins return E_UNEXPECTED.
In a flush operation, a filter discards whatever data it was processing. It rejects new data until the flush is completed. The flush is completed when the upstream pin calls the IPin::EndFlush method. Flushing enables the filter graph to be more responsive when events alter the normal data flow. For example, flushing occurs during a seek.
When BeginFlush
is called, the filter performs the following steps:
- Passes the
IPin::BeginFlush
call downstream. - Sets an internal flag that causes all data-streaming methods to fail, such as IMemInputPin::Receive.
- Returns from any blocked calls to the Receive method.
BeginFlush
notification reaches a renderer filter, the renderer frees any samples that it holds.
After BeginFlush
is called, the pin rejects all samples from upstream, with a return value of S_FALSE, until the IPin::EndFlush method is called.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Target Platform | Windows |
Header | strmif.h (include Dshow.h) |
Library | Strmiids.lib |