| Предыдущий | Следующий |
| MF_E_ASF_PARSINGINCOMPLETE | MF_E_ASF_INVALIDDATA |
MF_E_ASF_MISSINGDATA
Что означает MF_E_ASF_MISSINGDATA
MF_E_ASF_MISSINGDATA (0xC00D3A99) означает, что в последовательности ASF-данных обнаружен пропуск.
Это ошибка непрерывности контейнера. Она указывает не на формат отдельного аудио- или видеокадра, а на то, что разборщик ожидал следующий участок ASF и не получил его в правильной последовательности.
Что проверить
- Записывайте абсолютное смещение, размер и границы данных перед каждым
IMFASFSplitter::ParseData. - Если пакеты имеют переменную длину, правильно отмечайте их границы через
MFASFSPLITTER_PACKET_BOUNDARYи не склеивайте несовместимые участки в один входной буфер. - Для сетевого источника проверьте потерю/повтор блоков между транспортом и разборщиком; для файла — обрезанное чтение или пропущенный диапазон.
- После перехода к другой позиции или переключения источника вызовите
IMFASFSplitter::Flushдо подачи данных из нового положения, иначе старое ожидание продолжения может конфликтовать с новой последовательностью.
После разрыва разборщик может отметить первый новый сэмпл атрибутом MFSampleExtension_Discontinuity. Это помогает подтвердить, что проблема возникла на уровне входных ASF-данных до декодера.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
