{"id":16812,"url":"https://patchwork.libcamera.org/api/1.1/covers/16812/?format=json","web_url":"https://patchwork.libcamera.org/cover/16812/","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":"<20220727023816.30008-1-laurent.pinchart@ideasonboard.com>","date":"2022-07-27T02:38:02","name":"[libcamera-devel,v7,00/14] Replace boost JSON parser with libyaml in Raspberry Pi IPA","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/1.1/people/2/?format=json","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"mbox":"https://patchwork.libcamera.org/cover/16812/mbox/","series":[{"id":3331,"url":"https://patchwork.libcamera.org/api/1.1/series/3331/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=3331","date":"2022-07-27T02:38:02","name":"Replace boost JSON parser with libyaml in Raspberry Pi IPA","version":7,"mbox":"https://patchwork.libcamera.org/series/3331/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/16812/comments/","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 30AF1BE173\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 27 Jul 2022 02:38:20 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 7AB8863312;\n\tWed, 27 Jul 2022 04:38:19 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 2523F603E8\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 27 Jul 2022 04:38:18 +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 9811B56D;\n\tWed, 27 Jul 2022 04:38:17 +0200 (CEST)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1658889499;\n\tbh=RpGPyZDPBp7vjN58R9DpaHciA9xUZbkvfZp2LsvBpAU=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:From;\n\tb=lCwm6YN2SxBHcKJqrOD/ScpnpB0GHi2oHfJ6e4OCk+EcXlc4b7tTTkhd3CtObyNZE\n\tytP2U5oTFBR2iCVmdWmirSQ2VDn1vTpFbbVtkWurnxfwBZK6Qi8HeYhEAJ7nuXSWla\n\tRRs6u3XugMEEvxwQC2KcVN3XwWC3aVGqY0We46HRJYOYL5sNIhZidVBpbkiKwMZNkA\n\tvO6mpdl/HXOowT7+i0ZdfwVRHCnC4Q/4NwFzABgCluU+K4Pv5cpEk2fXgdvK69Qukg\n\t3chN9Ih1+ZCMsYV5fGMb6lZiNhuoGyfzG78opWDfqMGTm9S077antIa7YNdq9EJe4k\n\tFgeagBy9LVcPw==","v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1658889497;\n\tbh=RpGPyZDPBp7vjN58R9DpaHciA9xUZbkvfZp2LsvBpAU=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=j/jUTX6iRXv4R8bpsQ52Y/6kfLklLbZHSCbGMkzHMN3DL8c+ZH1PG0DxQXadPKeEt\n\tKdP6VqwgGmLIhTeB0ePQQ+6YJl1be//FUgmnMGpBdf2XshvjF3bBtbKm842bvB9q2V\n\tlsKg0akpyAdCBMN23TWAqZxhGW3a8NF1F10zwoJ8="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (1024-bit key; \n\tunprotected) header.d=ideasonboard.com\n\theader.i=@ideasonboard.com\n\theader.b=\"j/jUTX6i\"; dkim-atps=neutral","To":"libcamera-devel@lists.libcamera.org","Date":"Wed, 27 Jul 2022 05:38:02 +0300","Message-Id":"<20220727023816.30008-1-laurent.pinchart@ideasonboard.com>","X-Mailer":"git-send-email 2.35.1","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v7 00/14] Replace boost JSON parser with\n\tlibyaml 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":"Laurent Pinchart via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Hello,\n\nThis patches series replaces the boost JSON parser with the YamlParser\nimplementation based on libyaml for the Raspberry Pi IPA module.\n\nCompared 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\nFlorian Sylvestre (1):\n  libcamera: yaml_parser: Add getList() function\n\nLaurent 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\nNaushir 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 utils/raspberrypi/ctt/ctt_pretty_print_json.py"}