iPhone4能同时logging前后相机吗?

我正在研究一个应用程序。 其中一个有趣的想法是同时从前置摄像头和前置摄像头进行录制。 你们谁知道这是否可行?

谢谢 :)

编辑:我的意思是说前方和后方的相机。 我想从两个摄像机立即logging到两个单独的stream。 我希望我更清楚一点。

这是API允许的。 我在运行最新的iOS 4.2.1的iPhone 4上尝试了三种方法。

首先,我尝试使用一个捕获会话与两个video设备作为input。 连接第二个设备会产生一个exception:

终止应用程序由于未捕获的exception“NSInvalidArgumentException”,原因: *目前不支持多个audio/videoAVCaptureInputs。

其次,我尝试设置两个不同的会议,每个会议只有一个摄像机,并在同一时间开始。 这导致第一次会议报告帧大约一秒钟,但第二次开始第一次停止自己的意志。 您发送“startRunning”的顺序决定了哪个会话最终pipe理强制另一个会话。

最后,我尝试了一个简单的乒乓方法。 所以我创build了两个会话,从第一个开始,一旦报告了一个帧,停止它并开始第二个。 然后停下来,开始第一个,无限的。 可悲的是,请求会话开始和接收第一帧之间的延迟使我每两秒钟就有一帧左右。

当然,我可能在代码中犯了错误,但我倾向于说在当前的硬件或操作系统上是不可能的。 我将钩住AVCaptureSession通知,看看我是否有一个明确的原因,为什么停止和更新这篇文章。

补充:我的程序只接收AVCaptureSessionDidStartRunningNotification通知,每个捕获会话一个。 停止报告不报告错误,中断或其他停工。 我也无法find我的代码的问题,如对象或调度队列重用,可能会导致这个问题。

似乎可以使用AVFoundation API从多个videoinput进行录制。 根据文档 ,可以在AVCaptureSession中使用多个AVCaptureDeviceinput。 在iPhone 4中,这意味着一个会话可以同时具有两个摄像机的AVCaptureDevices。 实际上,这可能是不可行的。 我没有尝试过,所以我无法确定。

我不认为标准的UIImagePickerController可以同时用于从两个logging。