在iOS SceneKit中,呈现流视频的最有效方法是什么?

问题描述 投票:0回答:1

我正在使用一个SceneKit App来显示流式视频。在其中创建一个平面,将UIImage附加到该平面,然后保存CALayer。后来,我得到了压缩的视频流,然后将其解压缩为cgImage。然后,我使用新的cgImage更新CALAyer的内容。所有这些都有效,但是帧速率非常慢,并且似乎不是流或解压缩问题。我的问题是:是否有更快,更有效的方法来做到这一点?我已经旋转和偏移了SNCPlane。但是,这些应该只是矩阵更新,并且不应更改渲染时间,因为您必须经过相同的矩阵才能以其原始坐标渲染SCNPlane。

ios video-streaming scenekit
1个回答
0
投票

转换为UIImageCGImageRef是一项昂贵的操作。它以非最佳格式创建图像的CPU表示,然后需要再次转换为GPU表示(MTLTexture)。 SceneKit支持将AVPlayer实例作为材质属性的contents。它应该是将视频映射到飞机上的最简单,最有效的方法。

© www.soinside.com 2019 - 2024. All rights reserved.