Message ID | 20200916145254.1644-4-laurent.pinchart@ideasonboard.com |
---|---|
State | Accepted |
Commit | 079afd17e7d8775efc809ec9ca4c6a3fcb4d2763 |
Headers | show |
Series |
|
Related | show |
Hi Laurent, Thanks for your work. On 2020-09-16 17:52:50 +0300, Laurent Pinchart wrote: > The GL renderer uses the same vertex shader for all formats. Hardcode > the file name instead of storing it in a member variable. > > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> > --- > src/qcam/viewfinder_gl.cpp | 10 +--------- > src/qcam/viewfinder_gl.h | 3 +-- > 2 files changed, 2 insertions(+), 11 deletions(-) > > diff --git a/src/qcam/viewfinder_gl.cpp b/src/qcam/viewfinder_gl.cpp > index 18ebe46fe2f9..76e4a900a25a 100644 > --- a/src/qcam/viewfinder_gl.cpp > +++ b/src/qcam/viewfinder_gl.cpp > @@ -101,49 +101,41 @@ bool ViewFinderGL::selectFormat(const libcamera::PixelFormat &format) > case libcamera::formats::NV12: > horzSubSample_ = 2; > vertSubSample_ = 2; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_2_planes_UV_f.glsl"; > break; > case libcamera::formats::NV21: > horzSubSample_ = 2; > vertSubSample_ = 2; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_2_planes_VU_f.glsl"; > break; > case libcamera::formats::NV16: > horzSubSample_ = 2; > vertSubSample_ = 1; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_2_planes_UV_f.glsl"; > break; > case libcamera::formats::NV61: > horzSubSample_ = 2; > vertSubSample_ = 1; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_2_planes_VU_f.glsl"; > break; > case libcamera::formats::NV24: > horzSubSample_ = 1; > vertSubSample_ = 1; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_2_planes_UV_f.glsl"; > break; > case libcamera::formats::NV42: > horzSubSample_ = 1; > vertSubSample_ = 1; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_2_planes_VU_f.glsl"; > break; > case libcamera::formats::YUV420: > horzSubSample_ = 2; > vertSubSample_ = 2; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_3_planes_f.glsl"; > break; > case libcamera::formats::YVU420: > horzSubSample_ = 2; > vertSubSample_ = 2; > - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; > fragmentShaderSrc_ = ":NV_3_planes_f.glsl"; > break; > default: > @@ -162,7 +154,7 @@ bool ViewFinderGL::createVertexShader() > vertexShader_ = new QOpenGLShader(QOpenGLShader::Vertex, this); > > /* Compile the vertex shader */ > - if (!vertexShader_->compileSourceFile(vertexShaderSrc_)) { > + if (!vertexShader_->compileSourceFile(":NV_vertex_shader.glsl")) { > qWarning() << "[ViewFinderGL]:" << vertexShader_->log(); > return false; > } > diff --git a/src/qcam/viewfinder_gl.h b/src/qcam/viewfinder_gl.h > index 825af1c13cb7..7675d0a06351 100644 > --- a/src/qcam/viewfinder_gl.h > +++ b/src/qcam/viewfinder_gl.h > @@ -73,9 +73,8 @@ private: > /* Vertex buffer */ > QOpenGLBuffer vertexBuffer_; > > - /* Fragment and Vertex shader file name */ > + /* Fragment shader file name */ > QString fragmentShaderSrc_; > - QString vertexShaderSrc_; > > /* YUV texture planars and parameters */ > GLuint textureUniformU_; > -- > Regards, > > Laurent Pinchart > > _______________________________________________ > libcamera-devel mailing list > libcamera-devel@lists.libcamera.org > https://lists.libcamera.org/listinfo/libcamera-devel
diff --git a/src/qcam/viewfinder_gl.cpp b/src/qcam/viewfinder_gl.cpp index 18ebe46fe2f9..76e4a900a25a 100644 --- a/src/qcam/viewfinder_gl.cpp +++ b/src/qcam/viewfinder_gl.cpp @@ -101,49 +101,41 @@ bool ViewFinderGL::selectFormat(const libcamera::PixelFormat &format) case libcamera::formats::NV12: horzSubSample_ = 2; vertSubSample_ = 2; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_2_planes_UV_f.glsl"; break; case libcamera::formats::NV21: horzSubSample_ = 2; vertSubSample_ = 2; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_2_planes_VU_f.glsl"; break; case libcamera::formats::NV16: horzSubSample_ = 2; vertSubSample_ = 1; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_2_planes_UV_f.glsl"; break; case libcamera::formats::NV61: horzSubSample_ = 2; vertSubSample_ = 1; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_2_planes_VU_f.glsl"; break; case libcamera::formats::NV24: horzSubSample_ = 1; vertSubSample_ = 1; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_2_planes_UV_f.glsl"; break; case libcamera::formats::NV42: horzSubSample_ = 1; vertSubSample_ = 1; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_2_planes_VU_f.glsl"; break; case libcamera::formats::YUV420: horzSubSample_ = 2; vertSubSample_ = 2; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_3_planes_f.glsl"; break; case libcamera::formats::YVU420: horzSubSample_ = 2; vertSubSample_ = 2; - vertexShaderSrc_ = ":NV_vertex_shader.glsl"; fragmentShaderSrc_ = ":NV_3_planes_f.glsl"; break; default: @@ -162,7 +154,7 @@ bool ViewFinderGL::createVertexShader() vertexShader_ = new QOpenGLShader(QOpenGLShader::Vertex, this); /* Compile the vertex shader */ - if (!vertexShader_->compileSourceFile(vertexShaderSrc_)) { + if (!vertexShader_->compileSourceFile(":NV_vertex_shader.glsl")) { qWarning() << "[ViewFinderGL]:" << vertexShader_->log(); return false; } diff --git a/src/qcam/viewfinder_gl.h b/src/qcam/viewfinder_gl.h index 825af1c13cb7..7675d0a06351 100644 --- a/src/qcam/viewfinder_gl.h +++ b/src/qcam/viewfinder_gl.h @@ -73,9 +73,8 @@ private: /* Vertex buffer */ QOpenGLBuffer vertexBuffer_; - /* Fragment and Vertex shader file name */ + /* Fragment shader file name */ QString fragmentShaderSrc_; - QString vertexShaderSrc_; /* YUV texture planars and parameters */ GLuint textureUniformU_;
The GL renderer uses the same vertex shader for all formats. Hardcode the file name instead of storing it in a member variable. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> --- src/qcam/viewfinder_gl.cpp | 10 +--------- src/qcam/viewfinder_gl.h | 3 +-- 2 files changed, 2 insertions(+), 11 deletions(-)