diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2020-09-13 01:04:20 +0300 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2020-10-04 22:51:45 +0300 |
commit | ae9e7fbf3a8bf45b08951b650aec3f91997fafc3 (patch) | |
tree | 0509a8e0dd18f5456a341f936d53d93bb55df621 /src/qcam/assets/shader/YUV_2_planes_VU.frag | |
parent | 0bc03960daf0d7e28d45513873e3d1feecbedbf6 (diff) |
qcam: viewfinder_gl: Merge the semi-planar UV and VU shaders
Use macros to select the U and V pattern, to avoid code duplication
between the two semi-planar shaders.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Diffstat (limited to 'src/qcam/assets/shader/YUV_2_planes_VU.frag')
-rw-r--r-- | src/qcam/assets/shader/YUV_2_planes_VU.frag | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/src/qcam/assets/shader/YUV_2_planes_VU.frag b/src/qcam/assets/shader/YUV_2_planes_VU.frag deleted file mode 100644 index f4a5a5ac..00000000 --- a/src/qcam/assets/shader/YUV_2_planes_VU.frag +++ /dev/null @@ -1,32 +0,0 @@ -/* SPDX-License-Identifier: LGPL-2.1-or-later */ -/* - * Copyright (C) 2020, Linaro - * - * YUV_2_planes_VU.frag - Fragment shader code for NV21, NV61 and NV42 formats - */ - -#ifdef GL_ES -precision mediump float; -#endif - -varying vec2 textureOut; -uniform sampler2D tex_y; -uniform sampler2D tex_u; - -void main(void) -{ - vec3 yuv; - vec3 rgb; - mat3 yuv2rgb_bt601_mat = mat3( - vec3(1.164, 1.164, 1.164), - vec3(0.000, -0.392, 2.017), - vec3(1.596, -0.813, 0.000) - ); - - yuv.x = texture2D(tex_y, textureOut).r - 0.063; - yuv.y = texture2D(tex_u, textureOut).g - 0.500; - yuv.z = texture2D(tex_u, textureOut).r - 0.500; - - rgb = yuv2rgb_bt601_mat * yuv; - gl_FragColor = vec4(rgb, 1.0); -} |