【问题标题】:Why doesn't the AVCam sample code use layerWithSession?为什么 AVCam 示例代码不使用 layerWithSession?
【发布时间】:2018-06-02 01:45:02
【问题描述】:

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

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

【问题讨论】:

    标签: ios objective-c avfoundation avcam


    【解决方案1】:

    以下行确保 PreviewView 具有 AVCaptureVideoPreviewLayer。

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多