AVCaptureSession多个输入?

时间:2016-09-21 10:20:11

标签: ios avfoundation

在iOS上,我想:

  • 以慢动作(240 fps)从后置摄像头录制光盘
  • 从后置摄像头获得30 fps的稳定帧

我设法做了一个或另一个,但我不知道如何设置AVCaptureSessionAVCaptureDeviceInput,...以两个输入

我认为一开始就有一个输入就足够了,但是对于240 fps不存在AVCaptureVideoStabilizationModeCinematic

由于

注意:它与:Run multiple AVCaptureSessions or add multiple inputs不同,其中作者要求同时运行2个摄像头,一个答案是OSX(不适用于iOS)

编辑:代码的一部分

我知道这不会起作用,因为UIDevice是相同的,不能有两个属性,但由于AV有一些状态机属性,我以为我会试一试。

_inputCameraStabilized = [self getCameraForPosition:AVCaptureDevicePositionBack];
_videoInputStabilized = [AVCaptureDeviceInput deviceInputWithDevice:_inputCameraStabilized error:&error];
if ([_captureSession canAddInput:_videoInputStabilized]) {
    [_captureSession addInput:_videoInputStabilized];
}
[self setZoomAndRate:_inputCameraStabilized];

_inputCameraHighFPS = [self getCameraForPosition:AVCaptureDevicePositionBack];
[self setZoomAndRateHighFPS:   _inputCameraHighFPS];
_videoInputHighFPS = [AVCaptureDeviceInput deviceInputWithDevice:_inputCameraHighFPS error:&error];
if ([_captureSession canAddInput:_videoInputHighFPS]) {
    [_captureSession addInput:_videoInputHighFPS];
}

// setZoomAndRate... finds and sets the right active format for 240fps or 30fps

0 个答案:

没有答案