{"id":19212,"url":"https://patchwork.libcamera.org/api/1.1/patches/19212/?format=json","web_url":"https://patchwork.libcamera.org/patch/19212/","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":"<20231114102122.19712-4-jacopo.mondi@ideasonboard.com>","date":"2023-11-14T10:21:22","name":"[libcamera-devel,3/3] ipa: rpi: vc4: Add OV64A40 tuning files","commit_ref":null,"pull_url":null,"state":"superseded","archived":false,"hash":"75a5366613b1be9b32ca90d9d480ae230a30cc95","submitter":{"id":143,"url":"https://patchwork.libcamera.org/api/1.1/people/143/?format=json","name":"Jacopo Mondi","email":"jacopo.mondi@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/19212/mbox/","series":[{"id":4074,"url":"https://patchwork.libcamera.org/api/1.1/series/4074/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4074","date":"2023-11-14T10:21:19","name":"ipa: rpi: vc4: Add support for Arducam OV64A40","version":1,"mbox":"https://patchwork.libcamera.org/series/4074/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/19212/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/19212/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 D8E09C32B6\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 14 Nov 2023 10:21:41 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 1811C629BE;\n\tTue, 14 Nov 2023 11:21:40 +0100 (CET)","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 E8B31629BD\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 14 Nov 2023 11:21:36 +0100 (CET)","from localhost.localdomain (93-61-96-190.ip145.fastwebnet.it\n\t[93.61.96.190])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 3A137EBA;\n\tTue, 14 Nov 2023 11:21:11 +0100 (CET)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1699957300;\n\tbh=HaQJJzchnAgLiPXVNIC9SxWObnk+OYU5PcV09QP0Ygs=;\n\th=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=PIdY2n4txZL9OVD1ob31BxLnX2tTgh3q/Vd5qLAQmwN1KoSqjOeLpfa4JU1P3h4z6\n\tHEmub5gOzz+TkjrXWGvqPjnvDSm2W6JVMUUB4V0NT8N53JPUqNG2kSh0X8Eo4AbTyb\n\tMRbpoVDRY/LXDyiPG+axAX7R3ggeP0SdGMxX0rJZbmawc5q1Ne1ziFR9eAsCkCZnba\n\tITncaAx8k5dCG34UpdYYF3q8GKuNJ5n925G/w73lvrVLYDPrxFocqtZN3aX01DxBKY\n\tU+lWTwesbuj8P3FGtFmWmCPxl9f7+xtAB2WCgQWzU09ZGhPYqygePAjHVWyOs5G1RN\n\tc+617Y2o//4ZA==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1699957271;\n\tbh=HaQJJzchnAgLiPXVNIC9SxWObnk+OYU5PcV09QP0Ygs=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=mQ0oQyZKAh6KwCAyCkQYm4SknqXixV7l1hPesahJvfVZFrKbjxN5rMeof7O6FP8Oh\n\tuvaz5g913OYsl8Xt3g1QXdoxFw292M6Hh+vLS/RjBp2Q12T+ewyCn13eEfYtOA0blk\n\tdHOUwlF1C6/aLYpjlP6+CN4gedQ5WtqfDq63VkJY="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"mQ0oQyZK\"; dkim-atps=neutral","To":"libcamera-devel@lists.libcamera.org","Date":"Tue, 14 Nov 2023 11:21:22 +0100","Message-ID":"<20231114102122.19712-4-jacopo.mondi@ideasonboard.com>","X-Mailer":"git-send-email 2.41.0","In-Reply-To":"<20231114102122.19712-1-jacopo.mondi@ideasonboard.com>","References":"<20231114102122.19712-1-jacopo.mondi@ideasonboard.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH 3/3] ipa: rpi: vc4: Add OV64A40 tuning\n\tfiles","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":"Jacopo Mondi via libcamera-devel <libcamera-devel@lists.libcamera.org>","Reply-To":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>","Cc":"Jacopo Mondi <jacopo.mondi@ideasonboard.com>, lee.jackson@arducam.com","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"From: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\nProvide the OV64A40 tuning files for the Arducam Omnivision camera\nmodule to operate on the VC4 ISP architecture on Raspberry Pi 4 and\nbelow.\n\nSigned-off-by: Lee Jackson <lee.jackson@arducam.com>\nSigned-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\nSigned-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>\n---\n src/ipa/rpi/vc4/data/meson.build  |   1 +\n src/ipa/rpi/vc4/data/ov64a40.json | 422 ++++++++++++++++++++++++++++++\n 2 files changed, 423 insertions(+)\n create mode 100644 src/ipa/rpi/vc4/data/ov64a40.json","diff":"diff --git a/src/ipa/rpi/vc4/data/meson.build b/src/ipa/rpi/vc4/data/meson.build\nindex bcf5658ba5d2..0bc79c43772f 100644\n--- a/src/ipa/rpi/vc4/data/meson.build\n+++ b/src/ipa/rpi/vc4/data/meson.build\n@@ -17,6 +17,7 @@ conf_files = files([\n     'imx708_wide_noir.json',\n     'ov5647.json',\n     'ov5647_noir.json',\n+    'ov64a40.json',\n     'ov9281_mono.json',\n     'se327m12.json',\n     'uncalibrated.json',\ndiff --git a/src/ipa/rpi/vc4/data/ov64a40.json b/src/ipa/rpi/vc4/data/ov64a40.json\nnew file mode 100644\nindex 000000000000..096f0b1e698f\n--- /dev/null\n+++ b/src/ipa/rpi/vc4/data/ov64a40.json\n@@ -0,0 +1,422 @@\n+{\n+    \"version\": 2.0,\n+    \"target\": \"bcm2835\",\n+    \"algorithms\": [\n+        {\n+            \"rpi.black_level\":\n+            {\n+                \"black_level\": 4096\n+            }\n+        },\n+        {\n+            \"rpi.dpc\": { }\n+        },\n+        {\n+            \"rpi.lux\":\n+            {\n+                \"reference_shutter_speed\": 17861,\n+                \"reference_gain\": 2.0,\n+                \"reference_aperture\": 1.0,\n+                \"reference_lux\": 1073,\n+                \"reference_Y\": 9022\n+            }\n+        },\n+        {\n+            \"rpi.noise\":\n+            {\n+                \"reference_constant\": 0,\n+                \"reference_slope\": 2.984\n+            }\n+        },\n+        {\n+            \"rpi.geq\":\n+            {\n+                \"offset\": 215,\n+                \"slope\": 0.01121\n+            }\n+        },\n+        {\n+            \"rpi.sdn\": { }\n+        },\n+        {\n+            \"rpi.awb\":\n+            {\n+                \"priors\": [\n+                    {\n+                        \"lux\": 0,\n+                        \"prior\":\n+                        [\n+                            2000, 1.0,\n+                            3000, 0.0,\n+                            13000, 0.0\n+                        ]\n+                    },\n+                    {\n+                        \"lux\": 800,\n+                        \"prior\":\n+                        [\n+                            2000, 0.0,\n+                            6000, 2.0,\n+                            13000, 2.0\n+                        ]\n+                    },\n+                    {\n+                        \"lux\": 1500,\n+                        \"prior\":\n+                        [\n+                            2000, 0.0,\n+                            4000, 1.0,\n+                            6000, 6.0,\n+                            6500, 7.0,\n+                            7000, 1.0,\n+                            13000, 1.0\n+                        ]\n+                    }\n+                ],\n+                \"modes\":\n+                {\n+                    \"auto\":\n+                    {\n+                        \"lo\": 2500,\n+                        \"hi\": 8000\n+                    },\n+                    \"incandescent\":\n+                    {\n+                        \"lo\": 2500,\n+                        \"hi\": 3000\n+                    },\n+                    \"tungsten\":\n+                    {\n+                        \"lo\": 3000,\n+                        \"hi\": 3500\n+                    },\n+                    \"fluorescent\":\n+                    {\n+                        \"lo\": 4000,\n+                        \"hi\": 4700\n+                    },\n+                    \"indoor\":\n+                    {\n+                        \"lo\": 3000,\n+                        \"hi\": 5000\n+                    },\n+                    \"daylight\":\n+                    {\n+                        \"lo\": 5500,\n+                        \"hi\": 6500\n+                    },\n+                },\n+                \"bayes\": 1,\n+                \"ct_curve\":\n+                [\n+                    2300.0, 1.0522, 0.4091,\n+                    2700.0, 0.7884, 0.4327,\n+                    3000.0, 0.7597, 0.4421,\n+                    4000.0, 0.5972, 0.5404,\n+                    4150.0, 0.5598, 0.5779,\n+                    6500.0, 0.4388, 0.7582\n+                ],\n+                \"sensitivity_r\": 1.0,\n+                \"sensitivity_b\": 1.0,\n+                \"transverse_pos\": 0.0558,\n+                \"transverse_neg\": 0.04278\n+            }\n+        },\n+        {\n+            \"rpi.agc\":\n+            {\n+                \"metering_modes\":\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+                    \"matrix\":\n+                    {\n+                        \"weights\":\n+                        [\n+                            1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1\n+                        ]\n+                    }\n+                },\n+                \"exposure_modes\":\n+                {\n+                    \"normal\":\n+                    {\n+                        \"shutter\": [ 100, 10000, 30000, 60000, 120000 ],\n+                        \"gain\": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]\n+                    },\n+                    \"short\":\n+                    {\n+                        \"shutter\": [ 100, 5000, 10000, 20000, 120000 ],\n+                        \"gain\": [ 1.0, 2.0, 4.0, 6.0, 6.0 ]\n+                    }\n+                },\n+                \"constraint_modes\":\n+                {\n+                    \"normal\": [\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+                    \"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.165,\n+                    10000, 0.17\n+                ]\n+            }\n+        },\n+        {\n+            \"rpi.alsc\":\n+            {\n+                \"omega\": 1.3,\n+                \"n_iter\": 100,\n+                \"luminance_strength\": 0.8,\n+                \"calibrations_Cr\": [\n+                    {\n+                        \"ct\": 6500,\n+                        \"table\":\n+                        [\n+                            2.437, 2.415, 2.392, 2.378, 2.369, 2.353, 2.344, 2.336, 2.329, 2.325, 2.325, 2.325, 2.333, 2.344, 2.366, 2.381,\n+                            2.434, 2.405, 2.386, 2.369, 2.361, 2.334, 2.314, 2.302, 2.295, 2.289, 2.289, 2.303, 2.327, 2.334, 2.356, 2.378,\n+                            2.434, 2.405, 2.385, 2.363, 2.334, 2.314, 2.289, 2.277, 2.269, 2.262, 2.262, 2.283, 2.303, 2.328, 2.352, 2.375,\n+                            2.434, 2.405, 2.385, 2.348, 2.315, 2.289, 2.277, 2.258, 2.251, 2.242, 2.249, 2.258, 2.283, 2.321, 2.352, 2.375,\n+                            2.434, 2.413, 2.385, 2.343, 2.311, 2.282, 2.258, 2.251, 2.229, 2.233, 2.242, 2.251, 2.281, 2.321, 2.356, 2.375,\n+                            2.437, 2.418, 2.388, 2.343, 2.311, 2.282, 2.251, 2.229, 2.221, 2.226, 2.233, 2.251, 2.281, 2.322, 2.361, 2.381,\n+                            2.444, 2.422, 2.393, 2.351, 2.314, 2.284, 2.251, 2.227, 2.221, 2.227, 2.234, 2.256, 2.287, 2.326, 2.366, 2.389,\n+                            2.445, 2.424, 2.395, 2.353, 2.316, 2.287, 2.266, 2.251, 2.228, 2.234, 2.251, 2.259, 2.289, 2.331, 2.371, 2.395,\n+                            2.445, 2.424, 2.399, 2.364, 2.329, 2.308, 2.287, 2.266, 2.259, 2.254, 2.259, 2.283, 2.304, 2.343, 2.375, 2.395,\n+                            2.445, 2.425, 2.407, 2.385, 2.364, 2.329, 2.308, 2.299, 2.291, 2.284, 2.284, 2.304, 2.335, 2.354, 2.381, 2.399,\n+                            2.449, 2.427, 2.418, 2.407, 2.385, 2.364, 2.349, 2.338, 2.333, 2.326, 2.326, 2.335, 2.354, 2.374, 2.389, 2.408,\n+                            2.458, 2.441, 2.427, 2.411, 2.403, 2.395, 2.391, 2.383, 2.375, 2.369, 2.369, 2.369, 2.369, 2.385, 2.408, 2.418\n+                        ]\n+                    }\n+                ],\n+                \"calibrations_Cb\": [\n+                    {\n+                        \"ct\": 6500,\n+                        \"table\":\n+                        [\n+                            1.297, 1.297, 1.289, 1.289, 1.289, 1.291, 1.293, 1.294, 1.294, 1.294, 1.294, 1.296, 1.298, 1.304, 1.312, 1.313,\n+                            1.297, 1.289, 1.286, 1.286, 1.287, 1.289, 1.292, 1.294, 1.294, 1.294, 1.294, 1.294, 1.296, 1.298, 1.306, 1.312,\n+                            1.289, 1.286, 1.283, 1.283, 1.285, 1.287, 1.291, 1.294, 1.294, 1.292, 1.291, 1.289, 1.293, 1.294, 1.298, 1.304,\n+                            1.283, 1.282, 1.279, 1.281, 1.282, 1.285, 1.287, 1.294, 1.294, 1.291, 1.289, 1.289, 1.289, 1.293, 1.294, 1.298,\n+                            1.281, 1.279, 1.279, 1.279, 1.281, 1.283, 1.287, 1.292, 1.292, 1.291, 1.291, 1.289, 1.289, 1.291, 1.294, 1.297,\n+                            1.279, 1.277, 1.277, 1.279, 1.281, 1.282, 1.286, 1.289, 1.291, 1.291, 1.291, 1.291, 1.289, 1.291, 1.293, 1.297,\n+                            1.277, 1.275, 1.275, 1.278, 1.279, 1.281, 1.284, 1.287, 1.289, 1.291, 1.291, 1.291, 1.289, 1.289, 1.292, 1.297,\n+                            1.277, 1.275, 1.274, 1.275, 1.277, 1.278, 1.279, 1.284, 1.285, 1.285, 1.286, 1.288, 1.289, 1.289, 1.292, 1.297,\n+                            1.277, 1.272, 1.272, 1.274, 1.274, 1.277, 1.279, 1.282, 1.284, 1.284, 1.285, 1.286, 1.288, 1.289, 1.292, 1.297,\n+                            1.277, 1.272, 1.272, 1.273, 1.274, 1.276, 1.279, 1.282, 1.284, 1.284, 1.286, 1.286, 1.288, 1.289, 1.293, 1.297,\n+                            1.279, 1.272, 1.271, 1.272, 1.274, 1.276, 1.279, 1.283, 1.284, 1.284, 1.285, 1.286, 1.288, 1.291, 1.294, 1.299,\n+                            1.281, 1.274, 1.271, 1.271, 1.273, 1.276, 1.278, 1.282, 1.284, 1.284, 1.285, 1.286, 1.286, 1.291, 1.295, 1.302\n+                        ]\n+                    }\n+                ],\n+                \"luminance_lut\":\n+                [\n+                    3.811, 3.611, 3.038, 2.632, 2.291, 2.044, 1.967, 1.957, 1.957, 1.957, 2.009, 2.222, 2.541, 2.926, 3.455, 3.652,\n+                    3.611, 3.135, 2.636, 2.343, 2.044, 1.846, 1.703, 1.626, 1.626, 1.671, 1.796, 1.983, 2.266, 2.549, 3.007, 3.455,\n+                    3.135, 2.781, 2.343, 2.044, 1.831, 1.554, 1.411, 1.337, 1.337, 1.379, 1.502, 1.749, 1.983, 2.266, 2.671, 3.007,\n+                    2.903, 2.538, 2.149, 1.831, 1.554, 1.401, 1.208, 1.145, 1.145, 1.183, 1.339, 1.502, 1.749, 2.072, 2.446, 2.801,\n+                    2.812, 2.389, 2.018, 1.684, 1.401, 1.208, 1.139, 1.028, 1.028, 1.109, 1.183, 1.339, 1.604, 1.939, 2.309, 2.723,\n+                    2.799, 2.317, 1.948, 1.606, 1.327, 1.139, 1.028, 1.019, 1.001, 1.021, 1.109, 1.272, 1.531, 1.869, 2.246, 2.717,\n+                    2.799, 2.317, 1.948, 1.606, 1.327, 1.139, 1.027, 1.006, 1.001, 1.007, 1.109, 1.272, 1.531, 1.869, 2.246, 2.717,\n+                    2.799, 2.372, 1.997, 1.661, 1.378, 1.184, 1.118, 1.019, 1.012, 1.103, 1.158, 1.326, 1.589, 1.926, 2.302, 2.717,\n+                    2.884, 2.507, 2.116, 1.795, 1.511, 1.361, 1.184, 1.118, 1.118, 1.158, 1.326, 1.461, 1.726, 2.056, 2.434, 2.799,\n+                    3.083, 2.738, 2.303, 1.989, 1.783, 1.511, 1.361, 1.291, 1.291, 1.337, 1.461, 1.726, 1.942, 2.251, 2.657, 2.999,\n+                    3.578, 3.083, 2.589, 2.303, 1.989, 1.783, 1.637, 1.563, 1.563, 1.613, 1.743, 1.942, 2.251, 2.537, 2.999, 3.492,\n+                    3.764, 3.578, 2.999, 2.583, 2.237, 1.986, 1.913, 1.905, 1.905, 1.905, 1.962, 2.196, 2.525, 2.932, 3.492, 3.659\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.ccm\":\n+            {\n+                \"ccms\": [\n+                    {\n+                        \"ct\": 2300,\n+                        \"ccm\":\n+                        [\n+                            1.77644, -0.14825, -0.62819,\n+                            -0.25816, 1.66348, -0.40532,\n+                            -0.21633, -1.95132, 3.16765\n+                        ]\n+                    },\n+                    {\n+                        \"ct\": 2700,\n+                        \"ccm\":\n+                        [\n+                            1.53605, 0.03047, -0.56652,\n+                            -0.27159, 1.78525, -0.51366,\n+                            -0.13581, -1.22128, 2.35709\n+                        ]\n+                    },\n+                    {\n+                        \"ct\": 3000,\n+                        \"ccm\":\n+                        [\n+                            1.72928, -0.18819, -0.54108,\n+                            -0.44398, 2.04756, -0.60358,\n+                            -0.13203, -0.94711, 2.07913\n+                        ]\n+                    },\n+                    {\n+                        \"ct\": 4000,\n+                        \"ccm\":\n+                        [\n+                            1.69895, -0.23055, -0.46841,\n+                            -0.33934, 1.80391, -0.46456,\n+                            -0.13902, -0.75385, 1.89287\n+                        ]\n+                    },\n+                    {\n+                        \"ct\": 4150,\n+                        \"ccm\":\n+                        [\n+                            2.08494, -0.68698, -0.39796,\n+                            -0.37928, 1.78795, -0.40867,\n+                            -0.11537, -0.74686, 1.86223\n+                        ]\n+                    },\n+                    {\n+                        \"ct\": 6500,\n+                        \"ccm\":\n+                        [\n+                            1.69813, -0.27304, -0.42509,\n+                            -0.23364, 1.87586, -0.64221,\n+                            -0.07587, -0.62348, 1.69935\n+                        ]\n+                    }\n+                ]\n+            }\n+        },\n+        {\n+            \"rpi.sharpen\": { }\n+        },\n+        {\n+            \"rpi.af\":\n+            {\n+                \"ranges\":\n+                {\n+                    \"normal\":\n+                    {\n+                        \"min\": 0.0,\n+                        \"max\": 12.0,\n+                        \"default\": 1.0\n+                    },\n+                    \"macro\":\n+                    {\n+                        \"min\": 3.0,\n+                        \"max\": 15.0,\n+                        \"default\": 4.0\n+                    }\n+                },\n+                \"speeds\":\n+                {\n+                    \"normal\":\n+                    {\n+                        \"step_coarse\": 1.0,\n+                        \"step_fine\": 0.25,\n+                        \"contrast_ratio\": 0.75,\n+                        \"pdaf_gain\": -0.02,\n+                        \"pdaf_squelch\": 0.125,\n+                        \"max_slew\": 2.0,\n+                        \"pdaf_frames\": 0,\n+                        \"dropout_frames\": 0,\n+                        \"step_frames\": 4\n+                    }\n+                },\n+                \"conf_epsilon\": 8,\n+                \"conf_thresh\": 16,\n+                \"conf_clip\": 512,\n+                \"skip_frames\": 5,\n+                \"map\": [ 0.0, 0, 15.0, 1023 ]\n+            }\n+        }\n+    ]\n+}\n\\ No newline at end of file\n","prefixes":["libcamera-devel","3/3"]}