{"id":16610,"url":"https://patchwork.libcamera.org/api/1.1/covers/16610/?format=json","web_url":"https://patchwork.libcamera.org/cover/16610/","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":"<20220713092159.9014-1-naush@raspberrypi.com>","date":"2022-07-13T09:21:51","name":"[libcamera-devel,v4,0/8] Replace boost JSON parser with libyaml in Raspberry Pi IPA","submitter":{"id":34,"url":"https://patchwork.libcamera.org/api/1.1/people/34/?format=json","name":"Naushir Patuck","email":"naush@raspberrypi.com"},"mbox":"https://patchwork.libcamera.org/cover/16610/mbox/","series":[{"id":3277,"url":"https://patchwork.libcamera.org/api/1.1/series/3277/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=3277","date":"2022-07-13T09:21:51","name":"Replace boost JSON parser with libyaml in Raspberry Pi IPA","version":4,"mbox":"https://patchwork.libcamera.org/series/3277/mbox/"}],"comments":"https://patchwork.libcamera.org/api/covers/16610/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 1339FBD1F1\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 13 Jul 2022 09:22:18 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 2C30F63316;\n\tWed, 13 Jul 2022 11:22:17 +0200 (CEST)","from mail-wr1-x431.google.com (mail-wr1-x431.google.com\n\t[IPv6:2a00:1450:4864:20::431])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 063846330A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 13 Jul 2022 11:22:15 +0200 (CEST)","by mail-wr1-x431.google.com with SMTP id o4so14631692wrh.3\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 13 Jul 2022 02:22:14 -0700 (PDT)","from naush-laptop.localdomain ([93.93.133.154])\n\tby smtp.gmail.com with ESMTPSA id\n\tbd20-20020a05600c1f1400b0039747cf8354sm1514778wmb.39.2022.07.13.02.22.13\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 13 Jul 2022 02:22:13 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1657704137;\n\tbh=wNnWGUrjsxPjb/BgePziZnUlbiNuzqXy86OYNptbzrQ=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:From;\n\tb=P/JF83bNr/Cl9ynB7l3zlcI6FCykre+uxH7mTlTHL/x162jxhD1OUpeBekKURWQGT\n\tvoB2Aab1D6gqRypEWXt0SJ0V4aR3bYz4MJ7IxjsshvxsANP1cxkJIdXMnwYJYqwA5j\n\tbNC0qSxsF2kUgDmuk8hTX1j0GCYVwAPD3xwY0W9iB0X9ROuo5PbUZw5tu47NmjEU6G\n\tQZp9ly9J296NSXJ7hqTkVHjWhMKvGvv/93b7kGJdiVPTjT38uXet3l/hN0U1aHMZ5K\n\tPzj82mvGw9RiX2rl9/5Qtgo2bZKqAcGO9gF5QB5F36/OpgUW+lCJEAFSzU1P0OIEd8\n\tZiiXeTl9Houng==","v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google;\n\th=from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=NUhC0b9EERDljBfjbgd5nwglkIjp3fmt1xA0wrFZ0oU=;\n\tb=trF6g1lHLKo1OFOOvfsbdNVMrvuwo4/l6wRWph4I3McduTzyafmZB87HafA0lCTuSk\n\tTG3gcnD4h+EF7ypUOxzDgZ+gFKc7MyPXx/F/ko7zf9Dk6o6BxKTdgMVh9dgG8b9ab7gY\n\takSzctdCOXaJD4Dxq6K/SMHe6IZGHbiOPoLxdd0L2mQTxgNJFCMH7K8wbz1VSDQ26Xkl\n\tOa5bD00Lo5bPU5xnTGlec/8SiSQ6v+W9TKeLCABd6t3RE+VYKXwdWA+SUWqNLeuynR0p\n\tJ+pjyt72cqjJMtuEAjmSKDyuRcRMrJi12i/ESL9FGyGJ9hZTs/u0UWpd6ExTQDOhqSwx\n\ty/CQ=="],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"trF6g1lH\"; 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:from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=NUhC0b9EERDljBfjbgd5nwglkIjp3fmt1xA0wrFZ0oU=;\n\tb=BZtKtL/RSUTchHMTLHBW1n7QfGhgh7Y7aBOcOkR1RrLvjJGmgfbVX9rfhQigCavqVW\n\tOAppuL4AQjjB/vUNZA/EFiF9+gr28NTsT6Qx2AbQ0/6wvZWiIXwADMJWyR396JTZ0QoH\n\t1JM3AeyK0qoKTbxEkb4S5AH47nwfNDZROY+sL0HxmQi6vT6ufTgM7DCqWi5ATgn9lflg\n\t9pkC2vzk69gVKPEHa/5gp/rxGrNdqjtIcGUf+cKuys+W6BQyp+li97OxPuuMBUWKhoNx\n\tmt/rgcqZy6W2tdn0RD80ndQvWkBp/997iINM+ksce2QO4xtUfhYT/reI33g/2b5g/64E\n\tsaeg==","X-Gm-Message-State":"AJIora+Vr0CRN084beLEXz2E9Ajojw84Uilec1F1IdALShV75daulPNe\n\tb/ioLnisAocJKm1nUkxD0m1+mm21q4G6kg==","X-Google-Smtp-Source":"AGRyM1tj0pza3KV68VPAuVD0rrl4jXIgMyI+7QE10dM5JCKxsx/Wj3Un62SkAtdzTrJ6Ez4LyECb/w==","X-Received":"by 2002:a05:6000:1545:b0:21d:8f3e:a0bd with SMTP id\n\t5-20020a056000154500b0021d8f3ea0bdmr2295601wry.697.1657704134228; \n\tWed, 13 Jul 2022 02:22:14 -0700 (PDT)","To":"libcamera-devel@lists.libcamera.org","Date":"Wed, 13 Jul 2022 10:21:51 +0100","Message-Id":"<20220713092159.9014-1-naush@raspberrypi.com>","X-Mailer":"git-send-email 2.25.1","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH v4 0/8] 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":"Naushir Patuck via libcamera-devel\n\t<libcamera-devel@lists.libcamera.org>","Reply-To":"Naushir Patuck <naush@raspberrypi.com>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Hi,\n\nThis is a continuation of the series started by Laurent on replacing the boost\nJSON parser with libyaml. I've removed the RFC tag from this series, and tagged\nLaurent's patches 1/8 - 3/8. I have a few minor comments on 4/8 that I will\nreply to separately.\n\nThis version adds the following patches for the Raspberry Pi IPA and CTT:\n\n5/8 - Add support for new format of the tuning file that explicitly sets algorithm ordering.\n6/8 - Add a python script that converts our existing JSON format to the new one.\n7/8 - Updates the CTT to output the new format tuning files.\n8/8 - Updates our existing tuning files to the new format with the script.\n\nRegards,\nNaush\n\nLaurent Pinchart (4):\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: Use YamlParser to replace dependency on boost\n\nNaushir Patuck (4):\n  ipa: raspberrypi: Introduce version 2.0 format for the camera tuning\n    file\n  utils: raspberrypi: Add tuning file conversion script\n  utils: raspberrypi: ctt: Output version 2.0 format tuning files\n  ipa: raspberrypi: Convert existing cameara tuning files to version 2.0\n\n README.rst                                    |   6 -\n include/libcamera/internal/yaml_parser.h      |  37 +-\n src/ipa/raspberrypi/controller/algorithm.cpp  |   2 +-\n src/ipa/raspberrypi/controller/algorithm.hpp  |   6 +-\n src/ipa/raspberrypi/controller/controller.cpp |  59 +-\n src/ipa/raspberrypi/controller/controller.hpp |   4 +-\n src/ipa/raspberrypi/controller/pwl.cpp        |  12 +-\n src/ipa/raspberrypi/controller/pwl.hpp        |   5 +-\n src/ipa/raspberrypi/controller/rpi/agc.cpp    |  94 +-\n src/ipa/raspberrypi/controller/rpi/agc.hpp    |  10 +-\n src/ipa/raspberrypi/controller/rpi/alsc.cpp   |  94 +-\n src/ipa/raspberrypi/controller/rpi/alsc.hpp   |   2 +-\n src/ipa/raspberrypi/controller/rpi/awb.cpp    |  89 +-\n src/ipa/raspberrypi/controller/rpi/awb.hpp    |   8 +-\n .../controller/rpi/black_level.cpp            |  12 +-\n .../controller/rpi/black_level.hpp            |   2 +-\n src/ipa/raspberrypi/controller/rpi/ccm.cpp    |  28 +-\n src/ipa/raspberrypi/controller/rpi/ccm.hpp    |   4 +-\n .../raspberrypi/controller/rpi/contrast.cpp   |  18 +-\n .../raspberrypi/controller/rpi/contrast.hpp   |   2 +-\n src/ipa/raspberrypi/controller/rpi/dpc.cpp    |   4 +-\n src/ipa/raspberrypi/controller/rpi/dpc.hpp    |   2 +-\n src/ipa/raspberrypi/controller/rpi/geq.cpp    |  10 +-\n src/ipa/raspberrypi/controller/rpi/geq.hpp    |   2 +-\n src/ipa/raspberrypi/controller/rpi/lux.cpp    |  12 +-\n src/ipa/raspberrypi/controller/rpi/lux.hpp    |   2 +-\n src/ipa/raspberrypi/controller/rpi/noise.cpp  |   6 +-\n src/ipa/raspberrypi/controller/rpi/noise.hpp  |   2 +-\n src/ipa/raspberrypi/controller/rpi/sdn.cpp    |   6 +-\n src/ipa/raspberrypi/controller/rpi/sdn.hpp    |   2 +-\n .../raspberrypi/controller/rpi/sharpen.cpp    |   8 +-\n .../raspberrypi/controller/rpi/sharpen.hpp    |   2 +-\n src/ipa/raspberrypi/data/imx219.json          | 760 ++++++++--------\n src/ipa/raspberrypi/data/imx219_noir.json     | 647 +++++++-------\n src/ipa/raspberrypi/data/imx290.json          | 300 +++----\n src/ipa/raspberrypi/data/imx296.json          | 338 ++++----\n src/ipa/raspberrypi/data/imx378.json          | 617 ++++++-------\n src/ipa/raspberrypi/data/imx477.json          | 808 +++++++++---------\n src/ipa/raspberrypi/data/imx477_noir.json     | 688 ++++++++-------\n src/ipa/raspberrypi/data/imx519.json          | 617 ++++++-------\n src/ipa/raspberrypi/data/ov5647.json          | 758 ++++++++--------\n src/ipa/raspberrypi/data/ov5647_noir.json     | 645 +++++++-------\n src/ipa/raspberrypi/data/ov9281.json          | 160 ++--\n src/ipa/raspberrypi/data/se327m12.json        | 622 +++++++-------\n src/ipa/raspberrypi/data/uncalibrated.json    | 137 ++-\n src/ipa/raspberrypi/meson.build               |   1 -\n src/ipa/raspberrypi/raspberrypi.cpp           |   1 +\n src/libcamera/yaml_parser.cpp                 |  35 +-\n test/yaml-parser.cpp                          |  17 +-\n utils/raspberrypi/ctt/convert_tuning.py       |  94 ++\n utils/raspberrypi/ctt/ctt.py                  |  13 +-\n 51 files changed, 4066 insertions(+), 3744 deletions(-)\n create mode 100755 utils/raspberrypi/ctt/convert_tuning.py"}