我正在使用AVFoundation自动拍摄照片,但是照片非常暗。如果在iPhone 4上使用闪光灯,则后置摄像头还可以,但是前置摄像头基本上是一个黑色正方形,其中只有对象的轮廓最暗。

我为两台相机设置了以下设置,但似乎没有什么不同:

if (device.hasFlash) {
        NSLog(@"device.hasFlash turning flash mode on");
        [device lockForConfiguration:&deviceError];
        device.flashMode = AVCaptureFlashModeOn;
        [device unlockForConfiguration];
    }
    else {
        NSLog(@"Device does not have Flash");
    }

    if ([device isFocusModeSupported:AVCaptureFocusModeContinuousAutoFocus]) {
        NSLog(@"Enabling ContinuousAutoFocus");
        [device lockForConfiguration:&deviceError];
        device.focusMode = AVCaptureFocusModeContinuousAutoFocus;
        [device unlockForConfiguration];
    }
    else {
        NSLog(@"Device does not support ContinuousAutoFocus");
    }

    if ([device isExposureModeSupported:AVCaptureExposureModeContinuousAutoExposure]) {
        NSLog(@"Enabling ContinuousAutoExposure");
        [device lockForConfiguration:&deviceError];
        device.exposureMode = AVCaptureExposureModeContinuousAutoExposure;
        [device unlockForConfiguration];
    }
    else {
        NSLog(@"Device does not support ContinuousAutoExposure");
    }

    if ([device isWhiteBalanceModeSupported:AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance]) {
        NSLog(@"Enabling ContinuousAutoWhiteBalance");
        [device lockForConfiguration:&deviceError];
        device.whiteBalanceMode = AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance;
        [device unlockForConfiguration];
    }
    else {
        NSLog(@"Device does not support ContinuousAutoWhiteBalance");
    }

有任何想法吗?

最佳答案

前置摄像头需要一段时间来调整其白平衡。您可能需要KVO isAdjustingWhiteBalance设备属性,并且仅在该属性从“否”变为“是”并首次回到“否”后才触发捕获。

关于iphone - AVFoundation图像进入黑暗中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4550271/

10-11 14:51