为什么 AVCam 示例代码不使用 layerWithSession?



我试图弄清楚Apple的Objective-C AVCam示例代码,但我没有看到它将捕获会话添加到预览层的确切位置。我们的代码使用layerWithSession接口创建一个AVCaptureVideoPreviewLayer指针,但如果我们在主线程上使用它,这会导致问题,因为它可能需要 10 秒以上才能完成。我在网络上找到的其他少量示例代码使用相同的界面。

但我在 AVCam 示例的 ObjC 代码中没有看到这一点。它为AVCamPreviewView分配了一个会话,但据我所知,它只是存储对象。或者这实际上是否将会话分配给UIView

以下行可确保 PreviewView 具有 AVCaptureVideoPreviewLayer。

+ (Class)layerClass
{
return [AVCaptureVideoPreviewLayer class];
}

layerClass(( 在内部调用,以找出初始化时应附加到此 UIView 的层。 然后,setSession(( 将为此预览图层设置会话。

相关内容

  • 没有找到相关文章

最新更新