From patchwork Sun Aug 24 00:48:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan O'Donoghue X-Patchwork-Id: 24210 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 0A2BCC32BB for ; Sun, 24 Aug 2025 00:49:35 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 7BD606932C; Sun, 24 Aug 2025 02:49:34 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="S5vMiQlX"; dkim-atps=neutral Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id B7E07692FB for ; Sun, 24 Aug 2025 02:49:00 +0200 (CEST) Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-45a1b0bd237so24685235e9.2 for ; Sat, 23 Aug 2025 17:49:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1755996540; x=1756601340; darn=lists.libcamera.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=p+mSSXAM4EsMOfaffp1veBC/N4dTalrnPCw/wGGa18w=; b=S5vMiQlX0u6akXIFSDy5OvMFeUPt8pFBe6A11euDYm+K/fq3A+kRfw2/pl3U9D3L8H OpkxIvQpgNWGZIYvSUMO4VSI2CepmR/KFtuYEGc3YOLpxdUTeW1RorIjeonlqEdLBbvf X02xg2a+xyD1HxVl410NkXr1Eov9jYrGMvyHW2tXqujhZ8lp9OgXC+WAYH/QMn8CLBl/ 9e06hGq4IKd7IzoXDYQGbZg+weTuMedX0NiCqUpvAaWmnxexJGoHVPugNg83kMiq5Gk6 PHFcBBa1E4sBE/ovpetmp0W0LoSdSnZ85nTpzTE2uQzL5N/idD66j6w40lO4ehvJ+8nD WpRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1755996540; x=1756601340; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=p+mSSXAM4EsMOfaffp1veBC/N4dTalrnPCw/wGGa18w=; b=w0iChuKE1UzNdtGHRqxYTeD7u8GZGCDKshFwtRE/Hw+KZ3ZYsnadDqaHQJMdmTKzlj BocSZ0jOc3O0LwEV3dLvznTryQDL1KMvY5N2D1RHi17nPu/C2AmcX3h7rgMGa+cnscf4 Zcz98WDXQyP2f39n+E+5/+9fIfcWFj9F7Ar6PmPr91Pd77KczJAQSqwgn0KeSBAek/rP M6J91Mcc26+ynIA3oEWud0qcYNyjeYrtJhvk4HX10fIsIaZLVgbe7gukMJzaV8T4KX5Z BQUWE52h4tA7vprMyeQgTqznCcRUfzqo/Atpc0Ar6Rdj4jT/dcWxHjSFYH3/ClkLP3Pk 1tig== X-Gm-Message-State: AOJu0YyrCX1+kiO8iZyMGPrNH6zSOySc3ABUvsz1sxB7efgCkAa5ufDp ttJu20S8Pk1OdHDc+KxwIgZugMqtGziYPHtbtodaHPn8u6sQNkasWKiP5eU8Gdb8/nNVxuPYTDI tFLExdyQ= X-Gm-Gg: ASbGncu5XznPRM8i2DNUjenZdNoLJL/pv00+T25irrzHMsDAXJ1v7+JpleXww/KzHQo qFIwMe1i+kWbRv04Hi6yw/sOX+e8crI0BUPoWOe6InHpvqN+4/gQCIvOQXcHVyXEiESdN+QKyNX 6FpDvE23RzVQ5EHeYToeiX4/wymq6mg+guuwNEXPA+QnNz01JcETwxwrFfMo8EAB2p31Tg8iIhm zHVsP1xQYE4/yZW1eCwmVWI5oXVc/tfvj4ySgm3YFgCpP1fzS1L8O6/OZGLjdeq+0RZ73bJQZlK 9zDd13W4I5yHbtY43evIAFvEjy2RwRs9bjn+3tv81HFZVVywQ1z8/f21MfY6OtcWj8WJRZ6QbzP NVex6FuxrPHiDWPL3JY+QaPd9XXzq9vpCFsN6IfzyTwsTXuc5DbLNXbfQJ1MydQbWfM6BRfooco SCr6FlVwPKF1bLy33yEnHp X-Google-Smtp-Source: AGHT+IEHWEcVZwGDKhKzapQqG3M6oOe/KsEYo6qMrWBtRKgREkilTufq3lDJoKFrl9/GbCJb35iavw== X-Received: by 2002:a05:600c:b95:b0:43d:fa59:af97 with SMTP id 5b1f17b1804b1-45b517d2f5cmr57733165e9.32.1755996540194; Sat, 23 Aug 2025 17:49:00 -0700 (PDT) Received: from [192.168.0.13] (188-141-3-146.dynamic.upc.ie. [188.141.3.146]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45b4e1d530esm69347225e9.0.2025.08.23.17.48.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 Aug 2025 17:48:59 -0700 (PDT) From: Bryan O'Donoghue Date: Sun, 24 Aug 2025 01:48:39 +0100 Subject: [PATCH v2 27/37] libcamera: shaders: Use highp not mediump for float precision MIME-Version: 1.0 Message-Id: <20250824-b4-v0-5-2-gpuisp-v2-a-v2-27-96f4576c814e@linaro.org> References: <20250824-b4-v0-5-2-gpuisp-v2-a-v2-0-96f4576c814e@linaro.org> In-Reply-To: <20250824-b4-v0-5-2-gpuisp-v2-a-v2-0-96f4576c814e@linaro.org> To: libcamera-devel@lists.libcamera.org Cc: Bryan O'Donoghue X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3421; i=bryan.odonoghue@linaro.org; h=from:subject:message-id; bh=mArKPdK06uVUTR5pGsztmhyPt1VhLbfZlNX0eWU6g3U=; b=owEBbQKS/ZANAwAKASJxO7Ohjcg6AcsmYgBoqmFhAAApkDQ2Iq7sjC20UqrAl0CpY2bu9CBIf SpEAjYbSseJAjMEAAEKAB0WIQTmk/sqq6Nt4Rerb7QicTuzoY3IOgUCaKphYQAKCRAicTuzoY3I OqJ2D/wPUOlHPqtIuPe674Q1VZtn9YpOFdNL7unOSqZyk83ZyFHtbW6pILTeMsFphHDo9ueoEwa UIghC5k8vnJfqFe7v3arnrCt07WTHFHFUgh7PDLwcGQCw4Wof8HlWIXfEBP+J0yw++v6J3sq4Pc j23E6N5l6AjF1kXc6tVIknf1arS+s3GPDDJmBbU73lKTIHj51wffBllppZbzHHDexweA+dtCOs6 xmqx/XAILtcLsecHaZUl3tq91nDrhZqSSnOzjID4l2fvpKPt5vlrFarn0UCxHCNEZ9rBKfjJt2U 9R/w5JuODE+ZKoq9mRsEFcRGk4L6vffSapygMA7NjNjj+hFaNS0mDi3W1EF6ZywUnt/le/95O8B hKstPO00gcRtxJglOBsyv5Z7S/XfUqxrmITYHmIM/6crv+3QjtWgKKbDWw+KgT55pHVmWaufkwq P31RD42jpI1kTD2CBcqkOyw2qpfOs/79UMLNCApUXPD45pLxIw6pUqlprr0ZnCsFfWZwKRftoPf y9MwQEifoEF1Pev0V+1sxcUgW/7WKfn52RyHMPXD0Z3YMC9OkT+ZePbjLun3nZwjdJ9FxMdb673 JIcuPsX/58YEYkn/NSGyrOwKl95fdDfgBQgHegCITEyMC4TIOhFZL8hNIOM7hJ+4MOAw7+wovkE KzDPEWFVEUPqJRw== X-Developer-Key: i=bryan.odonoghue@linaro.org; a=openpgp; fpr=E693FB2AABA36DE117AB6FB422713BB3A18DC83A X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" We get better sample resolution with highp instead of mediump. Signed-off-by: Bryan O'Donoghue --- include/libcamera/internal/shaders/RGB.frag | 2 +- include/libcamera/internal/shaders/YUV_2_planes.frag | 2 +- include/libcamera/internal/shaders/YUV_3_planes.frag | 2 +- include/libcamera/internal/shaders/YUV_packed.frag | 2 +- include/libcamera/internal/shaders/bayer_1x_packed.frag | 2 +- include/libcamera/internal/shaders/bayer_8.frag | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/libcamera/internal/shaders/RGB.frag b/include/libcamera/internal/shaders/RGB.frag index 4c374ac980958281506771d30584dc56f10735bb..7243958941cfed1e5e7f203173864e46ac07fed3 100644 --- a/include/libcamera/internal/shaders/RGB.frag +++ b/include/libcamera/internal/shaders/RGB.frag @@ -6,7 +6,7 @@ */ #ifdef GL_ES -precision mediump float; +precision highp float; #endif varying vec2 textureOut; diff --git a/include/libcamera/internal/shaders/YUV_2_planes.frag b/include/libcamera/internal/shaders/YUV_2_planes.frag index 1d5d1206248f3a53e5e0c93c3a3ce6eba73e4437..d286f1179f7b998dd2f9f0406a68c5b45cccddce 100644 --- a/include/libcamera/internal/shaders/YUV_2_planes.frag +++ b/include/libcamera/internal/shaders/YUV_2_planes.frag @@ -6,7 +6,7 @@ */ #ifdef GL_ES -precision mediump float; +precision highp float; #endif varying vec2 textureOut; diff --git a/include/libcamera/internal/shaders/YUV_3_planes.frag b/include/libcamera/internal/shaders/YUV_3_planes.frag index 8f788e90a6f86a584673c5706caaaf2bca25c97a..8e3e0b4a57039142d9741a0be8a6d71475d134a5 100644 --- a/include/libcamera/internal/shaders/YUV_3_planes.frag +++ b/include/libcamera/internal/shaders/YUV_3_planes.frag @@ -6,7 +6,7 @@ */ #ifdef GL_ES -precision mediump float; +precision highp float; #endif varying vec2 textureOut; diff --git a/include/libcamera/internal/shaders/YUV_packed.frag b/include/libcamera/internal/shaders/YUV_packed.frag index b9ef9d41beaebdbeb04901b51d77696e28f7c6b7..3c9e3e397ada3eea7e3e31f12559e2fd92bb5026 100644 --- a/include/libcamera/internal/shaders/YUV_packed.frag +++ b/include/libcamera/internal/shaders/YUV_packed.frag @@ -6,7 +6,7 @@ */ #ifdef GL_ES -precision mediump float; +precision highp float; #endif varying vec2 textureOut; diff --git a/include/libcamera/internal/shaders/bayer_1x_packed.frag b/include/libcamera/internal/shaders/bayer_1x_packed.frag index f53f5575802628d79c03c83a0565cee2d51429bd..19b13ad08b3a71e408774dbb8e75ca4e22d9ba8e 100644 --- a/include/libcamera/internal/shaders/bayer_1x_packed.frag +++ b/include/libcamera/internal/shaders/bayer_1x_packed.frag @@ -20,7 +20,7 @@ */ #ifdef GL_ES -precision mediump float; +precision highp float; #endif /* diff --git a/include/libcamera/internal/shaders/bayer_8.frag b/include/libcamera/internal/shaders/bayer_8.frag index 7e35ca88e7ff516e81b751382e4e3e463c2c36fa..aa7a1b00436ae15d2ed6af7d666441d20db6bb0b 100644 --- a/include/libcamera/internal/shaders/bayer_8.frag +++ b/include/libcamera/internal/shaders/bayer_8.frag @@ -16,7 +16,7 @@ Copyright (C) 2021, Linaro //Pixel Shader #ifdef GL_ES -precision mediump float; +precision highp float; #endif /** Monochrome RGBA or GL_LUMINANCE Bayer encoded texture.*/