Что означает код HRESULT 0xC00D36F6 (MF_E_NO_BITPUMP)?

 
Предыдущий Следующий
MF_E_RT_WOULDBLOCK MF_E_RT_OUTOFMEMORY

MF_E_NO_BITPUMP

Что означает MF_E_NO_BITPUMP

MF_E_NO_BITPUMP (0xC00D36F6) — Media Foundation не смогла получить внутренний компонент, который нужен выбранному пути для передачи данных между его частями.

Bitpump — внутреннее понятие Media Foundation, а не кодек или объект, который приложение обычно создаёт напрямую. Поэтому этот HRESULT указывает прежде всего на сборку самого медиатракта. Если непосредственно перед ним была ошибка активации источника, преобразования или приёмника, именно она обычно полезнее для поиска причины.

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

Сохраните исходную топологию, тип источника и приёмника, список добавленных сторонних MFT и первый HRESULT до MF_E_NO_BITPUMP. Затем соберите минимальный вариант того же тракта только на системных компонентах. Если он работает, возвращайте пользовательские компоненты по одному — это позволяет локализовать несовместимую активацию или регистрацию.

Не начинайте с переустановки произвольного декодера: ошибка может возникнуть при создании источника, промежуточного компонента или выхода. Исправление подтверждается тем, что та же топология проходит сборку и начинает передавать сэмплы без внутреннего отказа.

Документация для результата 0xC00D36F6: Media Session · Creating Playback Topologies · Media Foundation Functions.


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