我正在使用AV基金会在苹果发布iOS 4.0后通过遵循http://developer.apple.com/iphone/library/qa/qa2010/qa1702.html给出的代码来连续捕获图像
但是,当我调用"session startRunning;“时,启动相机预览大约需要1-2秒。因此,这对最终用户来说是令人沮丧的,因为他需要等待一段时间。
有没有办法暂停会话而不是停止它,因为我可以在程序启动时初始化会话,并保持暂停,直到用户导航到摄像头屏幕并在那里开始运行它?谢谢你的帮助。
发布于 2010-12-30 15:05:33
没有办法“暂停”会话,但您可以在任何时候启动正在运行的捕获会话,并让它继续运行。如果要捕获静态图像,只需在准备好时调用captureStillImageAsynchronouslyFromConnection即可。如果你要捕捉视频,你可以让你的captureOutput:didOutputSampleBuffer:fromConnection:方法在委托中丢弃帧,直到你想对它们做些什么。您甚至可以在没有输出设备的情况下启动捕获会话,直到您准备好为止(还没有尝试过)。
发布于 2013-04-15 19:57:27
与其暂停会话,不如禁用输入连接。
例如:
<your_video_preview_layer>.connection.enabled = NO;这样它就不会消耗来自输入设备的数据。
希望这就是你要找的。
发布于 2013-05-17 11:44:16
这就是我所做的,以防止UI在调用-startRunning时锁定最初的1-2秒。
1) Add UIActivityIndicator
2) Add observer to AVCaptureSession
3) call -startRunning in a background thread
4) Resume the UI in the notification callbackhttps://stackoverflow.com/questions/3624639
复制相似问题