| Предыдущий | Следующий |
| MF_E_MISSING_ASF_LEAKYBUCKET | MF_E_STREAMSINK_REMOVED |
MF_E_INVALID_ASF_STREAMID
Что означает MF_E_INVALID_ASF_STREAMID
MF_E_INVALID_ASF_STREAMID (0xC00D4659) — Недопустимый идентификатор потока ASF.
В ASF номер потока и его индекс в IMFASFProfile — разные величины. Номера потоков находятся в диапазоне 1–127 и не обязаны быть последовательными; индекс при перечислении профиля начинается с нуля.
Что проверить и как подтвердить исправление
Запишите отдельно номер потока и его индекс в профиле в месте отказа. Типичная ошибка — передать нулевой индекс приложения как номер ASF-потока либо использовать номер потока из старой версии профиля после удаления или перестройки потоков.
Проверьте, что номер действительно назначен через IMFASFStreamConfig::SetStreamNumber и что тот же поток присутствует в профиле, переданном текущему ContentInfo и мультиплексору. Не полагайтесь на порядок перечисления как на идентификатор.
Установка кодека или изменение типа мультимедиа не исправляет неверный идентификатор потока. Исправление подтверждается согласованным отображением «индекс приложения → номер ASF-потока» во всех вызовах, работающих с одним профилем.
Документация для результата 0xC00D4659: ASF WMContainer components · ProcessSample stream-number parameter · Wine Media Foundation HRESULT definitions.
Нужно найти другой код? Найти другой код состояния или ошибки.