Что означает код HRESULT 0x8004021F (VFW_E_NO_COLOR_KEY_FOUND)?

 
Предыдущий Следующий
VFW_E_COLOR_KEY_SET VFW_E_NO_PALETTE_AVAILABLE

VFW_E_NO_COLOR_KEY_FOUND

Практический смысл

VFW_E_NO_COLOR_KEY_FOUND (0X8004021F) — результат DirectShow. Исходное описание: AllStat records its meaning as “No matching color key is available”.. Не объединяйте этот код с соседними VFW_E_*: диагностическая граница задаётся конкретным состоянием ниже.

Конкретные признаки контракта

  • Evidence to collect Capture 2 for this result: display pixel format and overlay surface format.
  • Evidence to collect Capture 3 for this result: renderer negotiation trace and graphics-driver version.
  • Evidence to collect Capture 1 for this result: requested key type, candidate range and driver capabilities.
  • Correction and retry boundary Corrective action 1 for this result: allow the renderer to select from a valid range.
  • Likely causes Possible cause 1 for this result: all candidate key values collide with existing desktop colors.
  • Likely causes Possible cause 3 for this result: display-format changes invalidate earlier key-search assumptions.
  • Practical scenario A palette-constrained desktop leaves no usable destination key for a legacy overlay; switching render mode avoids it. The result scenario narrows the result to a reproducible contract boundary and supplies a concrete before-and-after test.

Что проверить в trace

Сохраните exact method, filter CLSID/friendly name, connected pins, media type, graph state и generation, clock/rate либо sample timestamps, если они участвуют в этой операции. Для persisted data дополнительно фиксируйте offending field или byte range, а для renderer/device path — выбранный hardware capability.

Как отделить этот случай от соседних

Сопоставьте каждый приведённый выше признак с фактическим вызовом. Если условие из исходного контракта не выполняется, не переносите recovery от другого VFW-кода. Если после rebuild или re-enumeration результат исчезает, отдельно проверьте stale object, race и изменение topology.

Исправление и подтверждение

Меняйте только подтверждённую причину: входной параметр, media type, timing, filter connection, renderer/device capability, persisted field или текущее состояние graph. После изменения повторите тот же минимальный сценарий и сравните topology и первый HRESULT до и после исправления.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.