| Предыдущий | Следующий |
| MF_E_NO_SAMPLE_DURATION | MF_E_RT_UNAVAILABLE |
MF_E_INVALID_STREAM_DATA
Что означает MF_E_INVALID_STREAM_DATA
MF_E_INVALID_STREAM_DATA (0xC00D36CB) — Запрос завершился ошибкой: данные потока повреждены.
Этот HRESULT относится к содержимому потока в точке разбора или декодирования: данные не соответствуют структуре, которую ожидает уже выбранный анализатор формата или декодер. Это может быть повреждённый или обрезанный сегмент, неверная граница пакета либо данные другого формата, поданные в текущую ветку.
Что проверить и как подтвердить исправление
Сохраните исходные байты и абсолютное/логическое смещение первого отказа. Повторяемый сбой на одном и том же месте обычно указывает на входные данные; плавающая позиция заставляет дополнительно проверять передачу данных, время жизни буфера и компонент, который эти данные формирует.
Сопоставьте тип мультимедиа и реальный формат сохранённых байтов. Если ошибка появилась после перехода по времени, склейки, смены сегмента или сброса очередей, отдельно проверьте границу, с которой возобновилась подача данных: анализатор может ожидать начало кадра/пакета или обязательный заголовок.
Исправление должно проходить на том же входе после устранения конкретного повреждения или неправильной границы. Не заменяйте содержимое нулевыми байтами и не перескакивайте через ошибочный участок, пока не доказано, что контракт формата это допускает.
Документация для результата 0xC00D36CB: basic MFT processing model · IMFSourceResolver::CreateObjectFromByteStream.
Нужно найти другой код? Найти другой код состояния или ошибки.
