在 Mac Os 和 Swift 中显示 AVCaptureDevice 实时流视频

Display AVCaptureDevice live stream video in Mac Os with Swift

我想显示来自我的 iSight 摄像头的实时流视频。

我能够检测到与 iSight 摄像头匹配的 AVCaptureDevice,但我不知道如何显示 iSight 实时流。

我找到了一些 iOS (http://jamesonquave.com/blog/taking-control-of-the-iphone-camera-in-ios-8-with-swift-part-1/) 的示例,但是我想为 Mac OS 应用程序实现相同的 objective。

我也查看了 Apple 文档,但不幸的是,某些方法示例不适用于 Swift。

我应该在哪里添加 AVCaptureVideoPreviewLayer?在 CustomView 上?或者 IKCameraDeviceView?

或者有人可以给我提供一个关于如何在 Mac Os Os 中将 iSight 摄像头与 Swift 一起使用的示例吗?

看来是我自己找到解决办法了

我必须将 AVCaptureVideoPreviewLayer 附加到 CALayer,然后将 CALayer 添加到 CustomView。

我可以通过以下方式实现:

let renderLayer = CALayer()

layer.wantsLayer = true   // layer is a NSView
layer.layer = renderLayer

 // Initialize AVCaptureSession and other stuff...