What does HRESULT 0xC00D4A38 (MF_E_STREAMSINK_REMOVED) mean?

 
Previous Next
MF_E_INVALID_ASF_STREAMID MF_E_STREAMSINKS_OUT_OF_SYNC

MF_E_STREAMSINK_REMOVED

MF_E_STREAMSINK_REMOVED is a lifetime error for an IMFStreamSink. The COM interface pointer may still exist, but the owning media sink has removed that stream, so operations on the detached stream sink are no longer valid.

Find who kept the stale stream-sink reference

  • Log calls to RemoveStreamSink together with the stream identifier and every object that caches the corresponding IMFStreamSink.
  • Stop delivering samples, markers, or flush requests to that interface as soon as the stream is removed.
  • For a replacement stream, obtain the new stream sink from the media sink rather than reusing the old pointer.

The documented ProcessSample, Flush, and stream-sink query methods can all return this HRESULT after removal. This is different from MF_E_SHUTDOWN: the whole media sink need not be shut down; only this stream sink has become invalid.

Microsoft: IMFStreamSink::ProcessSample · Microsoft: IMFStreamSink::Flush · Microsoft: IMFMediaSink::RemoveStreamSink


Looking for a different code? Search another status or error code.