Site icon EfmSoft

Что означает код HRESULT 0xC00D3AA1 (MF_E_ASF_DROPPED_PACKET)?

 
Предыдущий Следующий
MF_E_ASF_UNSUPPORTED_STREAM_TYPE MF_E_NO_EVENTS_AVAILABLE

MF_E_ASF_DROPPED_PACKET

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

MF_E_ASF_DROPPED_PACKET (0xC00D3AA1) означает, что при обработке ASF был обнаружен потерянный пакет.

ASF хранит медиаданные в последовательности контейнерных пакетов. Потеря одного такого пакета нарушает непрерывность ещё до декодирования аудио или видео, поэтому артефакты декодера обычно являются уже следствием исходного разрыва.

Что проверить

  • Для сетевого источника запишите границы получаемых пакетов, последовательность чтений и абсолютные смещения до передачи данных методу IMFASFSplitter::ParseData.
  • Для файла сравните проблемный диапазон байтов с исходной копией и проверьте, не было ли файл обрезан или прочитан с пропуском.
  • После разрыва проверьте атрибут MFSampleExtension_Discontinuity у первого сформированного сэмпла: разборщик может пометить им возобновление потока после пропуска.
  • Если ошибка появилась после перехода к другой позиции или смены источника, убедитесь, что старое состояние разборщика было сброшено через Flush до подачи данных из нового места.

Исправление должно устранить потерю или неправильную сборку ASF-пакетов. Замена кодека сама по себе не восстанавливает отсутствующие контейнерные данные.

Технические ссылки


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

Exit mobile version