Show a cover letter.

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

{
    "id": 18895,
    "url": "https://patchwork.libcamera.org/api/covers/18895/?format=api",
    "web_url": "https://patchwork.libcamera.org/cover/18895/",
    "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": "<20230728122758.2411-1-david.plowman@raspberrypi.com>",
    "date": "2023-07-28T12:27:57",
    "name": "[libcamera-devel,0/1] HDR controls",
    "submitter": {
        "id": 42,
        "url": "https://patchwork.libcamera.org/api/people/42/?format=api",
        "name": "David Plowman",
        "email": "david.plowman@raspberrypi.com"
    },
    "mbox": "https://patchwork.libcamera.org/cover/18895/mbox/",
    "series": [
        {
            "id": 3991,
            "url": "https://patchwork.libcamera.org/api/series/3991/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=3991",
            "date": "2023-07-28T12:27:57",
            "name": "HDR controls",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/3991/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/covers/18895/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 AFA17BDB13\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 28 Jul 2023 12:28:06 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 01E14627EC;\n\tFri, 28 Jul 2023 14:28:06 +0200 (CEST)",
            "from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com\n\t[IPv6:2a00:1450:4864:20::42c])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 314D4627E6\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 28 Jul 2023 14:28:04 +0200 (CEST)",
            "by mail-wr1-x42c.google.com with SMTP id\n\tffacd0b85a97d-3175f17a7baso2109508f8f.0\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 28 Jul 2023 05:28:04 -0700 (PDT)",
            "from pi4-davidp.pitowers.org\n\t([2a00:1098:3142:14:2bce:64d6:1a5c:49a2])\n\tby smtp.gmail.com with ESMTPSA id\n\tn1-20020a5d4c41000000b0031764e85b91sm4692175wrt.68.2023.07.28.05.28.02\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n\tFri, 28 Jul 2023 05:28:03 -0700 (PDT)"
        ],
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org;\n\ts=mail; t=1690547286;\n\tbh=sd/LRH3lJNfR4eptlhBtsBNvcNZzFwqF1LLdSjeKW3A=;\n\th=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post:\n\tList-Help:List-Subscribe:From:Reply-To:From;\n\tb=GTxZoaWSyGFSST/ZtQO1oDbaNUTLsg5qC/tOH34qh41mojXGH/SWANb0ZSJ6l2fZT\n\tgqU7BKQXhwQlhK2Dp9hZlqjF9o4iXDUJNaLpi+hWdsq2KUEyPx6HcqOx2ah7kzUMm2\n\tk8ZgiE04aG+zpKjh+70W74hijuLYBo4DOnTvKBCLkU3/LcnPMxxDEqZ3cRDQ1xOpHc\n\tzGO6eAvfTyxz5xp91HnoB9n4eglK2bz5C3shu1IbxodHV/T9nKpzWicWnuRsUodt8r\n\tF8ftIdIuwjLsyfthWN4qkEPsmFZn4/kOCjRwp6vsxQkkAZdt0oqK4wUx1hOaZehnlj\n\ty+06AsILMLUrw==",
            "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=raspberrypi.com; s=google; t=1690547283; x=1691152083;\n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:from:to:cc:subject:date:message-id:reply-to;\n\tbh=A75m3xru/SlMmJM7TYF1nHObui2Mu8u9y2INvxr1EI4=;\n\tb=HilSOiEe0j7fVIwlo60DEdeqnZaXYwPQCoXmu/zlpV78+paQ0vI3HozyYEs/eWFPbB\n\t1lg31wz1hR45eAguK42YQFb3TxFs1tkBEI/7uXEEdm0mK6VChz2x2y/QHBGGZUSg+fbv\n\t1OMZNyy9OGrz19ny9I6idaZkP7EtY0PotiP3DFKPlMspVt8+3DnkDctZx+wCyANrAkF7\n\tjOly+3Xh7nOMjFx9iFPmaQgZP9C9+r2g74FbseCsuvn0+MD+A/mx2AhL+UmIwxUdEoac\n\t/uhoe3Iti60xcAKHUsz8mguYhopyaRYqR8CE2fG60UeASUqXJYlxRfpHgNhe9QhA5LnR\n\tZROw=="
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (2048-bit key; \n\tunprotected) header.d=raspberrypi.com\n\theader.i=@raspberrypi.com\n\theader.b=\"HilSOiEe\"; dkim-atps=neutral",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20221208; t=1690547283; x=1691152083;\n\th=content-transfer-encoding:mime-version:message-id:date:subject:cc\n\t:to:from:x-gm-message-state:from:to:cc:subject:date:message-id\n\t:reply-to;\n\tbh=A75m3xru/SlMmJM7TYF1nHObui2Mu8u9y2INvxr1EI4=;\n\tb=S04Sbc8aBToxVLShoMIzH5qe0be56EDZbJqWOhEwHn3xWSgwlt/XKQQTakXYpabqc0\n\trdn43y2kBHQNbubvUvBTsArFX1HvMfEvfZSvc9HEUTt6pwySzbw2006HXYmCexbbgG5W\n\tMhld5MiSgMdvDROU/OWR1lkEHj+dFh+VSV1nxaohmEyCyCPWkgzB9KGVahcKv6o5OqgE\n\t5BmpxHBWVVsrfZYgB8TBdCzDfSupPD6SxhTET7OYgbSVKww/b1OxGL2qccLScq7WZYNn\n\tTQ1fsYodAPuNM4jYAFtUSIzMrZjdn/hgd+sd9ebTFMfkkQkChmwC4xmhNFdB2EbPJlhi\n\t09aA==",
        "X-Gm-Message-State": "ABy/qLZAXDsHdPOLQLVBdLeyXcd5GRle4xvVtWbcdZa/sg3E70wuPq+X\n\tYuRdb/Hs1NLPaVStQ/xq3W7yw12HQg4zkyOmKzU=",
        "X-Google-Smtp-Source": "APBJJlGWN5mKYXdxlNDXDbXZTdqcEe9m8TGmuIQQCHmVxuVZUmWVqQeb1ApVqxXs4VRq5KrzbuVgdA==",
        "X-Received": "by 2002:adf:dd50:0:b0:317:64f7:a4ff with SMTP id\n\tu16-20020adfdd50000000b0031764f7a4ffmr1327761wrm.66.1690547283473; \n\tFri, 28 Jul 2023 05:28:03 -0700 (PDT)",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Fri, 28 Jul 2023 13:27:57 +0100",
        "Message-Id": "<20230728122758.2411-1-david.plowman@raspberrypi.com>",
        "X-Mailer": "git-send-email 2.30.2",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel] [PATCH 0/1] HDR controls",
        "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": "David Plowman via libcamera-devel <libcamera-devel@lists.libcamera.org>",
        "Reply-To": "David Plowman <david.plowman@raspberrypi.com>",
        "Errors-To": "libcamera-devel-bounces@lists.libcamera.org",
        "Sender": "\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"
    },
    "content": "Hi everyone\n\nHere is an initial patch for controls to allow applications to do HDR\nimaging. The aim here is to keep things reasonably simple and to avoid\nthings that might get complicated or platform dependent. We have:\n\nHdrMode\n\nA control to request HDR images. Besides the \"off\" setting we have:\n\n* HdrModeMultiExposure - multiple exposures will be used to create HDR\n  images, and\n\n* HdrModeSingleExposure - multiple frames at a single exposure will be\n  used to create HDR images.\n\nHdrChannel\n\nThis is metadata attached to the returned images to say which of the\nexposure \"channels\" (that is, long, short or medium) this image is\nfrom. (On the Pi we expect to want to drive the multiple exposures but\nnot combine the images, as there is no hardware for that.)\n\n\nMostly this is all for use with ISPs that are dealing with cameras\nwithout special HDR features, but I think it's worth considering how\nit would apply there too.\n\n1. Some cameras might deliver long/medium/short frames\nautomatically. If they're travelling through the pipeline\nindependently then I think we label them correctly and expect the\nimplementation of the HdrModeMultiExposure to handle them. There are\nclearly implementation dependent issues here, such as how those\nexposure values are determined and applied, and so forth.\n\n2. A camera might deliver an HDR but un-tonemapped image. This might\nsimply fall under the HdrModeSingleExposure category, but if not maybe\nthere's an argument for an HdrModeTonemapOnly variant. If there aren't\nmultiple exposures going throught the pipeline, then it doesn't really\nmatter what the HdrChannel says. I'd probably go with \"short\" because\nit kind of does have that exposure, but minus all the noise. Or we\ncould invent a new category, don't really mind.\n\n3. If the camera delivers a ready-tonemapped HDR image... to the ISP,\nthis will simply be ToneMapOff.\n\nHopefully that makes some sense. Interested to hear what folks think!\n\nThanks\n\nDavid\n\n\nDavid Plowman (1):\n  libcamera: controls: Add controls for HDR\n\n src/libcamera/control_ids.yaml | 47 ++++++++++++++++++++++++++++++++++\n 1 file changed, 47 insertions(+)"
}