我正在试图解开Apple的Objective-C AVCam示例代码,但我没有看到它将捕获会话添加到预览层的确切位置。我们的代码使用AVCaptureVideoPreviewLayer
接口创建一个layerWithSession
指针,但如果我们在主线程上使用它会导致问题,因为它可能需要10秒才能完成。我在网上找到的其他几个示例代码使用相同的界面。
但我没有在AVCam示例的ObjC代码中看到任何地方。它为AVCamPreviewView
分配一个会话,但据我所知,它只存储对象。或者这实际上是将会话分配给UIView
?
答案 0 :(得分:1)
以下行确保PreviewView具有AVCaptureVideoPreviewLayer。
+ (Class)layerClass
{
return [AVCaptureVideoPreviewLayer class];
}
在内部调用layerClass()以找出在初始化时应该将哪个层附加到此UIView。然后setSession()设置此预览图层的会话。