我正试图用曝光点锁定曝光,但是当我在我的设备中尝试时它似乎不起作用。虽然相机应用程序可以在您长按时点按屏幕以锁定曝光和焦点,但是当使用我自己的应用程序使用以下代码行进行尝试时,它不起作用。我错过了配置上的一些内容吗?
if ([_captureInput.device isExposureModeSupported:AVCaptureExposureModeLocked] && [_captureInput.device lockForConfiguration:NULL] && [_captureInput.device isExposurePointOfInterestSupported])
{
[_captureInput.device setExposurePointOfInterest:pointOfInterest];
[_captureInput.device setExposureMode:AVCaptureExposureModeLocked];
[_captureInput.device unlockForConfiguration];
}
答案 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");
}
}
编辑:这只是一个例子(但它应该工作),因为你可以看到我以一种非常奇怪的方式得到捕获设备,因为如果你保存了它或者如果你以不同的方式处理它,我不会将它保存在任何地方也会有效。