[{"id":25194,"web_url":"https://patchwork.libcamera.org/comment/25194/","msgid":"<166456296027.3760285.8610904354392521726@Monstersaurus>","date":"2022-09-30T18:36:00","subject":"Re: [libcamera-devel] [PATCH] qcam: Fix YUV planar fragment shaders","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Quoting Laurent Pinchart (2022-09-30 17:57:31)\n> Commit 251f0534b74b (\"qcam: viewfinder_gl: Take color space into account\n> for YUV rendering\") introduced compilation failures in the YUV\n> semi-planar and planar fragment shaders due to a bad copy & paste. Fix\n> it.\n> \n> Fixes: 251f0534b74b (\"qcam: viewfinder_gl: Take color space into account for YUV rendering\")\n> Reported-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\nWonderful, glorious GLES 30FPS returned to qcam on SGo2.\nThank you.\n\nTested-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n> ---\n> Kieran,\n> \n> This should fix the issue you have reported. I haven't tested the patch\n> yet, could you give it a try ?\n> ---\n>  src/qcam/assets/shader/YUV_2_planes.frag | 2 +-\n>  src/qcam/assets/shader/YUV_3_planes.frag | 2 +-\n>  2 files changed, 2 insertions(+), 2 deletions(-)\n> \n> diff --git a/src/qcam/assets/shader/YUV_2_planes.frag b/src/qcam/assets/shader/YUV_2_planes.frag\n> index da8dbcc5f801..1d5d1206248f 100644\n> --- a/src/qcam/assets/shader/YUV_2_planes.frag\n> +++ b/src/qcam/assets/shader/YUV_2_planes.frag\n> @@ -36,7 +36,7 @@ void main(void)\n>  #error Invalid pattern\n>  #endif\n>  \n> -       vec3 rgb = yuv2rgb_matrix * (vec3(y, uv) - yuv2rgb_offset);\n> +       vec3 rgb = yuv2rgb_matrix * (yuv - yuv2rgb_offset);\n>  \n>         gl_FragColor = vec4(rgb, 1.0);\n>  }\n> diff --git a/src/qcam/assets/shader/YUV_3_planes.frag b/src/qcam/assets/shader/YUV_3_planes.frag\n> index e754129d74d1..8f788e90a6f8 100644\n> --- a/src/qcam/assets/shader/YUV_3_planes.frag\n> +++ b/src/qcam/assets/shader/YUV_3_planes.frag\n> @@ -30,7 +30,7 @@ void main(void)\n>         yuv.y = texture2D(tex_u, textureOut).r;\n>         yuv.z = texture2D(tex_v, textureOut).r;\n>  \n> -       vec3 rgb = yuv2rgb_matrix * (vec3(y, uv) - yuv2rgb_offset);\n> +       vec3 rgb = yuv2rgb_matrix * (yuv - yuv2rgb_offset);\n>  \n>         gl_FragColor = vec4(rgb, 1.0);\n>  }\n> -- \n> Regards,\n> \n> Laurent Pinchart\n>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id BA5D5BD16B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 30 Sep 2022 18:36:05 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 051F36283D;\n\tFri, 30 Sep 2022 20:36:05 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 8D1F261FB1\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 30 Sep 2022 20:36:03 +0200 (CEST)","from pendragon.ideasonboard.com\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 0A75A47C;\n\tFri, 30 Sep 2022 20:36:02 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1664562965;\n\tbh=B3jqkAID7f7IAgDqROLfDDbbzNN7bq6ONwtz/RbB73A=;\n\th=In-Reply-To:References:To:Date:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:\n\tFrom;\n\tb=FX+LwZSQknLnFh166+aIecgQwUbVW+X85pxLCo3jj7H4aBKSxjG56dTqEVB2nf10o\n\tfhPpNfu8Z3qnDSA3PS468NyCpiNU7Al/G75G7An8vOu7JnNpWiW3FVMLE6m+8jK0zB\n\tL6TNru4BisWv/xgnNo/hFHal84+cJgZV5WAxnXM+a8fLtVgevkOa47VVYPQeHj+ctZ\n\tW8B9BwT3DShGB+rB5yhaSIsmPxzVpYTp+T1hwb3PSMuvKWcnIqzcpYWkf43r8Qc1tp\n\tEaYIPSfGmeu+LGrGsFvHcjqagFRqVEYoCpei8h24PJvP8HaWb6GNolsrklgAyIqzeP\n\tqZnbgBaFIJHjQ==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1664562963;\n\tbh=B3jqkAID7f7IAgDqROLfDDbbzNN7bq6ONwtz/RbB73A=;\n\th=In-Reply-To:References:Subject:From:Cc:To:Date:From;\n\tb=PpKuHvrhhznvcxEWVh+22rrua7S6zWNG2k6NHFmTrxNLsB2LZAYfTXgfzwFNanCcv\n\t8Ehz9yQaLqKIeK2FKHODYnGHwjzpWOJPseeG8mwuyC1W1jdM0ZB3eI9rVRvYdhnXCC\n\tqqnNerH9pdccFSHHUcbf7Dp8rBo6kaq5Gy0KhU+o="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"PpKuHvrh\"; dkim-atps=neutral","Content-Type":"text/plain; charset=\"utf-8\"","MIME-Version":"1.0","Content-Transfer-Encoding":"quoted-printable","In-Reply-To":"<20220930165731.9063-1-laurent.pinchart@ideasonboard.com>","References":"<20220930165731.9063-1-laurent.pinchart@ideasonboard.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Date":"Fri, 30 Sep 2022 19:36:00 +0100","Message-ID":"<166456296027.3760285.8610904354392521726@Monstersaurus>","User-Agent":"alot/0.10","Subject":"Re: [libcamera-devel] [PATCH] qcam: Fix YUV planar fragment shaders","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","From":"Kieran Bingham via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":25252,"web_url":"https://patchwork.libcamera.org/comment/25252/","msgid":"<a1e55d9b-b9c8-b990-0fbc-0c038393b8f0@ideasonboard.com>","date":"2022-10-04T06:36:51","subject":"Re: [libcamera-devel] [PATCH] qcam: Fix YUV planar fragment shaders","submitter":{"id":86,"url":"https://patchwork.libcamera.org/api/people/86/","name":"Umang Jain","email":"umang.jain@ideasonboard.com"},"content":"Hello,\n\nOn 10/1/22 12:06 AM, Kieran Bingham via libcamera-devel wrote:\n> Quoting Laurent Pinchart (2022-09-30 17:57:31)\n>> Commit 251f0534b74b (\"qcam: viewfinder_gl: Take color space into account\n>> for YUV rendering\") introduced compilation failures in the YUV\n>> semi-planar and planar fragment shaders due to a bad copy & paste. Fix\n>> it.\n\nYikes, got missed in review :(\n>>\n>> Fixes: 251f0534b74b (\"qcam: viewfinder_gl: Take color space into account for YUV rendering\")\n>> Reported-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n>> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n> Wonderful, glorious GLES 30FPS returned to qcam on SGo2.\n> Thank you.\n>\n> Tested-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\nReviewed-by: Umang Jain <umang.jain@ideasonboard.com>\n\n>\n>> ---\n>> Kieran,\n>>\n>> This should fix the issue you have reported. I haven't tested the patch\n>> yet, could you give it a try ?\n>> ---\n>>   src/qcam/assets/shader/YUV_2_planes.frag | 2 +-\n>>   src/qcam/assets/shader/YUV_3_planes.frag | 2 +-\n>>   2 files changed, 2 insertions(+), 2 deletions(-)\n>>\n>> diff --git a/src/qcam/assets/shader/YUV_2_planes.frag b/src/qcam/assets/shader/YUV_2_planes.frag\n>> index da8dbcc5f801..1d5d1206248f 100644\n>> --- a/src/qcam/assets/shader/YUV_2_planes.frag\n>> +++ b/src/qcam/assets/shader/YUV_2_planes.frag\n>> @@ -36,7 +36,7 @@ void main(void)\n>>   #error Invalid pattern\n>>   #endif\n>>   \n>> -       vec3 rgb = yuv2rgb_matrix * (vec3(y, uv) - yuv2rgb_offset);\n>> +       vec3 rgb = yuv2rgb_matrix * (yuv - yuv2rgb_offset);\n>>   \n>>          gl_FragColor = vec4(rgb, 1.0);\n>>   }\n>> diff --git a/src/qcam/assets/shader/YUV_3_planes.frag b/src/qcam/assets/shader/YUV_3_planes.frag\n>> index e754129d74d1..8f788e90a6f8 100644\n>> --- a/src/qcam/assets/shader/YUV_3_planes.frag\n>> +++ b/src/qcam/assets/shader/YUV_3_planes.frag\n>> @@ -30,7 +30,7 @@ void main(void)\n>>          yuv.y = texture2D(tex_u, textureOut).r;\n>>          yuv.z = texture2D(tex_v, textureOut).r;\n>>   \n>> -       vec3 rgb = yuv2rgb_matrix * (vec3(y, uv) - yuv2rgb_offset);\n>> +       vec3 rgb = yuv2rgb_matrix * (yuv - yuv2rgb_offset);\n>>   \n>>          gl_FragColor = vec4(rgb, 1.0);\n>>   }\n>> -- \n>> Regards,\n>>\n>> Laurent Pinchart\n>>","headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id D0AFBBD16B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue,  4 Oct 2022 06:37:00 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 173F860A88;\n\tTue,  4 Oct 2022 08:37:00 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 284E1603F6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  4 Oct 2022 08:36:58 +0200 (CEST)","from [192.168.1.103] (unknown [103.251.226.94])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 7D3BC2D9;\n\tTue,  4 Oct 2022 08:36:56 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1664865420;\n\tbh=i7ZWVJGbPWE2a2BdlwFiVDONLq90PotI5ZGQxd3Ty20=;\n\th=Date:To:References:In-Reply-To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:\n\tFrom;\n\tb=vF0UF2nTPZzTZwTG2x6e0YgDBtsfv9KAwy/wyw41IYrXnI479WiefGcvJHLKO46bJ\n\tdjk8zzYojr6m9R4idpkYWulYvQN17Dd8K6TOv7z0+b6olQJv4hA3nmFgT65B/ohSj7\n\t42kkGq01BFbwaocyea6R+Wgoe1dfY6AbuGoHoRS8bY2eNW91omO3Ib3XZ+Y0cw60Qh\n\txIYrX/k19mYEFKUBCKY5isK+4oW3fDGJcMa8bHPiXdSGBGxQZA3Eap5wYufuHiAPh0\n\tdEqDkPuWXxGJXMpkY62WAdjwrCuR2ycvcs1bZwg8Mi4RkArIHGbBm4iHGezcl+tv1D\n\tgYInC4uijrB8w==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1664865417;\n\tbh=i7ZWVJGbPWE2a2BdlwFiVDONLq90PotI5ZGQxd3Ty20=;\n\th=Date:Subject:To:References:From:In-Reply-To:From;\n\tb=qdAmgbMY2wWCSuoC5a9T+FFc5rsIpA7nDRre2AHCYra1agdC5rdefe0L3sgLNzqon\n\trFfhY0Z7qG7FHYr8PA8gRGkRDHu+9law1F/fdWCPczeUCoNkRaBtbxMeHL4qKuwQZC\n\t6IkfKM8rwFtM4cRcsWzQRHXlxJFzJVkoSgRgprSQ="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"qdAmgbMY\"; dkim-atps=neutral","Message-ID":"<a1e55d9b-b9c8-b990-0fbc-0c038393b8f0@ideasonboard.com>","Date":"Tue, 4 Oct 2022 12:06:51 +0530","MIME-Version":"1.0","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101\n\tThunderbird/102.2.1","Content-Language":"en-US","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>,\n\tLaurent Pinchart <laurent.pinchart@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","References":"<20220930165731.9063-1-laurent.pinchart@ideasonboard.com>\n\t<166456296027.3760285.8610904354392521726@Monstersaurus>","In-Reply-To":"<166456296027.3760285.8610904354392521726@Monstersaurus>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","Subject":"Re: [libcamera-devel] [PATCH] qcam: Fix YUV planar fragment shaders","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","From":"Umang Jain via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"Umang Jain <umang.jain@ideasonboard.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]