Почему я не могу получить автоматическое изменение длительности экспозиции, если для параметра ExposureMode установлено значение AVCaptureExposureModeContinuousAutoExposure

Я разрабатываю приложение для захвата фотографий и хочу, чтобы при слабом освещении автоматически устанавливалась продолжительность экспозиции, поэтому я ищу API AVCaptureExposureMode, и API сообщил, что когда для параметра ExposureMode установлено значение AVCaptureExposureModeAutoExposure или AVCaptureExposureModeContinuousAutoExposure, устройство автоматически регулирует уровни экспозиции. Но когда я перемещаю светлый iPad(Apple/iPad Pro 10.5-inch iOS(12.1.1)) в темный, там просто меняется iso, а не меняется exposure duration.

Извините за мой английский... : (

Вот я пробовал:

        if (![device lockForConfiguration:&error]) {
            if (error) {
                // on error
            }
            return;
        }
        if([device isExposureModeSupported:AVCaptureExposureModeContinuousAutoExposure]){
            [device setExposureMode: AVCaptureExposureModeContinuousAutoExposure];
        }
        [device unlockForConfiguration];

Я ожидаю, что когда я перемещу iPad от светлого к темному, exposure duration и iso будут автоматически регулироваться.


person Alive    schedule 12.02.2019    source источник
comment
Я нашел эта ссылка и этот ответ, и я попробую...   -  person Alive    schedule 13.02.2019
comment
Я пробовал, он работает так же хорошо, но иногда все же быстро мигает, поэтому я использую этот алгоритм, и быстрая вспышка идет вниз.   -  person Alive    schedule 15.02.2019