0

我正在尝试制作一个自定义的录像机 iPhone 应用程序,我需要支持 240 fps。但是,当我将我设置AVCaptureDevice为使用格式和 时activeVideoMaxFrameDuration,整个视频视图就会被冻结。如果我使用 60fps、120fps,一切正常,完全没有问题。

对于输出部分,我使用的是 AVCaptureMovieFileOutput,如果这很重要,我还设置了曝光自动对焦模式。

[self.videoConnection setPreferredVideoStabilizationMode:AVCaptureVideoStabilizationModeOff];

if ([self.videoDevice isExposureModeSupported:AVCaptureExposureModeAutoExpose] &&
    [self.videoDevice lockForConfiguration:&error]) {

    [self.videoDevice setExposureMode:AVCaptureExposureModeContinuousAutoExposure];

    [self.videoDevice unlockForConfiguration];
}

if ([self.videoDevice isFocusModeSupported:AVCaptureFocusModeAutoFocus] &&
    [self.videoDevice lockForConfiguration:&error]) {

    [self.videoDevice setFocusMode:AVCaptureFocusModeContinuousAutoFocus];

    [self.videoDevice unlockForConfiguration];

}

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{

    [self tapInView:nil];

});
4

1 回答 1

0

解决方案与自动对焦和曝光有关。当设备的相机处于 120/240fps 模式时,我们需要禁用手动对焦和曝光,但仍然保持自动对焦和自动曝光开启。这将防止相机冻结

于 2015-06-25T07:06:05.757 回答