我正在开发一个项目,我们将使用iPhone作为捕捉场景的摄像头.录制时我们需要录制@ 60fps而不是30fps(原生支持).所以我正在开发一个应用来做这个,因为iPhone 4S硬件支持720p @ 60fps(如果你越狱你的手机,你可以实现这一点).
有没有人知道如何在iOS上的Objective-C中做到这一点?今天我看到一个应用程序(slopro)可以在非越狱手机上录制60fps.任何建议或提示非常感谢.
根据该文件,与视频帧最大和最小持续时间有关的属性和方法:
supportsVideoMaxFrameDurationsupportsVideoMinFrameDurationvideoMaxFrameDurationvideoMinFrameDuration都被弃用了.还有替代品吗?
我正在尝试构建一个应用程序,它将从相机捕获帧并使用OpenCV处理它们,然后将这些文件保存到设备,但是以特定的帧速率.
我现在坚持的是这个事实AVCaptureVideoDataOutputSampleBufferDelegate似乎并不尊重AVCaptureDevice.activeVideoMinFrameDuration或AVCaptureDevice.activeVideoMaxFrameDuration设置.
captureOutput 如上面的设置所示,运行速度远远超过每秒2帧.
你是否碰巧知道无论是否有代表,人们都能做到这一点?
视图控制器:
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidAppear(animated: Bool) {
setupCaptureSession()
}
func setupCaptureSession() {
let session : AVCaptureSession = AVCaptureSession()
session.sessionPreset = AVCaptureSessionPreset1280x720
let videoDevices : [AVCaptureDevice] = AVCaptureDevice.devices() as! [AVCaptureDevice]
for device in videoDevices {
if device.position == AVCaptureDevicePosition.Back {
let captureDevice : AVCaptureDevice = device
do {
try captureDevice.lockForConfiguration()
captureDevice.activeVideoMinFrameDuration = CMTimeMake(1, 2)
captureDevice.activeVideoMaxFrameDuration = CMTimeMake(1, 2)
captureDevice.unlockForConfiguration()
let input : AVCaptureDeviceInput = try …Run Code Online (Sandbox Code Playgroud)