Что означает код HRESULT 0xC00D4654 (MF_E_INVALID_PROFILE)?

 
Предыдущий Следующий
MF_E_FLUSH_NEEDED MF_E_INDEX_NOT_COMMITTED

MF_E_INVALID_PROFILE

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

MF_E_INVALID_PROFILE (0xC00D4654) — Профиль недействителен.

Этот HRESULT относится к IMFASFProfile, а не к IMFTranscodeProfile Transcode API. ASF-профиль описывает выходные потоки и их параметры; его используют IMFASFContentInfo, ASF-мультиплексор и приёмник ASF при формировании контейнера.

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

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

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

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

Документация для результата 0xC00D4654: multiplexer configuration from an ASF profile · configuring ASF media sinks · FFmpeg ASF muxer source.


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