Что означает код HRESULT 0xC00D36F0 (MF_E_CANNOT_PARSE_BYTESTREAM)?

 
Предыдущий Следующий
MF_E_DISABLED_IN_SAFEMODE MF_E_SOURCERESOLVER_MUTUALLY_EXCLUSIVE_FLAGS

MF_E_CANNOT_PARSE_BYTESTREAM

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

MF_E_CANNOT_PARSE_BYTESTREAM (0xC00D36F0) — Медиаисточнику не удалось разобрать байтовый поток.

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

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

Сохраните первые байты потока, фактически доступный объём, расширение URL и значение MF_BYTESTREAM_CONTENT_TYPE. Частые причины — обрезанная загрузка, HTML-страница ошибки вместо медиафайла, шифрованное содержимое либо контейнер, который выбранный обработчик не понимает.

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

Документация для результата 0xC00D36F0: CreateObjectFromByteStream · scheme and byte-stream handlers · Source Resolver.


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