What does HRESULT 0xC00D36DA (MF_E_MULTIPLE_SUBSCRIBERS) mean?

 
Previous Next
MF_E_MULTIPLE_BEGIN MF_E_TIMER_ORPHANED

MF_E_MULTIPLE_SUBSCRIBERS

MF_E_MULTIPLE_SUBSCRIBERS means event consumption has been split between incompatible subscribers. For BeginGetEvent, it is returned when a different callback pointer already has a pending request. The synchronous GetEvent path can also return it while an asynchronous request is outstanding.

Use a single owner for each event generator

  • Centralize BeginGetEvent/EndGetEvent in one event pump and dispatch events internally to interested components.
  • Do not mix blocking GetEvent with an active asynchronous subscription on the same object.
  • During teardown, stop re-arming the callback before handing the generator to another owner.

This is not an indication that the event queue is full. It is a subscriber-ownership conflict, so draining samples or changing codecs will not address the underlying problem.

Microsoft: BeginGetEvent return codes · Microsoft: IMFMediaEventGenerator::GetEvent · Wine mfplat source


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