【发布时间】:2019-04-12 21:17:16
【问题描述】:
我已经成功将libavcodec库导入到一个iPhone应用项目中,我用它把一个电影文件解码成YUV420P数据,这样我就可以得到电影的所有帧,然后将它们转换成RGB数据,这样就可以了由 OpenGL ES 显示。
电影可以播放成功,但是由于从YUV到RGB的转换和OpenGL(glDrawArrays)的显示方式很慢,所以速度很慢。
有没有更聪明的方式来播放视频(假设电影必须由 libavcodec 解码)?喜欢直接显示 YUV 还是转换成可以直接显示的类似 YUV 的数据?或者其他比 glDrawArrays 更快的显示方法? Core Graphics可以加载YUV数据吗?
【问题讨论】:
-
你的方法是在一个模糊的法律领域,见multinc.com/2009/08/24/…
标签: iphone opengl-es yuv video-player