| Предыдущий | Следующий |
| MF_E_TRANSFORM_CONFLICTS_WITH_OTHER_CURRENTLY_ENABLED_FEATURES | MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_SPKR_CONFIG |
MF_E_TRANSFORM_NEED_MORE_INPUT
Что означает MF_E_TRANSFORM_NEED_MORE_INPUT
MF_E_TRANSFORM_NEED_MORE_INPUT (0xC00D6D72) — MFT пока не может выдать следующий результат и ожидает дополнительные входные данные.
Это важный случай, который обычно не следует трактовать как сбой декодера. В синхронной модели MFT приложение передаёт данные через ProcessInput и забирает готовый результат через ProcessOutput. Когда внутреннего входа недостаточно для следующего выхода, ProcessOutput возвращает этот HRESULT.
Что проверить
- При обычном воспроизведении вернитесь к
ProcessInputи передайте следующий входной сэмпл. - После команды drain этот результат означает, что MFT уже выдал всё, что мог сформировать из накопленных данных.
- Отделяйте его от
MF_E_TRANSFORM_STREAM_CHANGE: при смене потока нужно пересогласовать формат, а не просто подать больше входа. - Для асинхронного MFT не стройте логику на этом HRESULT: потребность во входе там сообщается событием
METransformNeedInput.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
