使用AVCaptureDevice作为SCNScene背景内容
在SceneKit:WWCD2017 (44:19) 的新内容中 ,我们现在可以使用AVCaptureDevice
作为SCNScene
背景内容。
演示文稿的片段:
let captureDevice: AVCaptureDevice = ... scene.background.contents = captureDevice
但是以下代码
let captureDevice = AVCaptureDevice.default(.builtInWideAngleCamera, for: .video, position: .back)! scene.background.contents = captureDevice
产生错误:
[SceneKit] Error: Cannot get pixel buffer (CVPixelBufferRef)
我还试图创建并启动AVCaptureSession
然后使用该设备,但它给出了相同的结果。
这可能是个问题?
编辑
这个错误似乎在iOS 11.2中得到修复
原始答案
这似乎是SceneKit中的一个错误。
如果这对您有用, ARSCNView
解决方法是使用ARSCNView
。 它允许您访问所有SceneKit API,并自动将video源绘制为场景的背景。