我想将yuv420图像转换为rgb888图像。我得到了以下链接。 http://www.fourcc.org/source/YUV420P-OpenGL-GLSLang.c
这个程序对我来说很好。 现在我想将我处理过的rgb数据从GPU读回主机内存。我试图做glGetTexImage,但它只给我最后一个绑定的纹理数据。
任何人都可以告诉我如何将处理后的RGB数据从GPU读回主机内存?
我还有另一个问题,如果我能成功将我的数据从GPU读回主机存储器那么它将是RGB还是RGBA?
答案 0 :(得分:0)
使用glReadPixels
命令。语法为`glReadPixels(GLint x,GLint y,GLsizei width,GLsizei height,GLenum format,GLenum type,GLvoid * data)
x
和y
指定要从thr framebuffer中读取的矩形左下角的位置,format
接受GL_ALPHA
,GL_RGB
, GL_RGBA
,type
是像素数据的类型,data
是指向返回数据数组的指针。
format
指定数据是RGB,RGBA还是alpha。
您可以在Khronos specification page获取更多信息。