我正在尝试在 ARKit 中对视频进行色度键控,并且我所做的与 @Felix 在这里所做的非常相似:GPUImageView inside SKScene as SKNode Material - Playing透明视频 on ARKit
但是,当视频应该显示时(在本例中,当检测到 AR 参考图像时)我收到错误[SceneKit] Error: Cannot get pixel buffer (CVPixelBufferRef),视频不再播放。在我实现chromaKeyMaterial. 这是我的代码,从检测到 AR 参考图像后开始:
DispatchQueue.main.async {
let filePath = Bundle.main.path(forResource: "wigz", ofType: "mp4")
let videoURL = NSURL(fileURLWithPath: filePath!)
let player = AVPlayer(url: videoURL as URL)
let spriteKitScene = SKScene(size: CGSize(width: 640, height: 480))
let videoSpriteKitNode = SKVideoNode(avPlayer: player)
let videoNode = SCNNode()
videoNode.geometry = SCNPlane(width: imageAnchor.referenceImage.physicalSize.width,
height: imageAnchor.referenceImage.physicalSize.height)
videoNode.eulerAngles = SCNVector3(-Float.pi/2, 0, 0) …Run Code Online (Sandbox Code Playgroud)