相机捕捉设备曝光模式锁定

时间:2012-07-31 01:59:53

标签: iphone ios camera avcapturedevice

我正试图用曝光点锁定曝光,但是当我在我的设备中尝试时它似乎不起作用。虽然相机应用程序可以在您长按时点按屏幕以锁定曝光和焦点,但是当使用我自己的应用程序使用以下代码行进行尝试时,它不起作用。我错过了配置上的一些内容吗?

if ([_captureInput.device isExposureModeSupported:AVCaptureExposureModeLocked] && [_captureInput.device lockForConfiguration:NULL] && [_captureInput.device isExposurePointOfInterestSupported]) 
{
[_captureInput.device setExposurePointOfInterest:pointOfInterest];
[_captureInput.device setExposureMode:AVCaptureExposureModeLocked];
[_captureInput.device unlockForConfiguration];
}

1 个答案:

答案 0 :(得分:1)

如果您要更改闪光模式,如何锁定配置的示例如下所示:

AVCaptureDevice *temp = [[[[self captureSession] inputs] lastObject] device];

if ([temp isFlashModeSupported:AVCaptureFlashModeOn]) {
        NSError *error;
        bool locked = [temp lockForConfiguration:&error];
        if (locked) {
            switch (self.flashMode.intValue) {
                case 0: // Off
                    [temp setFlashMode:AVCaptureFlashModeOff];
                    break;
                case 1: // On
                    [temp setFlashMode:AVCaptureFlashModeOn];
                    break;
                case 2: // Auto
                    [temp setFlashMode:AVCaptureFlashModeAuto];
                    break;

                default:
                    break;
            }
        } else {
            NSLog(@"Could not lock for configuration");
        }

    }

编辑:这只是一个例子(但它应该工作),因为你可以看到我以一种非常奇怪的方式得到捕获设备,因为如果你保存了它或者如果你以不同的方式处理它,我不会将它保存在任何地方也会有效。