在iPhone 3G上加速全屏图像绘制

时间:2010-03-09 17:06:58

标签: iphone objective-c cocoa-touch opengl-es ffmpeg

我正在开发一款播放互动实时流式视频的应用。我使用FFMPEG(不用担心,我将发布我的源代码)来解码MPEG2 / H264 RTP流。我根本无法让iPhone 3G以比每秒5次更快的速度绘制一个像素的画面。

我尝试过一个很慢的OpenGL纹理。我还尝试了一系列覆盖整个屏幕并使用glDrawArrays的2D顶点,但也产生了5 FPS。现在我只是简单地在我的视图上绘制CGImage,这给了我大约7-8 FPS。

从我收集的内容来看,私有CoreSurface框架似乎是唯一的方法。任何人有任何提示或技巧,以获得至少20-30 FPS?我讨厌将我的应用仅限于3GS和iPod touch。

谢谢,

安德鲁

2 个答案:

答案 0 :(得分:0)

如果您想在iPhone上播放H.264和MPEG2视频,为什么要自己进行解码?你需要MPMoviePlayer不包括什么?

答案 1 :(得分:0)

如果您正在使用软件进行解码,那么您将无法获得良好的帧速率。即使在更快的硬件上(iPhone 3GS和第二代/第三代iPod touch),你也会很快耗尽电池。