0
我想显示一个yuv到rgb转换帧为默认显示。目前我正在用下面的代码来执行它,其中yuv到rgb的转换由加载CPU的汇编代码完成。我发现了一些代码来做与opengles相同的代码。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转换的结果?
我得到了OpenGLES相当于Yuv420_to_RGB函数。我缺乏的是如何显示转换的内容。即展示opengles缓冲区内容到表面 – RagFox
@RagFox:好吧,用纹理作为图像绘制所需大小的纹理四边形。那是怎么做到的。 – datenwolf