Что означает код HRESULT 0x8004029A (VFW_E_DVD_VMR9_INCOMPATIBLEDEC)?

 
Предыдущий Следующий
VFW_E_VMR_NO_PROCAMP_HW VFW_E_NO_COPP_HW

VFW_E_DVD_VMR9_INCOMPATIBLEDEC

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

VFW_E_DVD_VMR9_INCOMPATIBLEDEC (0X8004029A) относится к DirectShow DVD Navigator. Конкретный признак: DVD decoder несовместим с VMR9. Смысл кода следует проверять на том объекте и generation, где он был возвращён впервые.

Это failure HRESULT; успешность следующего шага подтверждайте отдельным результатом, а не отсутствием исключения в верхнем слое. В первую очередь проверяйте DVD domain/navigation state, authored restrictions, decoder/renderer topology и текущую команду IDvdControl2. Не переносите вывод с соседнего HRESULT только потому, что у него тот же facility или общий компонент.

Специфичные признаки исходного описания

  • AllStat describes it as “VMR9 does not work with VPE-based hardware decoders”.
  • DVD state is authored and stateful: domains, user-operation controls, titles, menus, streams, command objects and graph construction each impose different preconditions.
  • Retry and recovery Retry rule for this result: Retry after changing decoder or renderer; reconnection cannot make VPE output compatible with VMR-9.
  • How it differs from nearby results VFW_E_VP_NEGOTIATION_FAILED concerns a failed video-port negotiation, while it identifies an inherently unsupported VPE-decoder and VMR-9 pairing.

Что сохранить до исправления

  • текущий DVD_DOMAIN и последовательность domain-change событий
  • title/chapter/menu/stream identity и user-operation flags
  • decoder/renderer inventory, graph generation и первый HRESULT

Как проверить границу

Если состояние исчезает после повторной enumeration, отдельно проверьте race между получением объекта и вызовом метода. Для состояния «DVD decoder несовместим с VMR9» сначала воспроизведите минимальную операцию без параллельных изменений конфигурации, затем сравните before/after evidence.

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

Исправляйте только подтверждённый prerequisite на уровне DirectShow DVD Navigator: входной параметр, capability, object state, provider/graph topology или внешний ресурс. После изменения заново получите актуальные объекты, если их состояние могло устареть, и повторите исходный минимальный вызов.

Проверка пары decoder и VMR-9

Здесь decoder присутствует, но его аппаратный VPE output несовместим именно с VMR-9. Зафиксируйте CLSID MPEG-2 decoder, выбранный renderer, способ аппаратного вывода и фактические соединения graph. Это принципиально отличается от VFW_E_DVD_DECNOTENOUGH, где decoder-компонента не хватает вообще, и от VFW_E_DVD_GRAPHNOTREADY, где обращение сделано слишком рано. Исправление — совместимая пара decoder/renderer или другой поддерживаемый output path.

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


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