我正在寻找在android中将RGB帧转换为YUV(比如YUV420)的硬件加速方法。我确实看到 Renderscript 具有将 YUV 转换为 RGB 的特性。我正在寻找 RGB 到 YUV。
对于带有 Cortex-A8 和 SGX530 GPU 内核的嵌入式系统(基于 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有很好的指示。还在研究。