What does HRESULT 0x8004022D (VFW_E_DUPLICATE_NAME) mean?

 
Previous Next
VFW_E_SAMPLE_REJECTED_EOS VFW_E_TIMEOUT

VFW_E_DUPLICATE_NAME

Meaning

Windows documents VFW_E_DUPLICATE_NAME as “An attempt to add a filter with a duplicate name failed”. In practical terms, it is returned when a DirectShow graph cannot add a filter under a name already used by another filter when the operation requires an exact unique name.

Evidence to collect

  • Capture 1: requested name and existing filter CLSID using it.
  • Capture 2: graph contents before AddFilter.
  • Capture 3: topology generation and modification thread.

Where the failure belongs

This result belongs to DirectShow filter-graph processing. The relevant condition is that a DirectShow graph cannot add a filter under a name already used by another filter when the operation requires an exact unique name.

Likely causes

  • Possible cause 1: application code reuses a fixed name for multiple filters.
  • Possible cause 2: a prior failed rebuild left the old filter in the graph.
  • Possible cause 3: concurrent graph modification adds the same logical component twice.

Diagnostic sequence

  1. Confirm that the observed path matches this condition: a DirectShow graph cannot add a filter under a name already used by another filter when the operation requires an exact unique name.

Correct handling and retry

  • Corrective action 1: generate or choose unique graph names.
  • Corrective action 2: remove old filters before rebuilding a branch.
  • Corrective action 3: serialize graph modifications.

Retry guidance. Retry with a unique name or after removing the previous filter; unchanged retry repeats the collision.

Difference from nearby HRESULTs

VFW_S_DUPLICATE_NAME is successful addition under a modified name, while it indicates the requested add operation failed.

Practical scenario

A preview graph rebuild adds a second renderer named Video Renderer without removing the first; generation-based names prevent it.

Official Microsoft references


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