{"id":22062,"url":"https://patchwork.libcamera.org/api/1.1/patches/22062/?format=json","web_url":"https://patchwork.libcamera.org/patch/22062/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20241124192950.542686-4-geoffrey.vl@gmail.com>","date":"2024-11-24T19:29:48","name":"[v3,3/5] ipa: raspberrypi: Add tuning file for IMX462 sensor","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"9bbd4c6809693172b822ff3793e15adff8e1e9ed","submitter":{"id":214,"url":"https://patchwork.libcamera.org/api/1.1/people/214/?format=json","name":"Geoffrey Van Landeghem","email":"geoffrey.vl@gmail.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/22062/mbox/","series":[{"id":4815,"url":"https://patchwork.libcamera.org/api/1.1/series/4815/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4815","date":"2024-11-24T19:29:45","name":"Add support for Sony IMX327 and IMX462 sensors","version":3,"mbox":"https://patchwork.libcamera.org/series/4815/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/22062/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/22062/checks/","tags":{},"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 14390C3309\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun, 24 Nov 2024 19:30:04 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 9BFC766001;\n\tSun, 24 Nov 2024 20:30:03 +0100 (CET)","from mail-wm1-x335.google.com (mail-wm1-x335.google.com\n\t[IPv6:2a00:1450:4864:20::335])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id E4F8C65FFD\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 24 Nov 2024 20:29:57 +0100 (CET)","by mail-wm1-x335.google.com with SMTP id\n\t5b1f17b1804b1-432d866f70fso34533225e9.2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 24 Nov 2024 11:29:57 -0800 (PST)","from localhost.localdomain\n\t(ptr-gh3gmp9ck9bx99mg7lb.18120a2.ip6.access.telenet.be.\n\t[2a02:1812:2512:400:400a:4d18:885b:f46f])\n\tby smtp.gmail.com with ESMTPSA id\n\t5b1f17b1804b1-433b463ab6csm169691645e9.35.2024.11.24.11.29.56\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tSun, 24 Nov 2024 11:29:56 -0800 (PST)"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"Cef5rEIw\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20230601; t=1732476597; x=1733081397;\n\tdarn=lists.libcamera.org; \n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:from:to:cc:subject:date\n\t:message-id:reply-to;\n\tbh=pO3WU8Pwyqk8wrEI3opMQFnQFAq6Yn4LVeyjx6+p3jM=;\n\tb=Cef5rEIwNfNpiYi9+lEfn8Opx0svLTFgoIAAF6KvQf95tco384PkO3t8A6RuiPTEvf\n\tEWsaDIMbDsXlwDxWtDNA2B77zmbBoquDOicjiFv7aSrxeRde2pvlBzXDdHcusHP1GkuX\n\tDqVyZY4SQgMa0T/TEnLAOKUZr0dubtbsBaGLFMl17x1zhrXisWCFZbkWg67jy4Uznf3f\n\tKJjAjAPczzJE3l6Nx6TLtZyEr9XWc/wwDNsb6Z2YyWDsHr1qh6UL67/U+zutYTB727EP\n\tn4HigOPoTH2U6imxceCZMVYb0+5XAmwjQtMN6XWsHxIdDtWVz2APKQzT7fnrb284Qg8V\n\t1o2w==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1732476597; x=1733081397;\n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n\t:subject:date:message-id:reply-to;\n\tbh=pO3WU8Pwyqk8wrEI3opMQFnQFAq6Yn4LVeyjx6+p3jM=;\n\tb=p8OHQdy1NB6C4inZotk0SR0kyrVHyrvQi7hoCflKF5vRLxcxCv+4pHSZDmp3iJ1v3m\n\tkHEOSraecmFY5pqA4J0QOxEl7KrvkMaLXuiNgGp7rgkqwHSyGNniyFfVYK9XzUpU3dpP\n\tEI3rvQDf53DFFT8B+qP+0wFT1YI5HCbao+n300hvhQLFMAvlgc524uHivkThZYruYe9G\n\tV4jlYkYoSb8dHVKU7G0/4tRKL6GaWRTX1ANndQJcimBix5JnqIIL1vGczO8BXitq9anR\n\t9l6R5ApUfqCH+Pl7JE367PwRfM6/yIPTNbzxJcIS154/KR45me1ZnUjQG7UkiUERD7Fk\n\tovpQ==","X-Gm-Message-State":"AOJu0YxL2t5xM72qZmqd1/rZoy87cy0nzSTh40FUXRPbn6bOeJgiDmj5\n\tdDqJJPkzBIBFy/uf9MQEG5ByX+1SaiZfToXED24pu2JYkdxncFGcWqz2PA==","X-Gm-Gg":"ASbGncs4XzUXzMHDzINvEqPnU0ei72YZmD5EYl7JG6RXiHb1zDe/cw9npB2TwYZIMyQ\n\tLCuv0UVX2uxfcvA3CC2CXgo0+10RIiRf0tbrpNodaXnVq0q7rMe42deCy4sU22QwXjXm/f8CFmj\n\tR+f+5SlDLf77QzwUqUJwCluevaYfHHGL5QE0S7m0LE2tgh8lYdyFafPGBfyxNDh+TNR49zEYB+X\n\toImj3HRucdL8AgTDn3gYTt4W1WOjGyw/D9usFQH45O6Q1iRsmnIbVTrqw5mdk6GZwx10c2YjITR\n\t2AjAGKjpii03ud/NZCakfXRWFwFXcKYxUPAMBF+znzOzxYDAqA5XhTo=","X-Google-Smtp-Source":"AGHT+IEpyEdut13V3jopaOIqPgbxRccrtxTkVMhNg7tKOXfyXwed+RiWuwZ66LdDzlTtXGIXuMHUuw==","X-Received":"by 2002:a05:600c:4f41:b0:431:5eeb:2214 with SMTP id\n\t5b1f17b1804b1-433ce4c2ad6mr78159605e9.33.1732476596797; \n\tSun, 24 Nov 2024 11:29:56 -0800 (PST)","From":"Geoffrey Van Landeghem <geoffrey.vl@gmail.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"Geoffrey Van Landeghem <geoffrey.vl@gmail.com>","Subject":"[PATCH v3 3/5] ipa: raspberrypi: Add tuning file for IMX462 sensor","Date":"Sun, 24 Nov 2024 20:29:48 +0100","Message-ID":"<20241124192950.542686-4-geoffrey.vl@gmail.com>","X-Mailer":"git-send-email 2.43.0","In-Reply-To":"<20241124192950.542686-1-geoffrey.vl@gmail.com>","References":"<20241124192950.542686-1-geoffrey.vl@gmail.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","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>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Add a default tuning file for Sony IMX462 sensor. This tuning file\nis a copy of the IMX290 and is added to make the IMX462 sensor\njust work without hassle. Note the extra description field to\nclarify this is just an interim tuning file untill someone\nprovides a proper one.\n\nSigned-off-by: Geoffrey Van Landeghem <geoffrey.vl@gmail.com>\n---\n src/ipa/rpi/vc4/data/imx462.json | 215 +++++++++++++++++++++++++++++++\n src/ipa/rpi/vc4/data/meson.build |   1 +\n 2 files changed, 216 insertions(+)\n create mode 100644 src/ipa/rpi/vc4/data/imx462.json","diff":"diff --git a/src/ipa/rpi/vc4/data/imx462.json b/src/ipa/rpi/vc4/data/imx462.json\nnew file mode 100644\nindex 00000000..40a56842\n--- /dev/null\n+++ b/src/ipa/rpi/vc4/data/imx462.json\n@@ -0,0 +1,215 @@\n+{\n+    \"version\": 2.0,\n+    \"target\": \"bcm2835\",\n+    \"description\": \"This is an interim tuning only. Please consider doing a more formal tuning for your application.\",\n+    \"algorithms\": [\n+        {\n+            \"rpi.black_level\":\n+            {\n+                \"black_level\": 3840\n+            }\n+        },\n+        {\n+            \"rpi.dpc\": { }\n+        },\n+        {\n+            \"rpi.lux\":\n+            {\n+                \"reference_shutter_speed\": 6813,\n+                \"reference_gain\": 1.0,\n+                \"reference_aperture\": 1.0,\n+                \"reference_lux\": 890,\n+                \"reference_Y\": 12900\n+            }\n+        },\n+        {\n+            \"rpi.noise\":\n+            {\n+                \"reference_constant\": 0,\n+                \"reference_slope\": 2.67\n+            }\n+        },\n+        {\n+            \"rpi.geq\":\n+            {\n+                \"offset\": 187,\n+                \"slope\": 0.00842\n+            }\n+        },\n+        {\n+            \"rpi.sdn\": { }\n+        },\n+        {\n+            \"rpi.awb\":\n+            {\n+                \"bayes\": 0\n+            }\n+        },\n+        {\n+            \"rpi.agc\":\n+            {\n+                \"speed\": 0.2,\n+                \"metering_modes\":\n+                {\n+                    \"matrix\":\n+                    {\n+                        \"weights\":\n+                        [\n+                            1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1\n+                        ]\n+                    },\n+                    \"centre-weighted\":\n+                    {\n+                        \"weights\":\n+                        [\n+                            3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, 0\n+                        ]\n+                    },\n+                    \"spot\":\n+                    {\n+                        \"weights\":\n+                        [\n+                            2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0\n+                        ]\n+                    }\n+                },\n+                \"exposure_modes\":\n+                {\n+                    \"normal\":\n+                    {\n+                        \"shutter\": [ 10, 30000, 60000 ],\n+                        \"gain\": [ 1.0, 2.0, 8.0 ]\n+                    },\n+                    \"short\":\n+                    {\n+                        \"shutter\": [ 10, 5000, 10000, 20000, 120000 ],\n+                        \"gain\": [ 1.0, 2.0, 4.0, 6.0, 8.0 ]\n+                    },\n+                    \"long\":\n+                    {\n+                        \"shutter\": [ 1000, 30000, 60000, 90000, 120000 ],\n+                        \"gain\": [ 1.0, 2.0, 4.0, 6.0, 12.0 ]\n+                    }\n+                },\n+                \"constraint_modes\":\n+                {\n+                    \"normal\": [  ],\n+                    \"highlight\": [\n+                        {\n+                            \"bound\": \"LOWER\",\n+                            \"q_lo\": 0.98,\n+                            \"q_hi\": 1.0,\n+                            \"y_target\":\n+                            [\n+                                0, 0.5,\n+                                1000, 0.5\n+                            ]\n+                        },\n+                        {\n+                            \"bound\": \"UPPER\",\n+                            \"q_lo\": 0.98,\n+                            \"q_hi\": 1.0,\n+                            \"y_target\":\n+                            [\n+                                0, 0.8,\n+                                1000, 0.8\n+                            ]\n+                        }\n+                    ]\n+                },\n+                \"y_target\":\n+                [\n+                    0, 0.16,\n+                    1000, 0.16,\n+                    10000, 0.16\n+                ]\n+            }\n+        },\n+        {\n+            \"rpi.alsc\":\n+            {\n+                \"omega\": 1.3,\n+                \"n_iter\": 100,\n+                \"luminance_strength\": 0.7,\n+                \"luminance_lut\":\n+                [\n+                    2.844, 2.349, 2.018, 1.775, 1.599, 1.466, 1.371, 1.321, 1.306, 1.316, 1.357, 1.439, 1.552, 1.705, 1.915, 2.221,\n+                    2.576, 2.151, 1.851, 1.639, 1.478, 1.358, 1.272, 1.231, 1.218, 1.226, 1.262, 1.335, 1.438, 1.571, 1.766, 2.067,\n+                    2.381, 2.005, 1.739, 1.545, 1.389, 1.278, 1.204, 1.166, 1.153, 1.161, 1.194, 1.263, 1.356, 1.489, 1.671, 1.943,\n+                    2.242, 1.899, 1.658, 1.481, 1.329, 1.225, 1.156, 1.113, 1.096, 1.107, 1.143, 1.201, 1.289, 1.423, 1.607, 1.861,\n+                    2.152, 1.831, 1.602, 1.436, 1.291, 1.193, 1.121, 1.069, 1.047, 1.062, 1.107, 1.166, 1.249, 1.384, 1.562, 1.801,\n+                    2.104, 1.795, 1.572, 1.407, 1.269, 1.174, 1.099, 1.041, 1.008, 1.029, 1.083, 1.146, 1.232, 1.364, 1.547, 1.766,\n+                    2.104, 1.796, 1.572, 1.403, 1.264, 1.171, 1.097, 1.036, 1.001, 1.025, 1.077, 1.142, 1.231, 1.363, 1.549, 1.766,\n+                    2.148, 1.827, 1.594, 1.413, 1.276, 1.184, 1.114, 1.062, 1.033, 1.049, 1.092, 1.153, 1.242, 1.383, 1.577, 1.795,\n+                    2.211, 1.881, 1.636, 1.455, 1.309, 1.214, 1.149, 1.104, 1.081, 1.089, 1.125, 1.184, 1.273, 1.423, 1.622, 1.846,\n+                    2.319, 1.958, 1.698, 1.516, 1.362, 1.262, 1.203, 1.156, 1.137, 1.142, 1.171, 1.229, 1.331, 1.484, 1.682, 1.933,\n+                    2.459, 2.072, 1.789, 1.594, 1.441, 1.331, 1.261, 1.219, 1.199, 1.205, 1.232, 1.301, 1.414, 1.571, 1.773, 2.052,\n+                    2.645, 2.206, 1.928, 1.728, 1.559, 1.451, 1.352, 1.301, 1.282, 1.289, 1.319, 1.395, 1.519, 1.685, 1.904, 2.227\n+                ],\n+                \"sigma\": 0.005,\n+                \"sigma_Cb\": 0.005\n+            }\n+        },\n+        {\n+            \"rpi.contrast\":\n+            {\n+                \"ce_enable\": 1,\n+                \"gamma_curve\":\n+                [\n+                    0, 0,\n+                    1024, 5040,\n+                    2048, 9338,\n+                    3072, 12356,\n+                    4096, 15312,\n+                    5120, 18051,\n+                    6144, 20790,\n+                    7168, 23193,\n+                    8192, 25744,\n+                    9216, 27942,\n+                    10240, 30035,\n+                    11264, 32005,\n+                    12288, 33975,\n+                    13312, 35815,\n+                    14336, 37600,\n+                    15360, 39168,\n+                    16384, 40642,\n+                    18432, 43379,\n+                    20480, 45749,\n+                    22528, 47753,\n+                    24576, 49621,\n+                    26624, 51253,\n+                    28672, 52698,\n+                    30720, 53796,\n+                    32768, 54876,\n+                    36864, 57012,\n+                    40960, 58656,\n+                    45056, 59954,\n+                    49152, 61183,\n+                    53248, 62355,\n+                    57344, 63419,\n+                    61440, 64476,\n+                    65535, 65535\n+                ]\n+            }\n+        },\n+        {\n+            \"rpi.sharpen\": { }\n+        },\n+        {\n+            \"rpi.ccm\":\n+            {\n+                \"ccms\": [\n+                    {\n+                        \"ct\": 3900,\n+                        \"ccm\":\n+                        [\n+                            1.54659, -0.17707, -0.36953,\n+                            -0.51471, 1.72733, -0.21262,\n+                            0.06667, -0.92279, 1.85612\n+                        ]\n+                    }\n+                ]\n+            }\n+        }\n+    ]\n+}\n\\ No newline at end of file\ndiff --git a/src/ipa/rpi/vc4/data/meson.build b/src/ipa/rpi/vc4/data/meson.build\nindex 8c34a1a5..6b4d443f 100644\n--- a/src/ipa/rpi/vc4/data/meson.build\n+++ b/src/ipa/rpi/vc4/data/meson.build\n@@ -8,6 +8,7 @@ conf_files = files([\n     'imx296.json',\n     'imx296_mono.json',\n     'imx378.json',\n+    'imx462.json',\n     'imx477.json',\n     'imx477_noir.json',\n     'imx477_scientific.json',\n","prefixes":["v3","3/5"]}