0

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

但我在 AVCam 示例的 ObjC 代码中的任何地方都看不到这一点。它将会话分配给AVCamPreviewView,但据我所知,它仅存储对象。或者这实际上是否将会话分配给UIView

4

1 回答 1

1

确保 PreviewView 具有 AVCaptureVideoPreviewLayer 的是以下行。

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

layerClass() 在内部被调用以找出在初始化时应该将哪个层附加到这个 UIView。setSession() 然后为这个预览层设置会话。

于 2018-06-01T17:45:02.083 回答