我的应用是播放 h.264 视频的 AR 应用。我们通过 AVPlayer 创建了 SKVideoNode,并将 SKVideoNode 设置为 SKScene,然后创建 SCNNode 来涉及这个 SKScene。
- 示例代码
AVPlayer *avPlayer = [self getMoviePlayer:path];
SKVideoNode *videoNode = [[SKVideoNode alloc]initWithAVPlayer: avPlayer];
CGSize videoSize = CGSizeMake(100, 50);
videoNode.size = videoSize;
videoNode.position = CGPointMake(50, 50);
videoNode.yScale = -1.0;
SKScene *skScene = [[SKScene alloc] initWithSize:videoSize];
skScene.scaleMode = SKSceneScaleModeAspectFit;
[skScene addChild:videoNode];
SCNNode *planeNode = [[SCNNode alloc] init];
planeNode.geometry = [[SCNPlane alloc] init];
SCNMaterial *material;
material = [[SCNMaterial alloc] init];
material.diffuse.contents = skScene;
planeNode.geometry.firstMaterial = material;
========================我们使用这个SCNNode来播放视频。
它在 iOS12.4 之前运行良好,但是当我在 iOS13-beta 设备上对其进行测试时,它在听到声音时显示黑屏。