[{"id":22407,"web_url":"https://patchwork.libcamera.org/comment/22407/","msgid":"<20220323133855.62439-1-jeanmichel.hautbois@ideasonboard.com>","date":"2022-03-23T13:38:56","subject":"[libcamera-devel] [RFC PATCH 0/3] RPi: Introduce AF algorithm","submitter":{"id":75,"url":"https://patchwork.libcamera.org/api/people/75/","name":"Jean-Michel Hautbois","email":"jeanmichel.hautbois@ideasonboard.com"},"content":"Hello !\n\nI proposed to add the lens controls with ancillary links support in a\nprevious series [1] but it seems more interesting to have it on top of\nan AF algorithm.\n\nThe first patch in this series introduces Kate's algorithm used by the\nIPU3IPA which is a contrast-based one. I adapted it a bit, as the\nstatistics on RPi are not the same, and I simplified it a bit, using\nonly one of the filters and all the regions (ie, it calculates a focus\non the scene, and not only on the center of this scene).\n\nThis is posted as a RFC, as it lacks a few things:\n- Kieran mentionned that the entityControls in the RPi pipeline handler\n  should be emplaced into a map using an enum. I tried to do it, but I\n  am no jinja2 expert, and it takes me too much time for something\n  supposed to be easy :-). Help appreciated here (;-) ;-)).\n- The algorithm is not using any controls while David proposed those in\n  [3]. I am planning to do it, at least to pass a region and send back\n  the focus lens position but -ENOTIME yet.\n\nDavid, Naushir, Laurent, Kieran, I am not sure about the copyrights and\nlicenses, please comment :-).\n\nThanks !\n\n---\n[1]: https://patchwork.libcamera.org/project/libcamera/list/?series=2969 \n[2]: https://patchwork.libcamera.org/project/libcamera/list/?series=2957\n\nJean-Michel Hautbois (3):\n  ipa: raspberrypi: Introduce an autofocus algorithm\n  libcamera: raspberrypi: Control the lens from pipeline\n  ipa: raspberrypi: Control the lens position\n\n include/libcamera/ipa/raspberrypi.mojom       |   1 +\n .../raspberrypi/controller/af_algorithm.hpp   |  20 ++\n src/ipa/raspberrypi/controller/af_status.h    |  31 +++\n src/ipa/raspberrypi/controller/focus_status.h |   3 +\n src/ipa/raspberrypi/controller/iob/af.cpp     | 231 ++++++++++++++++++\n src/ipa/raspberrypi/controller/iob/af.h       |  55 +++++\n src/ipa/raspberrypi/meson.build               |   1 +\n src/ipa/raspberrypi/raspberrypi.cpp           |  36 ++-\n .../pipeline/raspberrypi/raspberrypi.cpp      |  17 ++\n 9 files changed, 393 insertions(+), 2 deletions(-)\n create mode 100644 src/ipa/raspberrypi/controller/af_algorithm.hpp\n create mode 100644 src/ipa/raspberrypi/controller/af_status.h\n create mode 100644 src/ipa/raspberrypi/controller/iob/af.cpp\n create mode 100644 src/ipa/raspberrypi/controller/iob/af.h","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 9B5D8C0F1B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 23 Mar 2022 13:39:25 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id EA02A604DA;\n\tWed, 23 Mar 2022 14:39:24 +0100 (CET)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 16D71604C4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 23 Mar 2022 14:39:23 +0100 (CET)","from tatooine.ideasonboard.com (unknown\n\t[IPv6:2a01:e0a:169:7140:2e05:b10:1542:d51b])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id AE0CD9DE;\n\tWed, 23 Mar 2022 14:39:22 +0100 (CET)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1648042764;\n\tbh=cZekxKt5j1jpsTAV7ft/WEXijFQewettEX6VoJFp4+4=;\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:\n\tFrom;\n\tb=gJjX9LMrp5m9dh5HhaoCqrlYvvsczUCD8DqcGpmBbv62joMJZyCF8+gXDC89miwJH\n\tRqCFxAiVnBkEXmxBwDq1849R0Dxbp9e0cHeoekjqQjIwLf9ZKU4olJ5kq2LSacI2Ce\n\tqXo6Xt2fER5TzbifQuYFovuZjfi1dl0FN9vQVzFi7X58W2avEKiogsgSQJnG24g0fK\n\tiILNzSRIRbJa2oY/gBbxaRGSlv6KZjYBRF+LFG3V1g3efQbXkaUlWgdrg3L2lX2/OA\n\t4G8qKfRbVVbdVcElSojeR/HMIgDlsI38GDiGM5mE2Hu+TA5diHuZuwKEZKtvUgYmKj\n\tCw0rcs+pterWg==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1648042762;\n\tbh=cZekxKt5j1jpsTAV7ft/WEXijFQewettEX6VoJFp4+4=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=v+o0dUZ+34sGekGS8KmgNDTESoJYRSD7eFreztv06N+AnrzYWyYX65CWWCLyoLruA\n\txMlLZhKziqm3CCnarOAOjlH7e+ewtndYg/ah5waeY44SOKA3fmsghPl2aNbaS136cZ\n\tka4unI8wbgQ7NVVp8ksqHMkUR1PRubnDPMNG+cLA="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"v+o0dUZ+\"; dkim-atps=neutral","To":"libcamera-devel@lists.libcamera.org","Date":"Wed, 23 Mar 2022 14:38:56 +0100","Message-Id":"<20220323133855.62439-1-jeanmichel.hautbois@ideasonboard.com>","X-Mailer":"git-send-email 2.32.0","In-Reply-To":"<20220323133622.61593-1-jeanmichel.hautbois@ideasonboard.com>","References":"<20220323133622.61593-1-jeanmichel.hautbois@ideasonboard.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [RFC PATCH 0/3] RPi: Introduce AF algorithm","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":"Jean-Michel Hautbois via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":22412,"web_url":"https://patchwork.libcamera.org/comment/22412/","msgid":"<164804790913.2130830.1752277100511907267@Monstersaurus>","date":"2022-03-23T15:05:09","subject":"Re: [libcamera-devel] [RFC PATCH 0/3] RPi: Introduce AF algorithm","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi JM,\n\n\nQuoting Jean-Michel Hautbois via libcamera-devel (2022-03-23 13:36:19)\n> Hello !\n> \n\nI tried to test this, and manually added:\n\npi@earth:~/libcamera $ git diff\ndiff --git a/src/ipa/raspberrypi/data/imx519.json b/src/ipa/raspberrypi/data/imx519.json\nindex 2ce6a08c..471eadca 100644\n--- a/src/ipa/raspberrypi/data/imx519.json\n+++ b/src/ipa/raspberrypi/data/imx519.json\n@@ -6,6 +6,9 @@\n     \"rpi.dpc\":\n     {\n     },\n+    \"iob.af\":\n+    {\n+    },\n     \"rpi.lux\":\n     {\n         \"reference_shutter_speed\": 13841,\n\nBut I get:\n\n[0:28:09.864859899] [1784] INFO RPI raspberrypi.cpp:750 Sensor: /base/soc/i2c0mux/i2c@1/imx519@1a - Selected sensor format: 1280x720-SRGGB10_1X10 - Selected unicam format: 1280x720-pRAA\n[0:28:10.097112600] [1789] DEBUG IoBAf af.cpp:164  Previous step is 0 Current step is 30\nterminate called after throwing an instance of 'std::bad_any_cast'\n  what():  bad any_cast\nAborted\n\nIs there something obvious that I've missed to test?\n--\nKieran\n\n> I proposed to add the lens controls with ancillary links support in a\n> previous series [1] but it seems more interesting to have it on top of\n> an AF algorithm.\n> \n> The first patch in this series introduces Kate's algorithm used by the\n> IPU3IPA which is a contrast-based one. I adapted it a bit, as the\n> statistics on RPi are not the same, and I simplified it a bit, using\n> only one of the filters and all the regions (ie, it calculates a focus\n> on the scene, and not only on the center of this scene).\n> \n> This is posted as a RFC, as it lacks a few things:\n> - Kieran mentionned that the entityControls in the RPi pipeline handler\n>   should be emplaced into a map using an enum. I tried to do it, but I\n>   am no jinja2 expert, and it takes me too much time for something\n>   supposed to be easy :-). Help appreciated here (;-) ;-)).\n> - The algorithm is not using any controls while David proposed those in\n>   [3]. I am planning to do it, at least to pass a region and send back\n>   the focus lens position but -ENOTIME yet.\n> \n> David, Naushir, Laurent, Kieran, I am not sure about the copyrights and\n> licenses, please comment :-).\n> \n> Thanks !\n> \n> Jean-Michel Hautbois (3):\n>   ipa: raspberrypi: Introduce an autofocus algorithm\n>   libcamera: raspberrypi: Control the lens from pipeline\n>   ipa: raspberrypi: Control the lens position\n> \n>  include/libcamera/ipa/raspberrypi.mojom       |   1 +\n>  .../raspberrypi/controller/af_algorithm.hpp   |  20 ++\n>  src/ipa/raspberrypi/controller/af_status.h    |  31 +++\n>  src/ipa/raspberrypi/controller/focus_status.h |   3 +\n>  src/ipa/raspberrypi/controller/iob/af.cpp     | 231 ++++++++++++++++++\n>  src/ipa/raspberrypi/controller/iob/af.h       |  55 +++++\n>  src/ipa/raspberrypi/meson.build               |   1 +\n>  src/ipa/raspberrypi/raspberrypi.cpp           |  36 ++-\n>  .../pipeline/raspberrypi/raspberrypi.cpp      |  17 ++\n>  9 files changed, 393 insertions(+), 2 deletions(-)\n>  create mode 100644 src/ipa/raspberrypi/controller/af_algorithm.hpp\n>  create mode 100644 src/ipa/raspberrypi/controller/af_status.h\n>  create mode 100644 src/ipa/raspberrypi/controller/iob/af.cpp\n>  create mode 100644 src/ipa/raspberrypi/controller/iob/af.h\n> \n> -- \n> 2.32.0\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 E8730C0F1B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 23 Mar 2022 15:05:12 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 4C875604DC;\n\tWed, 23 Mar 2022 16:05:12 +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 5A685604C4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 23 Mar 2022 16:05:11 +0100 (CET)","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 E1F2C9DE;\n\tWed, 23 Mar 2022 16:05:10 +0100 (CET)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1648047912;\n\tbh=IZMd6phfoq3JOulfwTmsmzyTI0waFbInfn1UeMgbOC0=;\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=zr5V+/yjSMSkmTasBJWCGhuIqxzLphUjRgoz99r0IkOISWhFgeP3XuhtTVuleNYkk\n\twX5sxzOV6xnZodcNjQqffPhEaqbHZhKo+D9OD2xBhcTEz4Hs1bQEga8E+G50dsRevc\n\tNu98DgDJscJPEahzlpFR3yI7Og2LoIcDfl1VoLSZ0Mq5vOjCyjq0+0orSrDc1fIdn4\n\tXRJZZg/Tt02p2EyTF4gSeFvheamawKVf732TNrkttd1r0GTQtgsx/Q+R9cjleWwlCA\n\tpEVAKYslNMY6wIR3lilfYL+QHQqLcX4+1a0xVTo33vBXyF6NWKcsB/xVmm5R04zQ9y\n\thnGloTUYdxp6g==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1648047911;\n\tbh=IZMd6phfoq3JOulfwTmsmzyTI0waFbInfn1UeMgbOC0=;\n\th=In-Reply-To:References:Subject:From:To:Date:From;\n\tb=ianOGKT4BaD2yTZe8H4rcJtPMIw2A40u5KeLK0azCdN4YYcnpBWqvI6KelMjBriTB\n\tr6Sx4m+UKFtIedabrrRkciQxttSLpHZQi2wJ0M/60bwxmfjP9uAnovmg15/UYooV/W\n\tMuYETF7MwXqyFIPeGnO3TI5l+NfztfdmUFgC4buk="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"ianOGKT4\"; dkim-atps=neutral","Content-Type":"text/plain; charset=\"utf-8\"","MIME-Version":"1.0","Content-Transfer-Encoding":"quoted-printable","In-Reply-To":"<20220323133622.61593-1-jeanmichel.hautbois@ideasonboard.com>","References":"<20220323133622.61593-1-jeanmichel.hautbois@ideasonboard.com>","To":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","Date":"Wed, 23 Mar 2022 15:05:09 +0000","Message-ID":"<164804790913.2130830.1752277100511907267@Monstersaurus>","User-Agent":"alot/0.10","Subject":"Re: [libcamera-devel] [RFC PATCH 0/3] RPi: Introduce AF algorithm","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":22414,"web_url":"https://patchwork.libcamera.org/comment/22414/","msgid":"<05f1e465-886f-e91f-c082-f62f14450ada@ideasonboard.com>","date":"2022-03-23T15:34:55","subject":"Re: [libcamera-devel] [RFC PATCH 0/3] RPi: Introduce AF algorithm","submitter":{"id":75,"url":"https://patchwork.libcamera.org/api/people/75/","name":"Jean-Michel Hautbois","email":"jeanmichel.hautbois@ideasonboard.com"},"content":"Hi Kieran,\n\nOn 23/03/2022 16:05, Kieran Bingham wrote:\n> Hi JM,\n> \n> \n> Quoting Jean-Michel Hautbois via libcamera-devel (2022-03-23 13:36:19)\n>> Hello !\n>>\n> \n> I tried to test this, and manually added:\n> \n> pi@earth:~/libcamera $ git diff\n> diff --git a/src/ipa/raspberrypi/data/imx519.json b/src/ipa/raspberrypi/data/imx519.json\n> index 2ce6a08c..471eadca 100644\n> --- a/src/ipa/raspberrypi/data/imx519.json\n> +++ b/src/ipa/raspberrypi/data/imx519.json\n> @@ -6,6 +6,9 @@\n>       \"rpi.dpc\":\n>       {\n>       },\n> +    \"iob.af\":\n> +    {\n> +    },\n>       \"rpi.lux\":\n>       {\n>           \"reference_shutter_speed\": 13841,\n> \n> But I get:\n> \n> [0:28:09.864859899] [1784] INFO RPI raspberrypi.cpp:750 Sensor: /base/soc/i2c0mux/i2c@1/imx519@1a - Selected sensor format: 1280x720-SRGGB10_1X10 - Selected unicam format: 1280x720-pRAA\n> [0:28:10.097112600] [1789] DEBUG IoBAf af.cpp:164  Previous step is 0 Current step is 30\n> terminate called after throwing an instance of 'std::bad_any_cast'\n>    what():  bad any_cast\n> Aborted\n> \n> Is there something obvious that I've missed to test?\n\nNo, there is something I did not test ;-).\nI think (need to try before sending next time) that I missed:\ndiff --git a/src/ipa/raspberrypi/raspberrypi.cpp \nb/src/ipa/raspberrypi/raspberrypi.cpp\nindex 2e862f37..68075985 100644\n--- a/src/ipa/raspberrypi/raspberrypi.cpp\n+++ b/src/ipa/raspberrypi/raspberrypi.cpp\n@@ -30,6 +30,7 @@\n\n  #include \"libcamera/internal/mapped_framebuffer.h\"\n\n+#include \"af_status.h\"\n  #include \"agc_algorithm.hpp\"\n  #include \"agc_status.h\"\n  #include \"alsc_status.h\"\n\n> --\n> Kieran\n> \n>> I proposed to add the lens controls with ancillary links support in a\n>> previous series [1] but it seems more interesting to have it on top of\n>> an AF algorithm.\n>>\n>> The first patch in this series introduces Kate's algorithm used by the\n>> IPU3IPA which is a contrast-based one. I adapted it a bit, as the\n>> statistics on RPi are not the same, and I simplified it a bit, using\n>> only one of the filters and all the regions (ie, it calculates a focus\n>> on the scene, and not only on the center of this scene).\n>>\n>> This is posted as a RFC, as it lacks a few things:\n>> - Kieran mentionned that the entityControls in the RPi pipeline handler\n>>    should be emplaced into a map using an enum. I tried to do it, but I\n>>    am no jinja2 expert, and it takes me too much time for something\n>>    supposed to be easy :-). Help appreciated here (;-) ;-)).\n>> - The algorithm is not using any controls while David proposed those in\n>>    [3]. I am planning to do it, at least to pass a region and send back\n>>    the focus lens position but -ENOTIME yet.\n>>\n>> David, Naushir, Laurent, Kieran, I am not sure about the copyrights and\n>> licenses, please comment :-).\n>>\n>> Thanks !\n>>\n>> Jean-Michel Hautbois (3):\n>>    ipa: raspberrypi: Introduce an autofocus algorithm\n>>    libcamera: raspberrypi: Control the lens from pipeline\n>>    ipa: raspberrypi: Control the lens position\n>>\n>>   include/libcamera/ipa/raspberrypi.mojom       |   1 +\n>>   .../raspberrypi/controller/af_algorithm.hpp   |  20 ++\n>>   src/ipa/raspberrypi/controller/af_status.h    |  31 +++\n>>   src/ipa/raspberrypi/controller/focus_status.h |   3 +\n>>   src/ipa/raspberrypi/controller/iob/af.cpp     | 231 ++++++++++++++++++\n>>   src/ipa/raspberrypi/controller/iob/af.h       |  55 +++++\n>>   src/ipa/raspberrypi/meson.build               |   1 +\n>>   src/ipa/raspberrypi/raspberrypi.cpp           |  36 ++-\n>>   .../pipeline/raspberrypi/raspberrypi.cpp      |  17 ++\n>>   9 files changed, 393 insertions(+), 2 deletions(-)\n>>   create mode 100644 src/ipa/raspberrypi/controller/af_algorithm.hpp\n>>   create mode 100644 src/ipa/raspberrypi/controller/af_status.h\n>>   create mode 100644 src/ipa/raspberrypi/controller/iob/af.cpp\n>>   create mode 100644 src/ipa/raspberrypi/controller/iob/af.h\n>>\n>> -- \n>> 2.32.0\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 C736EC0F1B\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 23 Mar 2022 15:35:00 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 1526C604C6;\n\tWed, 23 Mar 2022 16:35:00 +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 274F2604C4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 23 Mar 2022 16:34:58 +0100 (CET)","from [IPV6:2a01:e0a:169:7140:2e05:b10:1542:d51b] (unknown\n\t[IPv6:2a01:e0a:169:7140:2e05:b10:1542:d51b])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id B3B719DE;\n\tWed, 23 Mar 2022 16:34:57 +0100 (CET)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1648049700;\n\tbh=/WH6MJzngZgyLHvna1zzlKh/nWQi12Ym4t1k4ASYV6E=;\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=Wt9oHvyI3qTXT33hE8iKjf2vFd617GKeysljY8pe9tU8FSkiVh3bM0LXWIazow71v\n\tOElqM4UmI34Vax6d0bojNGvSZBWt1j4e66lDAa6m+Ina4kCgpcefP8LuQsNXKqeQjp\n\taplyEQf2NeKxHfeBwIGLzmImxREOfvxUMpbGvMuJYziPj/UJv59xXazAHHfxqD918h\n\tsW+lqpZt9xdyuLwofHUi+7ci1rni+x2pYZnNqz66g6pm+CyZMjK7oaaaut/cnfaS+W\n\tIIwONvIbxcT3njhC1ps97RiLAvQ2zlK7xXpfgW6R1Qsx7PeTDH23H1v+ot9DLHKduC\n\txa0d0mTMLyVng==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1648049697;\n\tbh=/WH6MJzngZgyLHvna1zzlKh/nWQi12Ym4t1k4ASYV6E=;\n\th=Date:Subject:To:References:From:In-Reply-To:From;\n\tb=O5/JdL+AlmF0DTBd1f3GATi6eH5cx2vC9cBOn4RqqkVvIKrgq+NMNJTF1963l7T5L\n\tooW0dcN61ittRqslXL0E5x1myM0MaKz6HHGWGbSLmA6uSewiNOPVR+7nMRIP/Bchz1\n\tld+6fvpComrr+S4g7NBNBFbn+o8CTY2d4e8dV610="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"O5/JdL+A\"; dkim-atps=neutral","Message-ID":"<05f1e465-886f-e91f-c082-f62f14450ada@ideasonboard.com>","Date":"Wed, 23 Mar 2022 16:34:55 +0100","MIME-Version":"1.0","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101\n\tThunderbird/91.5.0","Content-Language":"en-US","To":"Kieran Bingham <kieran.bingham@ideasonboard.com>,\n\tlibcamera-devel@lists.libcamera.org","References":"<20220323133622.61593-1-jeanmichel.hautbois@ideasonboard.com>\n\t<164804790913.2130830.1752277100511907267@Monstersaurus>","In-Reply-To":"<164804790913.2130830.1752277100511907267@Monstersaurus>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"7bit","Subject":"Re: [libcamera-devel] [RFC PATCH 0/3] RPi: Introduce AF algorithm","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":"Jean-Michel Hautbois via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]