| Предыдущий | Следующий |
| MF_E_OPERATION_CANCELLED | MF_E_DISABLED_IN_SAFEMODE |
MF_E_BYTESTREAM_NOT_SEEKABLE
Что означает MF_E_BYTESTREAM_NOT_SEEKABLE
MF_E_BYTESTREAM_NOT_SEEKABLE (0xC00D36EE) — Ожидалось, что байтовый поток поддерживает поиск, но это не так.
IMFByteStream — общий интерфейс Media Foundation для чтения байтов из файла, сети или другого источника. Здесь компоненту нужен произвольный доступ к потоку, но IMFByteStream::GetCapabilities не сообщает возможность позиционирования.
Что проверить и как подтвердить исправление
Сначала выясните, какая операция потребовала перехода по потоку: разбор заголовка, определение длительности или позиционирование по индексу могут обращаться к разным участкам данных, даже если последовательное чтение работает. Сохраните флаги GetCapabilities и первый вызов, который запросил изменение позиции.
Для собственного IMFByteStream проверяйте согласованность Seek, SetCurrentPosition и текущей позиции. Не объявляйте искусственно поддержку позиционирования для сетевого или потокового источника, который физически умеет читать только вперёд: такой путь нужно буферизовать либо заменить источником с реальным произвольным доступом.
Документация для результата 0xC00D36EE: IMFByteStream::GetCapabilities · IMFByteStream · byte-stream handlers.
Нужно найти другой код? Найти другой код состояния или ошибки.