Share via


CBaseRenderer::SendEndOfStream

 
Microsoft DirectShow 9.0

CBaseRenderer::SendEndOfStream

If end-of-stream was reached, the SendEndOfStream method schedules an EC_COMPLETE event for the filter graph manager.

Syntax

  virtual HRESULT SendEndOfStream(void);

Return Value

Returns an HRESULT value. Possible values include those in the following table.

Value Description
S_FALSE The filter graph manager is not accepting event notifications.
S_OK Success.

Remarks

The filter might receive an end-of-stream notification before the current sample's stop time. If so, the filter should wait before posting an EC_COMPLETE notification to the filter graph manager.

Therefore:

  • If the filter has received an early end-of-stream (EOS) notification, this method schedules a timer event. When the timer event is activated, the filter posts the EC_COMPLETE event.
  • If the filter has received an EOS notification that was not early, this method posts the EC_COMPLETE event immediately.
  • If the filter does not have any pending EOS notification, the method returns without doing anything.

The timer callback method is CBaseRenderer::TimerCallback. To deliver the EC_COMPLETE event, the filter calls the CBaseRenderer::NotifyEndOfStream method.

Requirements

**  Header:** Declared in Renbase.h; include Streams.h.

**  Library:** Use Strmbase.lib (retail builds) or Strmbasd.lib (debug builds).

See Also