Что означает код HRESULT 0xC00D3E86 (MF_E_MP3_NOTFOUND)?

 
Предыдущий Следующий
MF_E_SHUTDOWN MF_E_MP3_OUTOFDATA

MF_E_MP3_NOTFOUND

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

MF_E_MP3_NOTFOUND (0xC00D3E86) — Объект MP3 не найден.

Здесь Media Foundation уже работает как источник MP3 и пытается найти структуру MPEG-аудио в предоставленных байтах. Сам источник MP3 разбирает MP3 и выдаёт закодированные MPEG-аудиокадры дальше по конвейеру; он не выполняет их декодирование.

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

Проверьте фактические первые байты источника, а не только имя файла и MIME-тип. По URL с расширением .mp3 можно получить HTML-страницу ошибки или авторизации, список воспроизведения, другой контейнер либо обрезанный ответ.

Учтите допустимые данные перед первым аудиокадром, например метаданные ID3. Диагностика должна найти первую устойчивую последовательность MPEG-аудиокадров, а не считать один случайно совпавший маркер синхронизации кадра доказательством корректного MP3.

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

Документация для результата 0xC00D3E86: MP3 File Source · FFmpeg: MP3 demuxer source · mpg123: frame parser source.


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