有什么方法可以给我们固定数量的帧,以便我们可以使用AVCaptureSession在1秒内捕获?

时间:2019-09-09 07:11:47

标签: ios avfoundation avcapturesession

我正在我的应用程序中创建BOOMERANG效果,所以我通过设置1秒计时器来捕获图像。目前,在1秒钟内,我大部分时间会获得24至30帧的图像。

但是我想一直只在1秒内捕获28帧。

有人可以帮助我实现这一目标吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

在AVCaptureDeviceInput上,您将有一个视频输入。

    let frameRate = 28
    let frameDuration = CMTimeMake(1, frameRate)

    do {
        try videoDevice.unlockForConfiguration()
        videoDevice.activeVideoMaxFrameDuration = frameDuration
        videoDevice.activeVideoMinFrameDuration = frameDuration
        videoDevice.lockForConfiguration()
    } catch {
        NSLog("videoDevice lockForConfiguration returned error \(error)")
    }

您可以尝试通过帧持续时间设置最小/最大FPS。