Что означает код HRESULT 0xC00D3A9C (MF_E_ASF_NOINDEX)?

 
Предыдущий Следующий
MF_E_ASF_OPAQUEPACKET MF_E_ASF_OUTOFRANGE

MF_E_ASF_NOINDEX

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

MF_E_ASF_NOINDEX (0xC00D3A9C) означает, что операция требует подходящий ASF-индекс, но такой индекс недоступен в содержимом.

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

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

  • Определите, какая именно операция требует индекс: переход по времени, поиск по времени, получение позиции пакета или запись индексированного ASF.
  • Проверьте выбранный поток и тип индекса перед вызовом IMFASFIndexer: наличие одного индекса не гарантирует пригодность для любого запроса.
  • При чтении убедитесь, что байтовый поток с индексом действительно был передан и индексатор инициализирован в режиме чтения.
  • При формировании нового ASF создайте и завершите нужный индекс явно, если его требует дальнейший сценарий; не предполагайте, что приёмник ASF-файла создаст любой возможный индекс автоматически.

Если файл воспроизводится с начала, но не допускает перехода к произвольному времени, отсутствие подходящего индекса — одна из первых вещей, которую стоит проверить.

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


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