Cover Letter Detail
Show a cover letter.
GET /api/1.1/covers/9063/?format=api
{ "id": 9063, "url": "https://patchwork.libcamera.org/api/1.1/covers/9063/?format=api", "web_url": "https://patchwork.libcamera.org/cover/9063/", "project": { "id": 1, "url": "https://patchwork.libcamera.org/api/1.1/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": "<20200729093154.12296-1-david.plowman@raspberrypi.com>", "date": "2020-07-29T09:31:49", "name": "[libcamera-devel,0/5] Transform implementation", "submitter": { "id": 42, "url": "https://patchwork.libcamera.org/api/1.1/people/42/?format=api", "name": "David Plowman", "email": "david.plowman@raspberrypi.com" }, "mbox": "https://patchwork.libcamera.org/cover/9063/mbox/", "series": [ { "id": 1160, "url": "https://patchwork.libcamera.org/api/1.1/series/1160/?format=api", "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=1160", "date": "2020-07-29T09:31:50", "name": "Transform implementation", "version": 1, "mbox": "https://patchwork.libcamera.org/series/1160/mbox/" } ], "comments": "https://patchwork.libcamera.org/api/covers/9063/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 5596FBD86F\n\tfor <parsemail@patchwork.libcamera.org>;\n\tWed, 29 Jul 2020 09:32:08 +0000 (UTC)", "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id F34C161981;\n\tWed, 29 Jul 2020 11:32:07 +0200 (CEST)", "from mail-wr1-x430.google.com (mail-wr1-x430.google.com\n\t[IPv6:2a00:1450:4864:20::430])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 23BCB618DD\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 29 Jul 2020 11:32:04 +0200 (CEST)", "by mail-wr1-x430.google.com with SMTP id f1so20389887wro.2\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tWed, 29 Jul 2020 02:32:04 -0700 (PDT)", "from pi4-davidp.lan (plowpeople3.plus.com. [80.229.223.72])\n\tby smtp.gmail.com with ESMTPSA id\n\tc15sm3709921wme.23.2020.07.29.02.31.59\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tWed, 29 Jul 2020 02:31:59 -0700 (PDT)" ], "Authentication-Results": "lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.b=\"CnDD6Ivc\"; dkim-atps=neutral", "DKIM-Signature": "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=o0YUxw+uDPMlnAd3aW4hDq3HsBWLGrTzEDNEWORcFoU=;\n\tb=CnDD6Ivc5jPeZpfgJ0XmZUOSXpM/jeRPkbcozCVoGD+wnJYjwp8sQf4+jKPOd9aYkZ\n\tpQI1xJYm2WQXV3jPI9iGO+Fx7QvMtyWCUmAYNbsyn/cZMLGqeA4+UdZHaC9nsKeuEwMf\n\tEmGZt/Q4kXeROKlIUXI8JhOWnKtPwwhCD+n8zr3NY53fo8NIGVmRZ6JAYqj3Wl0pztlz\n\tAgWqO7hl2w+9tbuOuTV6DXZGqTg0m5Nrg8d1l4ohX1W+E2JmsdVFN9xnJUUFTdenTAj4\n\trmbweJNbbpgKTjA04sq58fpuz/jHsiM7P7p36Omi2RbhV1jvHW/s8XUJznVrh7zNMG0r\n\tFswA==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding;\n\tbh=o0YUxw+uDPMlnAd3aW4hDq3HsBWLGrTzEDNEWORcFoU=;\n\tb=GQdfgu3PeNMLxVSXY/cAXtpSTVQF7kTdLksXbW2DSm/2Brc+l7Aeq8/Jbjxg0nHNPp\n\tJoh1O44PDfvLWV54C327gRFUDiO24GS8Ap84WHgJKuDYxX/Ysz02l7f90zGiIpL3WGY0\n\tvKK+EIeBaMUgjh5p979j0QXbeLp40Gw0xKkmnvtu1DdBEi0Tqz13HaMdCMntqDud2V/r\n\tU/KndOPaWXcxx0WacJUba+p+W4RJTZkRgedn4scWi7I9AuepyPRRzX1aCD0lWX8GIqW+\n\tiZFf9uHybCVGf5fH8aZuLSiz1ei+CGAbVrtFEHnDPXU4329TcbyWWfd2dTil/Z2mWmgc\n\tH5BA==", "X-Gm-Message-State": "AOAM531P5PqcbFyzXfpW48MZHUKcSI+p0On9H83aTRnqvOCZaADIHd3z\n\tSmJC8YUbH0PNWEbbTuQ02Hv4OtjLzUwzvA==", "X-Google-Smtp-Source": "ABdhPJyPBzu9mMTMwhtdWj1wAGzF1R9Qg0GYAdh1j9ux9Ngujk4RCGHNlXJub2s5jFebEjpSWBFTdw==", "X-Received": "by 2002:adf:80c2:: with SMTP id\n\t60mr26296014wrl.388.1596015120448; \n\tWed, 29 Jul 2020 02:32:00 -0700 (PDT)", "From": "David Plowman <david.plowman@raspberrypi.com>", "To": "libcamera-devel@lists.libcamera.org", "Date": "Wed, 29 Jul 2020 10:31:49 +0100", "Message-Id": "<20200729093154.12296-1-david.plowman@raspberrypi.com>", "X-Mailer": "git-send-email 2.20.1", "MIME-Version": "1.0", "Subject": "[libcamera-devel] [PATCH 0/5] Transform implementation", "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>", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Errors-To": "libcamera-devel-bounces@lists.libcamera.org", "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>" }, "content": "Hi everyone\n\nThis patch set isn't complete, however, I thought it was worth giving\npeople the chance to have a look, and this also allows me to ask a few\nmore questions!\n\nThere are 5 patches.\n\n1. The first one merely adds the Transform class and inserts a\nTransform field into the CameraConfiguration. This is the only\nnon-Raspberry Pi code.\n\n2. Handles the transform in the RPi pipeline handler so that the\ncorrect flips are applied to the camera. Also passes the transform to\nthe IPA.\n\n3. Plumbs the transform through to all the separate control algorithms\nvia the SwitchMode method (but does nothing further to handle the\ntransform).\n\n4. Handles the transform correctly in ALSC.\n\n5. As part of patch 4, I noticed it wasn't dealing correctly with the\nluminance tables, irrespective of the transform. This fixes that and\nactually improves the handling of camera mode switches in general.\n\nComments/Questions:\n\n* In patch #1, transform.h is labelled as \"Copyright Google\". Or\n should I put Raspberry Pi? Does it matter?\n\n* Patch #1 needs documentation. It looks like I need to write a\n transform.cpp file in the manner of (for example) geometry.cpp. Is\n that right, or is there anything else? (Do we mind if this file has\n nothing but comments?) How would I test the generated documentation\n is correct?\n\n* Patch #2 has an ugly cast...\n\nI think that's everything for now. Suggestions welcome as ever...!\n\nBest regards\nDavid\n\nDavid Plowman (5):\n libcamera: Add Transform class\n libcamera: raspberrypi: Apply transform and pass through to IPA\n libcamera: raspberrypi: Plumb user transform through to individual\n IPAs\n libcamera: raspberrypi: ALSC: Handle transform in colour tables\n libcamera: raspberrypi: ALSC: Fix crop/transform of luminance table\n\n include/libcamera/camera.h | 3 +\n include/libcamera/ipa/raspberrypi.h | 1 +\n include/libcamera/meson.build | 1 +\n include/libcamera/transform.h | 193 ++++++++++++++++++\n src/ipa/raspberrypi/controller/algorithm.cpp | 4 +-\n src/ipa/raspberrypi/controller/algorithm.hpp | 3 +-\n src/ipa/raspberrypi/controller/controller.cpp | 5 +-\n src/ipa/raspberrypi/controller/controller.hpp | 5 +-\n src/ipa/raspberrypi/controller/rpi/agc.cpp | 3 +-\n src/ipa/raspberrypi/controller/rpi/agc.hpp | 3 +-\n src/ipa/raspberrypi/controller/rpi/alsc.cpp | 108 +++++++---\n src/ipa/raspberrypi/controller/rpi/alsc.hpp | 9 +-\n src/ipa/raspberrypi/controller/rpi/noise.cpp | 4 +-\n src/ipa/raspberrypi/controller/rpi/noise.hpp | 3 +-\n .../raspberrypi/controller/rpi/sharpen.cpp | 3 +-\n .../raspberrypi/controller/rpi/sharpen.hpp | 3 +-\n src/ipa/raspberrypi/raspberrypi.cpp | 44 ++--\n .../pipeline/raspberrypi/raspberrypi.cpp | 27 ++-\n 18 files changed, 356 insertions(+), 66 deletions(-)\n create mode 100644 include/libcamera/transform.h" }