【发布时间】:2012-06-20 08:08:37
【问题描述】:
我需要在 iOS 上播放自定义格式的视频,所有的渲染都是我自己完成的。
我目前的选择是 OpenGL ES,但它从分析结果中占用了太多 CPU(主要在 glTexImage2D 中)。
是否有更快的替代方案满足我的需要?
谢谢!
【问题讨论】:
-
您是仅使用
glTexImage2D()来创建纹理,还是每帧都使用? -
我怀疑通过 OpenGL ES 在屏幕上显示视频是你的限制因素。在一个视频处理应用程序中,我能够从 iPhone 4 摄像头捕捉并以简单的 60 FPS 将其反馈到屏幕上:sunsetlakesoftware.com/2010/10/22/…。您的瓶颈必须在其他地方,很可能在您的解码程序中。
-
@genpfault 我对每一帧都使用 glTexImage2D,因为我知道这是将图像绘制到屏幕上的方式。我对 OpenGL 很陌生
-
@Brad 我正在阅读您的颜色跟踪示例代码。看来您还在 processNewCameraFrame 方法中使用了 glTexImage2D 。也许我做了一些错误的设置。我将尝试分析您的代码以找出差异。只是出于好奇,为什么 AVPlayer 运行得这么快?它根本不使用 OpenGL(从 OpenGL 仪器观察到)
标签: iphone ios video opengl-es