Что означает код HRESULT 0xC00D5213 (MF_E_TOPO_CANNOT_CONNECT)?

 
Предыдущий Следующий
MF_E_TOPO_CODEC_NOT_FOUND MF_E_TOPO_UNSUPPORTED

MF_E_TOPO_CANNOT_CONNECT

MF_E_TOPO_CANNOT_CONNECT (0xC00D5213) означает, что загрузчик Media Foundation не смог построить допустимое соединение между двумя или несколькими узлами топологии.

Топология Media Foundation — это граф обработки мультимедиа: поток идёт от источника через декодеры и другие преобразования к приёмнику. При разрешении частичной топологии загрузчик согласует типы мультимедиа соседних узлов и при необходимости вставляет подходящие преобразования MFT. Этот HRESULT означает, что узлы существуют, но совместимой цепочки типов и преобразований найти не удалось.

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

  • Сохраните входной и выходной тип мультимедиа на обеих сторонах проблемного соединения: major type, subtype и критичные для формата атрибуты вроде размера кадра, частоты или числа каналов.
  • После неудачного разрешения прочитайте MF_TOPONODE_ERRORCODE, MF_TOPONODE_ERROR_MAJORTYPE и MF_TOPONODE_ERROR_SUBTYPE у проблемного узла, если эти атрибуты установлены.
  • Проверьте MF_TOPONODE_CONNECT_METHOD и атрибуты топологии, которые могут запрещать перебор типов источника, вставку декодера, преобразователя или аппаратного MFT.
  • Если цепочка задана вручную слишком подробно, воспроизведите проблему на минимальной частичной топологии «источник → приёмник». Если она разрешается, причина находится в явно добавленном узле или зафиксированном типе мультимедиа, а не в отсутствии файла или устройства.

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


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