What does HRESULT 0xC00D36D9 (MF_E_MULTIPLE_BEGIN) mean?

 
Previous Next
MF_E_NO_CLOCK MF_E_MULTIPLE_SUBSCRIBERS

MF_E_MULTIPLE_BEGIN

MF_E_MULTIPLE_BEGIN identifies a specific asynchronous-event sequencing error. A BeginGetEvent request is still pending for the same callback pointer, but the new call supplies a different punkState object.

Do not replace callback state while a request is pending

  • Complete the pending request with EndGetEvent before issuing another BeginGetEvent.
  • Keep event subscription ownership in one place instead of re-registering during Start, Stop, or topology changes.
  • If the state object carries generation data, update application state separately rather than swapping the state pointer under an outstanding request.

The same callback and same state produce MF_S_MULTIPLE_BEGIN; a different callback produces MF_E_MULTIPLE_SUBSCRIBERS. Comparing callback and state pointer values is therefore useful when diagnosing this HRESULT.

Microsoft: IMFMediaEventGenerator::BeginGetEvent · Microsoft: handling Media Session events · Wine mfplat source


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