哪一个更好,OpenGL ES 2.0还是OpenMAX?

时间:2013-10-17 09:07:42

标签: opengl-es-2.0 openmax

我正在制作播放H264的应用。

我使用ffMpeg解码,使用fragmentShader转换YUV-> RGB并渲染它。

然而,frameRate是不够的(约15~20 fps)。

所以,我问了一下,并得到了改变渲染方式的答案。

目前的方法是将'glTexSubImage2D'与FBO,RBO,RTT一起使用。

推荐方式是使用eglImage。

我抓了很多信息,然后找到了OpenMax。

大多数硬件都支持转换yuv420p。所以我不应该顽固地使用ffMpeg。

如果使用eglImage,我如何使用'GraphicBuffer'???????

我之前尝试过,我只收到消息'没有文件或目录' 哪一行是'#include ui / GraphicBuffer.h'(OfCourse在Android.mk中添加了加载库)

这是libui.so中的私有api,android / frameworks / native /.

1 个答案:

答案 0 :(得分:1)

您可以从Android平台树复制所需的包含文件夹,也可以将/ frameworks / native / ui的完整路径添加到Android.mk中的LOCAL_C_INCLUDES:

LOCAL_LDLIBS    := -llog -landroid -lGLESv2 -lEGL -lm -ljnigraphics -lui
LOCAL_C_INCLUDES := C:\Android\android-ndk-r8b\platforms\android-14\include

您的代码应该包含它:

#include <ui/GraphicBuffer.h>
using namespace android;