What does HRESULT 0x80040213 (VFW_E_NO_CLOCK) mean?

 
Previous Next
VFW_E_SIZENOTSET VFW_E_NO_SINK

VFW_E_NO_CLOCK

Meaning

Windows documents VFW_E_NO_CLOCK as “Cannot lock for synchronization because no clock has been defined”. In practical terms, it is returned when a DirectShow synchronization or advise operation requires a reference clock but the graph or filter has none.

Likely causes

  • Possible cause 1: the graph deliberately selected no clock and a component still requests timed synchronization.
  • Possible cause 2: clock selection failed during graph setup.
  • Possible cause 3: a filter cached a clock that was removed or released.

Evidence to collect

  • Capture 1: IMediaFilter::GetSyncSource result for the affected filter.
  • Capture 2: graph clock-selection events and clock CLSID.
  • Capture 3: advise time, stream time and graph state.

Correct handling and retry

  • Corrective action 1: assign a valid reference clock before timed operations.
  • Corrective action 2: support clockless execution only in components designed for clockless execution.
  • Corrective action 3: refresh clock references after graph reconstruction.

Retry guidance. Retry after setting the synchronization source; waiting longer cannot create a missing clock.

Difference from nearby HRESULTs

VFW_E_TIME_ALREADY_PASSED has a clock but rejects a past schedule, whereas it means timed scheduling has no clock source at all.

Practical scenario

A fast-as-possible transcoding graph disables its clock, but a custom renderer still schedules an advise; making that renderer clockless prevents it.

Official Microsoft references


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