Что означает код HRESULT 0xC00D36E5 (MF_E_INVALID_POSITION)?

 
Предыдущий Следующий
MF_E_UNSUPPORTED_CAPTION MF_E_ATTRIBUTENOTFOUND

MF_E_INVALID_POSITION

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

MF_E_INVALID_POSITION (0xC00D36E5) — Операция с текущим смещением запрещена.

Формат времени или сама операция позиционирования могут быть поддержаны, но конкретная позиция недопустима: например, находится вне доступного диапазона, противоречит текущему состоянию байтового потока либо не может быть представлена выбранным источником.

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

Запишите текущую и запрошенную позиции, единицы измерения, известную длительность/длину потока, флаги позиционирования и характеристики источника. Для видео полезно также знать ближайшие ключевые кадры, потому что фактическая точка перехода может отличаться от запрошенной.

Сравните тот же вызов с позицией ноль и с заведомо допустимой точкой внутри диапазона. Если они работают, исправляйте расчёт или проверку границ исходной позиции, а не меняйте кодек или переустанавливайте Media Foundation.

Документация для результата 0xC00D36E5: Media Foundation architecture · Media Foundation error codes · Media sources.


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