Show a cover letter.

GET /api/covers/20065/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 20065,
    "url": "https://patchwork.libcamera.org/api/covers/20065/?format=api",
    "web_url": "https://patchwork.libcamera.org/cover/20065/",
    "project": {
        "id": 1,
        "url": "https://patchwork.libcamera.org/api/projects/1/?format=api",
        "name": "libcamera",
        "link_name": "libcamera",
        "list_id": "libcamera_core",
        "list_email": "libcamera-devel@lists.libcamera.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": ""
    },
    "msgid": "<20240519081539.29832-1-umang.jain@ideasonboard.com>",
    "date": "2024-05-19T08:15:35",
    "name": "[0/4] libcamera: rkisp1: Plumb i.MX8MP DW100 dewarper",
    "submitter": {
        "id": 86,
        "url": "https://patchwork.libcamera.org/api/people/86/?format=api",
        "name": "Umang Jain",
        "email": "umang.jain@ideasonboard.com"
    },
    "mbox": "https://patchwork.libcamera.org/cover/20065/mbox/",
    "series": [
        {
            "id": 4314,
            "url": "https://patchwork.libcamera.org/api/series/4314/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4314",
            "date": "2024-05-19T08:15:35",
            "name": "libcamera: rkisp1: Plumb i.MX8MP DW100 dewarper",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/4314/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/covers/20065/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 E5A89BD78E\n\tfor <parsemail@patchwork.libcamera.org>;\n\tSun, 19 May 2024 08:15:51 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id EA4286346B;\n\tSun, 19 May 2024 10:15:50 +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 1CC6761A57\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tSun, 19 May 2024 10:15:48 +0200 (CEST)",
            "from fedora.local (unknown\n\t[IPv6:2405:201:2015:f873:9278:2c85:fd02:c5f5])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 340325A4;\n\tSun, 19 May 2024 10:15:35 +0200 (CEST)"
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"OkDoC6GY\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1716106537;\n\tbh=DBFIy5ADqAYcZ89z2qVjBwrO8tqBcr0pB/+jnFGqayU=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=OkDoC6GYbgijKn4yj40a8/KbMAYOia1UhJydoPFWKcVp0Y5SWODsBbrNtrjzswoxO\n\tS9SMF6jerU6/eIlf6rAwhlqqoeiy49341RyW8LWCJR9tpGPROlhDd1MF/YFr4U3x1p\n\t5h6nLkNl6qT2/Oe1F68En4JyKm2eHsnkNyINKvD4=",
        "From": "Umang Jain <umang.jain@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Cc": "Umang Jain <umang.jain@ideasonboard.com>",
        "Subject": "[PATCH 0/4] libcamera: rkisp1: Plumb i.MX8MP DW100 dewarper",
        "Date": "Sun, 19 May 2024 13:45:35 +0530",
        "Message-ID": "<20240519081539.29832-1-umang.jain@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.44.0",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "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>",
        "Errors-To": "libcamera-devel-bounces@lists.libcamera.org",
        "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"
    },
    "content": "This series intends to support i.MX8MP DW100 dewarper in rkisp1 pipeline\nhandler.\n\nPatch 1/4 prepares the rkisp1 pipeline handler to register controls\nfor the camera, outside of the IPA. The dewarper will let us support\nscaler crop - which will be registered as camera controls.\n\nPatch 2/4 is also a prepartory patch to accept scaler crop rectangles\nfor the converter_v4l2_m2m on each stream.\n\nPatch 3/4 adds a base RkISP1Dewarper class inheriting from\nconverter_v4l2_m2m. This provides a scaler crop setting helper.\n\nPatch 4/4 finally plumbs the dewarper in the rkisp1 pipeline handler.\nIf the scaler crop control is found set in the request, it is applied\non the dewarper.\n\nThe series is tested on i.MX8MP and cam utility, by setting scaler crop\ncontrol via capture script.\n\nAdditional development:\n\nInitially when I developed, I added support to load a dewarp config file\nvia environment variables which then can be used to set\nV4L2_CID_DW100_DEWARPING_16x16_VERTEX_MAP control. However, it has\nneeds adhoc development to support v4l2 compound controls (which\nalso I tried) but ultimately I failed to test, if this control was\nreally working for me. Hence, I decided to send this series without\nthat development and hope it can be done on top of this.\n\nUmang Jain (4):\n  libcamera: rkisp1: Prepare for additional camera controls\n  libcamera: converter_v4l2_m2m: Support crop selection\n  libcamera: rkisp1: Add base class DW100 dewarper\n  libcamera: rkisp1: Plumb through RkISP1Dewarper\n\n .../internal/converter/converter_v4l2_m2m.h   |   5 +\n .../converter/converter_v4l2_m2m.cpp          |  26 +++\n src/libcamera/pipeline/rkisp1/meson.build     |   1 +\n src/libcamera/pipeline/rkisp1/rkisp1.cpp      | 162 +++++++++++++++++-\n .../pipeline/rkisp1/rkisp1_dewarper.cpp       |  38 ++++\n .../pipeline/rkisp1/rkisp1_dewarper.h         |  25 +++\n src/libcamera/pipeline/rkisp1/rkisp1_path.cpp |  12 +-\n src/libcamera/pipeline/rkisp1/rkisp1_path.h   |  14 ++\n 8 files changed, 272 insertions(+), 11 deletions(-)\n create mode 100644 src/libcamera/pipeline/rkisp1/rkisp1_dewarper.cpp\n create mode 100644 src/libcamera/pipeline/rkisp1/rkisp1_dewarper.h"
}