CBaseRenderer.CompleteStateChange method

[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 CompleteStateChange method determines whether a transition to the paused state is complete.

Syntax

virtual HRESULT CompleteStateChange(
   FILTER_STATE OldState
);

Parameters

OldState

State prior to the transition.

Return value

Returns S_OK if the transition is complete. Otherwise, returns S_FALSE.

Remarks

The CBaseRenderer::Pause method calls this method to update the state-transition status. In general, the transition to paused does not finish until the filter receives a sample. However, in some situations the transition completes immediately: for example, if the filter is unconnected, or if the end of the stream was reached. This method checks the various criteria and then calls the CBaseRenderer::Ready method or the CBaseRenderer::NotReady method to update the transition status.

Requirements

Requirement Value
Header
Renbase.h (include Streams.h)
Library
Strmbase.lib (retail builds);
Strmbasd.lib (debug builds)

See also

CBaseRenderer Class