[{"id":24191,"web_url":"https://patchwork.libcamera.org/comment/24191/","msgid":"<CAEmqJPpxVdL0rBhFWMw+y6vLycX7GYLo5LXEbgCjdKaeuBZJVQ@mail.gmail.com>","date":"2022-07-27T13:37:15","subject":"Re: [libcamera-devel] [PATCH v7 00/14] Replace boost JSON parser\n\twith libyaml in Raspberry Pi IPA","submitter":{"id":34,"url":"https://patchwork.libcamera.org/api/people/34/","name":"Naushir Patuck","email":"naush@raspberrypi.com"},"content":"Hi Laurent,\n\nAdditionally for this series:\nTested-by: Naushir Patuck <naush@raspberrypi.com>\n\nNaush\n\n\nOn Wed, 27 Jul 2022 at 03:38, Laurent Pinchart <\nlaurent.pinchart@ideasonboard.com> wrote:\n\n> Hello,\n>\n> This patches series replaces the boost JSON parser with the YamlParser\n> implementation based on libyaml for the Raspberry Pi IPA module.\n>\n> Compared to v6 (posted by Naush), the main changes are\n>\n> - Rebase on top of \"[PATCH 00/17] Raspberry Pi IPA code refactor\"\n> - Addition of patch 01/14 that simplifies usage of the YamlObject::get()\n>   function\n> - Addition of patches 05/14 to 07/14 that prepare for error handling\n>   during tuning data read\n> - Propagation of errors in 08/14\n> - Addition of 13/14 and 14/14 (those are optional and could be merged\n>   separately)\n>\n> Florian Sylvestre (1):\n>   libcamera: yaml_parser: Add getList() function\n>\n> Laurent Pinchart (9):\n>   libcamera: yaml_parser: Replace ok flag to get() with std::optional\n>   test: yaml-parser: Test dictionary items ordering\n>   libcamera: yaml_parser: Preserve order of items in dictionary\n>   ipa: raspberrypi: Replace tabs with spaces in tuning data files\n>   ipa: raspberrypi: Return an error code from Algorithm::read()\n>   ipa: raspberrypi: Propagate errors from AGC metering tuning data read\n>   ipa: raspberrypi: Replace Fatal log by error propagation\n>   ipa: raspberrypi: Use YamlParser to replace dependency on boost\n>   ipa: raspberrypi: agc: Use YamlObject::getList()\n>\n> Naushir Patuck (4):\n>   ipa: raspberrypi: Introduce version 2.0 format for the camera tuning\n>     file\n>   utils: raspberrypi: ctt: Output version 2.0 format tuning files\n>   utils: raspberrypi: Add tuning file conversion script\n>   ipa: raspberrypi: Convert existing cameara tuning files to version 2.0\n>\n>  README.rst                                    |   6 -\n>  include/libcamera/internal/yaml_parser.h      |  62 +-\n>  src/ipa/raspberrypi/controller/algorithm.cpp  |   3 +-\n>  src/ipa/raspberrypi/controller/algorithm.h    |   6 +-\n>  src/ipa/raspberrypi/controller/controller.cpp |  79 +-\n>  src/ipa/raspberrypi/controller/controller.h   |   7 +-\n>  src/ipa/raspberrypi/controller/pwl.cpp        |  13 +-\n>  src/ipa/raspberrypi/controller/pwl.h          |   4 +-\n>  src/ipa/raspberrypi/controller/rpi/agc.cpp    | 220 +++--\n>  src/ipa/raspberrypi/controller/rpi/agc.h      |  10 +-\n>  src/ipa/raspberrypi/controller/rpi/alsc.cpp   | 149 +--\n>  src/ipa/raspberrypi/controller/rpi/alsc.h     |   2 +-\n>  src/ipa/raspberrypi/controller/rpi/awb.cpp    | 171 ++--\n>  src/ipa/raspberrypi/controller/rpi/awb.h      |   8 +-\n>  .../controller/rpi/black_level.cpp            |  13 +-\n>  .../raspberrypi/controller/rpi/black_level.h  |   2 +-\n>  src/ipa/raspberrypi/controller/rpi/ccm.cpp    |  65 +-\n>  src/ipa/raspberrypi/controller/rpi/ccm.h      |   4 +-\n>  .../raspberrypi/controller/rpi/contrast.cpp   |  28 +-\n>  src/ipa/raspberrypi/controller/rpi/contrast.h |   2 +-\n>  src/ipa/raspberrypi/controller/rpi/dpc.cpp    |  12 +-\n>  src/ipa/raspberrypi/controller/rpi/dpc.h      |   2 +-\n>  src/ipa/raspberrypi/controller/rpi/geq.cpp    |  22 +-\n>  src/ipa/raspberrypi/controller/rpi/geq.h      |   2 +-\n>  src/ipa/raspberrypi/controller/rpi/lux.cpp    |  31 +-\n>  src/ipa/raspberrypi/controller/rpi/lux.h      |   2 +-\n>  src/ipa/raspberrypi/controller/rpi/noise.cpp  |  15 +-\n>  src/ipa/raspberrypi/controller/rpi/noise.h    |   2 +-\n>  src/ipa/raspberrypi/controller/rpi/sdn.cpp    |   7 +-\n>  src/ipa/raspberrypi/controller/rpi/sdn.h      |   2 +-\n>  .../raspberrypi/controller/rpi/sharpen.cpp    |   9 +-\n>  src/ipa/raspberrypi/controller/rpi/sharpen.h  |   2 +-\n>  src/ipa/raspberrypi/data/imx219.json          | 824 ++++++++--------\n>  src/ipa/raspberrypi/data/imx219_noir.json     | 686 +++++++-------\n>  src/ipa/raspberrypi/data/imx290.json          | 326 ++++---\n>  src/ipa/raspberrypi/data/imx296.json          | 369 ++++----\n>  src/ipa/raspberrypi/data/imx378.json          | 677 ++++++++------\n>  src/ipa/raspberrypi/data/imx477.json          | 881 ++++++++++--------\n>  src/ipa/raspberrypi/data/imx477_noir.json     | 734 ++++++++-------\n>  src/ipa/raspberrypi/data/imx519.json          | 677 ++++++++------\n>  src/ipa/raspberrypi/data/ov5647.json          | 824 ++++++++--------\n>  src/ipa/raspberrypi/data/ov5647_noir.json     | 686 +++++++-------\n>  src/ipa/raspberrypi/data/ov9281.json          | 195 ++--\n>  src/ipa/raspberrypi/data/se327m12.json        | 683 ++++++++------\n>  src/ipa/raspberrypi/data/uncalibrated.json    | 180 ++--\n>  src/ipa/raspberrypi/meson.build               |   1 -\n>  src/ipa/raspberrypi/raspberrypi.cpp           |  10 +-\n>  src/libcamera/yaml_parser.cpp                 | 228 +++--\n>  test/yaml-parser.cpp                          |  94 +-\n>  utils/raspberrypi/ctt/convert_tuning.py       |  46 +\n>  utils/raspberrypi/ctt/ctt.py                  |  18 +-\n>  .../raspberrypi/ctt/ctt_pretty_print_json.py  | 188 ++--\n>  52 files changed, 5246 insertions(+), 4043 deletions(-)\n>  create mode 100755 utils/raspberrypi/ctt/convert_tuning.py\n>  mode change 100644 => 100755\n> utils/raspberrypi/ctt/ctt_pretty_print_json.py\n>\n> --\n> Regards,\n>\n> Laurent Pinchart\n>\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 11CC8BE173\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 27 Jul 2022 13:37:34 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7A4A96330E;\n\tWed, 27 Jul 2022 15:37:33 +0200 (CEST)","from mail-lj1-x232.google.com (mail-lj1-x232.google.com\n\t[IPv6:2a00:1450:4864:20::232])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 2150763309\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 27 Jul 2022 15:37:32 +0200 (CEST)","by mail-lj1-x232.google.com with SMTP id m9so19789075ljp.9\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 27 Jul 2022 06:37:32 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1658929053;\n\tbh=/2oMPSW3yPXbQZqc+PMlLUqRJVtwxY1dukC8kirTnOo=;\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=1SDs5Hp2Q/CUWyKRnhnYDaiw8O5lY/ZfOyqI7J8qwH4yHEPO9Ux/hT1dKxpR7HT2f\n\tQKRdCdsri5NNQrx7ANPXGv4E0OYluFAv+KlaZU3Ft5+POAFuZ9iLycbOPW8K+sN9x0\n\tseovL+SsKy3OLCJ11oBtE9gRZ3LMJyksr7ef1sG8aK6jK69nC3oorrOhOK3urs6mhK\n\tYpbqSC7yBoe1JeflPcZXFQgJwFSwaQg4zaeMRkz72dlQpq9l7HkJy0Lkm5U/3XUT78\n\t71pOiIf667b9OYWsmJhDQD/yx2oGz5JPN+bJ38znAHn61Z+6fg6sw/KAbwtRbuQmqO\n\tjSbilrfDkSdaw==","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=O+uXUEPc0ajUc3PYnErNcYjeXCv5jGmgaytQdYwbj38=;\n\tb=cdrmShAoLMDoMIvh99sCs1wp3g1zfV+J6yMkN8znqA70hWziukpCKqqlxzn161VrCt\n\tkTG9RaVvkU+Titev5WFDk5iW5hLvt9t7L/mF5VYEOjQkOM19yO7BXjHwfTCIDF65Papt\n\tLHpipXg1D/Zo06zFZES0yVKJWjLI2xOmcupPgzgishRxM0MJCxlW3zFRuUqJz84OlpYT\n\tD6xTt2gjyhx12CIXGSKZZhk0zZzZ6S3fepqaN0Q+kDdNH7HXBH8e++vfxHFJ0oSjBCdA\n\tnhdp01GF2sSI2WiMWrmWXWiqGlCAlJAEkGtOTSh+sogaC6ToBH5mFBHdp6/Qk2YBEosa\n\t4OsA=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"cdrmShAo\"; 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=O+uXUEPc0ajUc3PYnErNcYjeXCv5jGmgaytQdYwbj38=;\n\tb=N8DNdvGjf/QEOxLFTZOrBhvWnhv+pYSJXvj63zE5vEmHQdDUVg97blHWCNRU2r1fLO\n\tcfu162EdKX2r2BB5bWvqirF7X7dSjZcQoxB92exJ0ZyHvpww5akc2BxDHA/Yuu9f2x0a\n\tvYHuVmVUxWeHrngXjcgy4QF9hacfI7GNJKgfii+WgHGp9ssCT5JWmuq+cRYkk0sLwkh4\n\tlCWGwdPB5O3jNXD0NF4W/FCliKBlNLp2aZmifAI8Vwc24FjVCZzdsNXmA8oFrdwOGsRk\n\tRiPj8kTpJAqJQA2p2Pq23B1cXQWrP1ibWd75O5sLVVCbnKLXhiDLx2r0ea7s8euEWNHF\n\tstSA==","X-Gm-Message-State":"AJIora/9RyNSiyblU0cr6GJfRPH+XJvBy0hcYDZ2G9FRhGWS68Y0DoHm\n\t/WOZtrCNj3SHW4g2ZgnfbwYSiKp6Y71bwKrbeRea7g==","X-Google-Smtp-Source":"AGRyM1uIMvCGrRSbd4d79+wADuUaD3DwGmf6Uj9Oz9KhAUj/ytfjkVkepqNdvkYOU8mh3f90G+eM4BqNHCwa1eOlLUM=","X-Received":"by 2002:a2e:a7c8:0:b0:25e:200a:74cf with SMTP id\n\tx8-20020a2ea7c8000000b0025e200a74cfmr1591738ljp.271.1658929051474;\n\tWed, 27 Jul 2022 06:37:31 -0700 (PDT)","MIME-Version":"1.0","References":"<20220727023816.30008-1-laurent.pinchart@ideasonboard.com>","In-Reply-To":"<20220727023816.30008-1-laurent.pinchart@ideasonboard.com>","Date":"Wed, 27 Jul 2022 14:37:15 +0100","Message-ID":"<CAEmqJPpxVdL0rBhFWMw+y6vLycX7GYLo5LXEbgCjdKaeuBZJVQ@mail.gmail.com>","To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Content-Type":"multipart/alternative; boundary=\"000000000000d2311b05e4c984d6\"","Subject":"Re: [libcamera-devel] [PATCH v7 00/14] Replace boost JSON parser\n\twith libyaml in Raspberry Pi IPA","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>"}}]