使用UIImagePickerController录制视频

4

我正在开发一款记录视频的iPhone应用程序。我创建了一个UIImagePickerController,将其限制为视频录制,然后以编程方式要求相机开始录制视频。不幸的是,当我运行应用程序时,控制台会显示以下内容;

"UIImagePickerController: ignoring request to start video capture; camera is not yet ready."

我该怎么处理这个问题?
2个回答

3

没有委托回调告诉你相机何时准备好。我尝试了这个方法,但没有运气,仍然出现错误:

if ([UIImagePickerController isCameraDeviceAvailable:[picker cameraDevice]]) {
                [picker takePicture];
}
else {
     NSLog(@"Camera not ready");
}

我在延迟1.0、1.5、2.0秒后调用了拍照功能。我的观察结果如下:

在1.0秒时:可以拍摄照片,但完整的快门关闭过程没有在屏幕上显示; 在1.5秒时:快门关闭的过程可以看到,但非常少; 在2.0秒时:相机会加载并显示屏幕上的内容,然后再拍照。

因此,建议您使用1.75到2.25之间的时间设置。我使用的代码如下:

[picker performSelector:@selector(takePicture) withObject:nil afterDelay:2.0];

@OXXY 不用谢。虽然你选择的答案没有解决你的问题(我已经检查过了),但你仍然选择了它作为答案。这有点令人沮丧。 - Bushra Shahid
为什么你这么说??答案请提供苹果公司的示例代码:https://developer.apple.com/library/ios/samplecode/AVCam/AVCam.zip。你可以在这里找到它。它提供了一个录制视频和捕获静态图像的程序,现在我正在学习这个代码。如果你能帮助我学习它,那就太好了 :) - OXXY
UIRequiredDeviceCapabilities 基本上让您检查您的设备是否具有相机,这不是您最初的问题。您的设备有相机,只是还没有准备好。 - Bushra Shahid
我可以在聊天上和你交流吗?如果可能的话,请给我一个约定时间。 - OXXY
如果您不介意,我想谈谈我的问题,并向您道歉 :) - OXXY

1

非常感谢您提供的参考资料,我不知道该如何表达我的感激之情。非常感谢! - OXXY

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接