| Предыдущий | Следующий |
| MF_E_CAPTURE_SOURCE_DEVICE_EXTENDEDPROP_OP_IN_PROGRESS | MF_E_CAPTURE_NO_SAMPLES_IN_QUEUE |
MF_E_CAPTURE_PROPERTY_SET_DURING_PHOTO
MF_E_CAPTURE_PROPERTY_SET_DURING_PHOTO (0xC00DABEA) означает, что приложение попыталось изменить свойство устройства во время незавершённой съёмки фотографии или серии фотографий.
IMFCaptureEngine::TakePhoto работает асинхронно: возврат S_OK подтверждает принятие запроса, но сама съёмка заканчивается позже событием механизм захвата. До этого момента некоторые параметры камеры должны оставаться стабильными, иначе экспозиция, фокус, баланс белого или другой контроль могут измениться посреди операции.
Что проверить
- Зафиксируйте момент вызова
TakePhotoи соответствующее событиеMF_CAPTURE_ENGINE_PHOTO_TAKEN. Между ними считайте фотосъёмку незавершённой. - Проверьте, не отправляет ли UI или автоматическая настройка камеры новый запрос изменения свойства до получения события завершения.
- Если свойство должно определять текущий кадр, завершите его изменение до
TakePhoto. Если оно относится к следующему кадру, применяйте его после завершения текущей съёмки. - Не заменяйте событие фиксированной задержкой: длительность захвата зависит от камеры, активного формата и режима серии.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
