我想将 yuv 转换为 rgb 的帧显示为默认显示。目前我正在使用以下代码执行此操作,其中 yuv 到 rgb 的转换是由加载 CPU 的汇编代码完成的。我发现一些代码可以对 opengles 做同样的事情。
Yuv420_to_RGB(ui8buf, buffer1, h1, w1); /* RGB data will be resulted in buffer1 */
window = ANativeWindow_fromSurface(env, surface);
ANativeWindow_acquire(window);
wid = ANativeWindow_getWidth(window);
hei = ANativeWindow_getHeight(window);
ANativeWindow_setBuffersGeometry(window,w1,h1,1)
if (ANativeWindow_lock(window, &buffer, NULL) == 0)
{
memcpy(buffer.bits, buffer1, (4* w1*h1));
ANativeWindow_unlockAndPost(window);
}
ANativeWindow_release(window);
我有以 glDrawArrays 结尾的 opengles 例程。如何显示opengles转换的结果?