首先我们修改下纹理的数据格式,将GL_LUMINANCE改为GL_RED,将GL_LUMINANCE_ALPHA改为GL_RG,完整代码如下: voidYUVRenderOpengl::setYUVData(void*y_data,void*uv_data,intwidth,intheight,intyuvType){ //准备y数据纹理 glGenTextures(1,&y_textureId); glActiveTexture(GL_TEXTURE2); glUniform1i(y_textureSam...
因为我们在纹理上传时修改了Y和UV纹理数据的格式,但是Y数据我们使用的是GL_RED,因此在着色器中依然使用.r获取,者无需修改。由于UV纹理我们改为了GL_RG, 因此我们需要将yuv.y = texture(uv_texture, TexCoord).a-0.5;\n这一行的a通道改为g通道,也就是改为yuv.y = texture(uv_texture, TexCoord).g-0.5;...
GL_RED ,将 GL_LUMINANCE_ALPHA 改为 GL_RG ,完整代码如下:void YUVRenderOpengl::setYUVData(void *y_data, void *uv_data, int width, int height, int yuvType) { // 准备y数据纹理 glGenTextures(1, &y_textureId); glActiveTexture(GL_TEXTURE2); glUniform1i(y_textureSampler, 2); // 绑定...
Subject: qv4l2: GL_RED is not supported everywhere, use GL_LUMINANCE. Author: Hans Verkuil <hans.verk...@cisco.com> Date: Thu Jul 3 07:52:54 2014 +0200 While GL_RED works fine on my nvidia card, it fails when used under vmware. Replace by GL_LUMINANCE which is accepted by both....
用空格隔开。接下来一行是源文本,其中有N个字符。都是英文字符,大小写敏感。然后为M行,每行为一个...