【发布时间】:2013-08-12 22:08:58
【问题描述】:
我正在寻找在 android 中将 RGB 帧转换为 YUV(比如 YUV420)的硬件加速方法。
我确实看到 Renderscript 具有将 YUV 转换为 RGB 的特性。不过,我正在寻找 RGB 到 YUV。
我需要这个用于带有 SGX530 GPU 内核的 Cortex-A8 的嵌入式系统(基于 Android 4.0.3)。我喜欢在以每秒 10 帧的速度不断变化的 720p ARGB 帧上执行此操作。在 ARM A8 内核上执行此操作是不可接受的。这就是为什么我正在寻找一种使用 GPU 计算来做到这一点的方法。
我在想象基于 Renderscript 或 OpenGL 的实现可以解决这个问题。但不知道如何。
http://www.mdk.org.pl/2007/11/17/gl-colorspace-conversions 此处的博客文章提供了使用 GStreamer 和 OpenGL 进行 RGB 到 YUV 转换的示例。
我正在寻找适用于 Android 的东西。
编辑: 链接http://slouken.blogspot.com/2011/02/mpeg-acceleration-with-glsl.html 有很好的指示。还在研究中。
【问题讨论】:
标签: android opengl-es glsl rgb yuv