[{"id":23899,"web_url":"https://patchwork.libcamera.org/comment/23899/","msgid":"<YtCusg5XKhPA5/Qo@pendragon.ideasonboard.com>","date":"2022-07-15T00:02:58","subject":"Re: [libcamera-devel] [PATCH 0/4] Add Demosaicing and Color\n\tProcessing control for rkisp1","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hello,\n\nCC'ing Naush and David.\n\nOn Mon, Jul 04, 2022 at 05:23:14PM +0200, Florian Sylvestre via libcamera-devel wrote:\n> Hello,\n> \n> This patch series adds support for two rkisp1 algorithms:\n>         - Demosaicing algorithm (patch 3/4)\n>         - Color Processing algorithm (patch 4/4)\n> Demosaicing algorithm is in charge of denoising and sharpness control.\n> ColorProcessing algorithm is in charge of brightness, contrast and saturation\n> control.\n> \n> Demosaicing and ColorProcessing algorithm are currently configurable from the\n> application by user controls.\n> So I add support for transfering user controls respectively in the algorithm\n> class (patch 1/4) and in the IPARkISP1 (patch 2/4).\n\nDavid, Naush, what do you think of this approach of dispatching the\nwhole ControlList to each algorithm, compared to the large switch-case\nin IPARPi::queueRequest() that calls member functions specific to each\nalgorithm ?\n\n> The series is based on top of \"[PATCH v4 12/12] ipa: rkisp1: Add support of\n> Black Level Correction tuning\"\n> \n> Florian Sylvestre (4):\n>   ipa: libipa: algorithm: Add queueRequest() to the Algorithm class\n>   ipa: rkisp1: Transfer queueRequest() call to each algorithm\n>   ipa: rkisp1: Add support of Demosaicing control\n>   ipa: rkisp1: Add support of ColorProcessing control\n> \n>  src/ipa/ipu3/module.h                         |   2 +-\n>  src/ipa/libipa/algorithm.cpp                  |  13 ++\n>  src/ipa/libipa/algorithm.h                    |   6 +\n>  src/ipa/libipa/module.cpp                     |   5 +\n>  src/ipa/libipa/module.h                       |   3 +-\n>  .../rkisp1/algorithms/color_processing.cpp    | 101 +++++++++\n>  src/ipa/rkisp1/algorithms/color_processing.h  |  38 ++++\n>  src/ipa/rkisp1/algorithms/demosaicing.cpp     | 208 ++++++++++++++++++\n>  src/ipa/rkisp1/algorithms/demosaicing.h       |  37 ++++\n>  src/ipa/rkisp1/algorithms/meson.build         |   2 +\n>  src/ipa/rkisp1/data/ov5640.yaml               |   2 +\n>  src/ipa/rkisp1/module.h                       |   2 +-\n>  src/ipa/rkisp1/rkisp1.cpp                     |   7 +-\n>  src/libcamera/pipeline/rkisp1/rkisp1.cpp      |  20 ++\n>  14 files changed, 441 insertions(+), 5 deletions(-)\n>  create mode 100644 src/ipa/rkisp1/algorithms/color_processing.cpp\n>  create mode 100644 src/ipa/rkisp1/algorithms/color_processing.h\n>  create mode 100644 src/ipa/rkisp1/algorithms/demosaicing.cpp\n>  create mode 100644 src/ipa/rkisp1/algorithms/demosaicing.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 64EDDBE173\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 15 Jul 2022 00:03:32 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id CBB3163312;\n\tFri, 15 Jul 2022 02:03:31 +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 27B4E60489\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 15 Jul 2022 02:03:30 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 81B8B9DA;\n\tFri, 15 Jul 2022 02:03:29 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1657843411;\n\tbh=+iGMg+wzR//rqwqrHcIev3kI4HbCc/XZXw4742mAes8=;\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:Cc:\n\tFrom;\n\tb=Bgfi7OVMnVJZ3Vw/kzbOnAuiDDNLjYmW0KsLUp/Imhj4olYlViowwQzP2zhRcuRUw\n\tInjyX45R4pHLfrwunY64xLGgl3mtFkCbHKXGHjNjWxCeu1cgRH4pqjjvmdFV1WDX2W\n\trAbpdxubmVtgz8R+jnAqBNawNqNffh0YmvHTHC3IqHXaHuepSO3AUhPOVztDR/9OvY\n\tKXStLBk3ZqcT1Aq67uoQVnnipMusEB2oR08m/vuEFfSQEtP28bQ2RZbG2Nk4G1f3dh\n\t+hqx12r8q29ki3s4YWCPubzJGMjgs/czJq4UwBLz7kUNCZKA4u+qGBxeBZ0r4QTVLf\n\t0nhMSxjikWJtg==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1657843409;\n\tbh=+iGMg+wzR//rqwqrHcIev3kI4HbCc/XZXw4742mAes8=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=ps8bmmeu6b98t/gMqs9utHFQ8YWDyT0oDVP8Bw2uUlkaAmSoQwYqQDzdQiYODX3gC\n\t3St+WEX7O7hs1igmKKyiz9A7ySK5otWtrCMNc3EWl9XsHga+ov9bon//HsQBY/odiR\n\tqV/HvSkjeX1iCYwlTCrI4drUH2li7pAqzKcItusM="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"ps8bmmeu\"; dkim-atps=neutral","Date":"Fri, 15 Jul 2022 03:02:58 +0300","To":"Florian Sylvestre <fsylvestre@baylibre.com>","Message-ID":"<YtCusg5XKhPA5/Qo@pendragon.ideasonboard.com>","References":"<20220704152318.221213-1-fsylvestre@baylibre.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<20220704152318.221213-1-fsylvestre@baylibre.com>","Subject":"Re: [libcamera-devel] [PATCH 0/4] Add Demosaicing and Color\n\tProcessing control for rkisp1","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":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera-devel@lists.libcamera.org","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":23907,"web_url":"https://patchwork.libcamera.org/comment/23907/","msgid":"<CAEmqJPp14A3yBcSfKatZxuvhkgxo2sx_60iS06kBG6LWax5AEQ@mail.gmail.com>","date":"2022-07-15T07:17:07","subject":"Re: [libcamera-devel] [PATCH 0/4] Add Demosaicing and Color\n\tProcessing control for rkisp1","submitter":{"id":34,"url":"https://patchwork.libcamera.org/api/people/34/","name":"Naushir Patuck","email":"naush@raspberrypi.com"},"content":"Hi everyone,\n\nOn Fri, 15 Jul 2022 at 01:03, Laurent Pinchart <\nlaurent.pinchart@ideasonboard.com> wrote:\n\n> Hello,\n>\n> CC'ing Naush and David.\n>\n> On Mon, Jul 04, 2022 at 05:23:14PM +0200, Florian Sylvestre via\n> libcamera-devel wrote:\n> > Hello,\n> >\n> > This patch series adds support for two rkisp1 algorithms:\n> >         - Demosaicing algorithm (patch 3/4)\n> >         - Color Processing algorithm (patch 4/4)\n> > Demosaicing algorithm is in charge of denoising and sharpness control.\n> > ColorProcessing algorithm is in charge of brightness, contrast and\n> saturation\n> > control.\n> >\n> > Demosaicing and ColorProcessing algorithm are currently configurable\n> from the\n> > application by user controls.\n> > So I add support for transfering user controls respectively in the\n> algorithm\n> > class (patch 1/4) and in the IPARkISP1 (patch 2/4).\n>\n> David, Naush, what do you think of this approach of dispatching the\n> whole ControlList to each algorithm, compared to the large switch-case\n> in IPARPi::queueRequest() that calls member functions specific to each\n> algorithm ?\n>\n\nI'm ok with this - in fact, it was always on my to-do list, but never got\nround to it.\nHowever, at least for the RPi IPA, we will still need a\nIPARPi::queueRequest() to\ndeal with certain controls.  Off the top of my head, FrameDurations will\nneed to\nbe handled by the IPA as various bits of calculations in the IPA need to\nknow\nthe limits.  It would require more refactoring and I must gather some\ncourage to move\nthis outside the IPA. But otherwise, pretty much all other control handling\ncould\nmove into the algorithms.\n\nRegards,\nNaush\n\n\n>\n> > The series is based on top of \"[PATCH v4 12/12] ipa: rkisp1: Add support\n> of\n> > Black Level Correction tuning\"\n> >\n> > Florian Sylvestre (4):\n> >   ipa: libipa: algorithm: Add queueRequest() to the Algorithm class\n> >   ipa: rkisp1: Transfer queueRequest() call to each algorithm\n> >   ipa: rkisp1: Add support of Demosaicing control\n> >   ipa: rkisp1: Add support of ColorProcessing control\n> >\n> >  src/ipa/ipu3/module.h                         |   2 +-\n> >  src/ipa/libipa/algorithm.cpp                  |  13 ++\n> >  src/ipa/libipa/algorithm.h                    |   6 +\n> >  src/ipa/libipa/module.cpp                     |   5 +\n> >  src/ipa/libipa/module.h                       |   3 +-\n> >  .../rkisp1/algorithms/color_processing.cpp    | 101 +++++++++\n> >  src/ipa/rkisp1/algorithms/color_processing.h  |  38 ++++\n> >  src/ipa/rkisp1/algorithms/demosaicing.cpp     | 208 ++++++++++++++++++\n> >  src/ipa/rkisp1/algorithms/demosaicing.h       |  37 ++++\n> >  src/ipa/rkisp1/algorithms/meson.build         |   2 +\n> >  src/ipa/rkisp1/data/ov5640.yaml               |   2 +\n> >  src/ipa/rkisp1/module.h                       |   2 +-\n> >  src/ipa/rkisp1/rkisp1.cpp                     |   7 +-\n> >  src/libcamera/pipeline/rkisp1/rkisp1.cpp      |  20 ++\n> >  14 files changed, 441 insertions(+), 5 deletions(-)\n> >  create mode 100644 src/ipa/rkisp1/algorithms/color_processing.cpp\n> >  create mode 100644 src/ipa/rkisp1/algorithms/color_processing.h\n> >  create mode 100644 src/ipa/rkisp1/algorithms/demosaicing.cpp\n> >  create mode 100644 src/ipa/rkisp1/algorithms/demosaicing.h\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 54B7CBD1F1\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 15 Jul 2022 07:17:26 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 93C7D63312;\n\tFri, 15 Jul 2022 09:17:25 +0200 (CEST)","from mail-lf1-x136.google.com (mail-lf1-x136.google.com\n\t[IPv6:2a00:1450:4864:20::136])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 2739C6330B\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 15 Jul 2022 09:17:24 +0200 (CEST)","by mail-lf1-x136.google.com with SMTP id o7so6434201lfq.9\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 15 Jul 2022 00:17:24 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1657869445;\n\tbh=dMbAbs7qxF+B5VmsNESbvxx5LHbfoNaCbYyiUXUzYEo=;\n\th=References:In-Reply-To:Date:To:Subject:List-Id:List-Unsubscribe:\n\tList-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:\n\tFrom;\n\tb=RLK5I9H+1+XWsoC7y7hwBny0clbhjyGEy8dDwpbt3UCQqhWX9kpoIhZOQ6nhgDdq0\n\trTZoLfG/vuN5olR0do212A10OCGkEdIpuhMoNyL5M88uUCP1LUHBTaAkOhN6otaCsn\n\tm5IHFAaaV+1zmBgWrHRRW7JWjUjGfUiisknRAghIA7ZsbqAydC6Py6mbsX4Dm9UobE\n\tEBgGAtiPCGbLhEu4Ssi/xEHQDGl9aBX3rTP9oNM6a7R29i5MWYbY4r07z8X9LRj9bi\n\tgfQ5LKJqnizgzbDrm+W0w/1D2di73aQwVXb7t9sKTfjU/7ma33jqv1esOV0U8DxsD/\n\ttKWG0J9oUnX+g==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=mime-version:references:in-reply-to:from:date:message-id:subject:to\n\t:cc; bh=RZILM+4xy9+j4N+bHR6p2jlnY4saJPueMUlJjwUFFUk=;\n\tb=jTq/7asR76947M2S2xZR14oQOnL2neeYXqPjJRu7QaKSRq13ZnY8LSJfUy9t2FJby7\n\tGJ66FFFnQ4Gfan7EtViltUgkbLMVqxb64AcyQ+9l+9neS5DJpjTVbfVjnKOCPMgnfJtm\n\tf1duXZj8lppumoPu+HV2LXdQ9Dr/KmGEHfZj6WvFUn0TboDoWZcmDD4U5rbg8u8IR8qa\n\tBL0kd7u5G2+2lAAu+uz8CItj2yMSsaEv2aa2iCZyg6txATWVURJ0zPtO0Buqo1UCVaku\n\ttsf/6hCH8pt82F0Vk2+iENUpx5hJL9Yf7yVCU9jAI2srr/5h+NLOHLFnyVlJhQ8xNke2\n\t7jbw=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"jTq/7asR\"; dkim-atps=neutral","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20210112;\n\th=x-gm-message-state:mime-version:references:in-reply-to:from:date\n\t:message-id:subject:to:cc;\n\tbh=RZILM+4xy9+j4N+bHR6p2jlnY4saJPueMUlJjwUFFUk=;\n\tb=pIv1XLFR0U3Wu+f9T8LYUyOzFnNDkwpQou0+6cyLSvvwZM6rsXLPqLVBaIXAOT3sf8\n\tJvwNb82Gop94kAe0ZKZZUe3wGKfJx32orF5UpK6PtuOP5SlJ2jOqfLV6ak0zbv9QFaCT\n\tPXnsFNBucpVeF8d5kaRbqklxytsZV3kwlt+o4T4ZxvV9P6QVUCOSSA2VIL6NdiKxwsBt\n\t1S5aFCcVWqMlmEzSCLuftb7HIaDAOQR5mTgwhxnIa/Y2F4au7EY8QRsKTtWEkMwuBE+D\n\tV+hQ8YchWoIrM1o/xMeHYbfx58IrERe9Xeu11mX3rrNFpo2kUI61MXapffaRAJTuAn94\n\tnC1Q==","X-Gm-Message-State":"AJIora+fdTCM73a4OijF3rIBi5WIILmIQ05ap6C+1oQYOTM2dATorrjG\n\tC4+ZwzLGui/7QmxgO+msepWb4z+YCt7wHfEXl2qdAA==","X-Google-Smtp-Source":"AGRyM1vyEKOP6+bmG1iXijC4yRWB43AZ7pPQRYXDyISBe6HqGvSVwM0MOVQDP9k3OvqBoICf9NQgNNSI0N978SMwSWs=","X-Received":"by 2002:a05:6512:1155:b0:48a:198f:5f76 with SMTP id\n\tm21-20020a056512115500b0048a198f5f76mr3556294lfg.604.1657869443389;\n\tFri, 15 Jul 2022 00:17:23 -0700 (PDT)","MIME-Version":"1.0","References":"<20220704152318.221213-1-fsylvestre@baylibre.com>\n\t<YtCusg5XKhPA5/Qo@pendragon.ideasonboard.com>","In-Reply-To":"<YtCusg5XKhPA5/Qo@pendragon.ideasonboard.com>","Date":"Fri, 15 Jul 2022 08:17:07 +0100","Message-ID":"<CAEmqJPp14A3yBcSfKatZxuvhkgxo2sx_60iS06kBG6LWax5AEQ@mail.gmail.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Content-Type":"multipart/alternative; boundary=\"00000000000041ee3705e3d2cf89\"","Subject":"Re: [libcamera-devel] [PATCH 0/4] Add Demosaicing and Color\n\tProcessing control for rkisp1","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":"Naushir Patuck via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Naushir Patuck <naush@raspberrypi.com>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}},{"id":23924,"web_url":"https://patchwork.libcamera.org/comment/23924/","msgid":"<YtE6m0A8rp0EpKYX@pendragon.ideasonboard.com>","date":"2022-07-15T09:59:55","subject":"Re: [libcamera-devel] [PATCH 0/4] Add Demosaicing and Color\n\tProcessing control for rkisp1","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Naush,\n\nOn Fri, Jul 15, 2022 at 08:17:07AM +0100, Naushir Patuck wrote:\n> On Fri, 15 Jul 2022 at 01:03, Laurent Pinchart wrote:\n> > On Mon, Jul 04, 2022 at 05:23:14PM +0200, Florian Sylvestre via libcamera-devel wrote:\n> > > Hello,\n> > >\n> > > This patch series adds support for two rkisp1 algorithms:\n> > >         - Demosaicing algorithm (patch 3/4)\n> > >         - Color Processing algorithm (patch 4/4)\n> > > Demosaicing algorithm is in charge of denoising and sharpness control.\n> > > ColorProcessing algorithm is in charge of brightness, contrast and saturation\n> > > control.\n> > >\n> > > Demosaicing and ColorProcessing algorithm are currently configurable from the\n> > > application by user controls.\n> > > So I add support for transfering user controls respectively in the algorithm\n> > > class (patch 1/4) and in the IPARkISP1 (patch 2/4).\n> >\n> > David, Naush, what do you think of this approach of dispatching the\n> > whole ControlList to each algorithm, compared to the large switch-case\n> > in IPARPi::queueRequest() that calls member functions specific to each\n> > algorithm ?\n> \n> I'm ok with this - in fact, it was always on my to-do list, but never got\n> round to it.\n\nI'm glad we think alike :-)\n\n> However, at least for the RPi IPA, we will still need a IPARPi::queueRequest() to\n> deal with certain controls.  Off the top of my head, FrameDurations will need to\n> be handled by the IPA as various bits of calculations in the IPA need to know\n> the limits.  It would require more refactoring and I must gather some courage to move\n> this outside the IPA. But otherwise, pretty much all other control handling could\n> move into the algorithms.\n\nThat's fine, the entry point will always be the queueRequest() function\nof the IPA module, which will dispatch to algorithms but can also\nperform additional centralized processing of some controls.\n\n> > > The series is based on top of \"[PATCH v4 12/12] ipa: rkisp1: Add support of\n> > > Black Level Correction tuning\"\n> > >\n> > > Florian Sylvestre (4):\n> > >   ipa: libipa: algorithm: Add queueRequest() to the Algorithm class\n> > >   ipa: rkisp1: Transfer queueRequest() call to each algorithm\n> > >   ipa: rkisp1: Add support of Demosaicing control\n> > >   ipa: rkisp1: Add support of ColorProcessing control\n> > >\n> > >  src/ipa/ipu3/module.h                         |   2 +-\n> > >  src/ipa/libipa/algorithm.cpp                  |  13 ++\n> > >  src/ipa/libipa/algorithm.h                    |   6 +\n> > >  src/ipa/libipa/module.cpp                     |   5 +\n> > >  src/ipa/libipa/module.h                       |   3 +-\n> > >  .../rkisp1/algorithms/color_processing.cpp    | 101 +++++++++\n> > >  src/ipa/rkisp1/algorithms/color_processing.h  |  38 ++++\n> > >  src/ipa/rkisp1/algorithms/demosaicing.cpp     | 208 ++++++++++++++++++\n> > >  src/ipa/rkisp1/algorithms/demosaicing.h       |  37 ++++\n> > >  src/ipa/rkisp1/algorithms/meson.build         |   2 +\n> > >  src/ipa/rkisp1/data/ov5640.yaml               |   2 +\n> > >  src/ipa/rkisp1/module.h                       |   2 +-\n> > >  src/ipa/rkisp1/rkisp1.cpp                     |   7 +-\n> > >  src/libcamera/pipeline/rkisp1/rkisp1.cpp      |  20 ++\n> > >  14 files changed, 441 insertions(+), 5 deletions(-)\n> > >  create mode 100644 src/ipa/rkisp1/algorithms/color_processing.cpp\n> > >  create mode 100644 src/ipa/rkisp1/algorithms/color_processing.h\n> > >  create mode 100644 src/ipa/rkisp1/algorithms/demosaicing.cpp\n> > >  create mode 100644 src/ipa/rkisp1/algorithms/demosaicing.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 7727FBD1F1\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 15 Jul 2022 10:00:29 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 3E38063312;\n\tFri, 15 Jul 2022 12:00:29 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 269636330A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 15 Jul 2022 12:00:27 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 95D9D993;\n\tFri, 15 Jul 2022 12:00:26 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1657879229;\n\tbh=oN+TPj3uTGUDBLed709sX1lddmEAWtJhZCWRiIp+7Q0=;\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:Cc:\n\tFrom;\n\tb=4ao2Im2VrI6HXraj5ULAzPRP07qkNz9jz4hCRdoNyy0Ws75Ek1qMPFfRb6F4eDntY\n\tpI5KEfm/3qyE6nbxaDl4wwQs4P6192Ho+t9bbICbb3QkdcYHK8yUHduX57OvwUi1gS\n\tccRSLLXb3IJfNp+qqzFz9ChFsYCglY/eEG6ZWlqmB/UGFVCZTZGjtmhw2gI44cMcCg\n\tZ5kCl3iPA6fSxRX568gAYGbFQcSITgQTh6p9xikakkaCDp8iODCcDZbRssJhvqPlWP\n\tSvawo1U/wKO976IS/EGkNXKnZbMtTnVMKzpHA+8ZkiF+pXsVDQ7gStFSLCEaiOqpJr\n\tO3otEnUdv25sw==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1657879226;\n\tbh=oN+TPj3uTGUDBLed709sX1lddmEAWtJhZCWRiIp+7Q0=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=BUT8qcLemCPDkTyVq0hJkUJhtJe4/l9IYC4Zal4gkoXP1fWqCd6D7h5a+98xAszA9\n\tBvg85H6UU+MUUiAFxbW/ggsIu1FINEMg2qtIlzdOX2ZHemav/f6ez20noICy2ituAw\n\t2AbVz+rFNumVPe3BcnEka/hTMfIZji+PCIfTGkmg="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"BUT8qcLe\"; dkim-atps=neutral","Date":"Fri, 15 Jul 2022 12:59:55 +0300","To":"Naushir Patuck <naush@raspberrypi.com>","Message-ID":"<YtE6m0A8rp0EpKYX@pendragon.ideasonboard.com>","References":"<20220704152318.221213-1-fsylvestre@baylibre.com>\n\t<YtCusg5XKhPA5/Qo@pendragon.ideasonboard.com>\n\t<CAEmqJPp14A3yBcSfKatZxuvhkgxo2sx_60iS06kBG6LWax5AEQ@mail.gmail.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Disposition":"inline","In-Reply-To":"<CAEmqJPp14A3yBcSfKatZxuvhkgxo2sx_60iS06kBG6LWax5AEQ@mail.gmail.com>","Subject":"Re: [libcamera-devel] [PATCH 0/4] Add Demosaicing and Color\n\tProcessing control for rkisp1","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":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Cc":"libcamera devel <libcamera-devel@lists.libcamera.org>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"}}]