Show a patch.

GET /api/patches/22015/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 22015,
    "url": "https://patchwork.libcamera.org/api/patches/22015/?format=api",
    "web_url": "https://patchwork.libcamera.org/patch/22015/",
    "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": "<20241119121928.30939-18-laurent.pinchart@ideasonboard.com>",
    "date": "2024-11-19T12:19:28",
    "name": "[v4,17/17] ipa: rkisp1: awb: Expand comment",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "2583a7b1628b1af4a12359990ebe7918ac3fe13d",
    "submitter": {
        "id": 2,
        "url": "https://patchwork.libcamera.org/api/people/2/?format=api",
        "name": "Laurent Pinchart",
        "email": "laurent.pinchart@ideasonboard.com"
    },
    "delegate": null,
    "mbox": "https://patchwork.libcamera.org/patch/22015/mbox/",
    "series": [
        {
            "id": 4804,
            "url": "https://patchwork.libcamera.org/api/series/4804/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=4804",
            "date": "2024-11-19T12:19:11",
            "name": "Improve linear algebra helpers in libipa",
            "version": 4,
            "mbox": "https://patchwork.libcamera.org/series/4804/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/patches/22015/comments/",
    "check": "pending",
    "checks": "https://patchwork.libcamera.org/api/patches/22015/checks/",
    "tags": {},
    "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 12B50C32F1\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 19 Nov 2024 12:20:39 +0000 (UTC)",
            "from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 567F565F48;\n\tTue, 19 Nov 2024 13:20:38 +0100 (CET)",
            "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 128F565F3B\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 19 Nov 2024 13:20:32 +0100 (CET)",
            "from pendragon.ideasonboard.com (81-175-209-231.bb.dnainternet.fi\n\t[81.175.209.231])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 1D91C20A4\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 19 Nov 2024 13:20:14 +0100 (CET)"
        ],
        "Authentication-Results": "lancelot.ideasonboard.com; dkim=pass (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"OTyUKHIh\"; dkim-atps=neutral",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1732018814;\n\tbh=FHRkbjMUxQInW2YKSKd1ARRr3TPKQSJsVhz8lJ2QHug=;\n\th=From:To:Subject:Date:In-Reply-To:References:From;\n\tb=OTyUKHIhOdJQ7lcoSucxLNMECDW3Lq2IB4wR7L8JdPk6tc1ewVJnMCqFnrJ6lvRUm\n\t9aFGlL5loBMrgaAxyglZGid+qo4CfyHAntLeosB7sMUBZNqOX1BwDw6rk5YKESXr4N\n\t77+kK9tXKjuKU7GFaimrJ4W+/Zfyozwi7NTyxcMY=",
        "From": "Laurent Pinchart <laurent.pinchart@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Subject": "[PATCH v4 17/17] ipa: rkisp1: awb: Expand comment",
        "Date": "Tue, 19 Nov 2024 14:19:28 +0200",
        "Message-ID": "<20241119121928.30939-18-laurent.pinchart@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.45.2",
        "In-Reply-To": "<20241119121928.30939-1-laurent.pinchart@ideasonboard.com>",
        "References": "<20241119121928.30939-1-laurent.pinchart@ideasonboard.com>",
        "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": "The RGB to YCbCr conversion matrix mentioned in a comment, coming from\nthe hardware documentation, does not match any of the canonical matrices\nspecified by any standard. While researching where the values came from,\nit became apparent they are likely Bt.601 limited range coefficients\nrounded to 6 bits of decimal precision. Record this in comments.\n\nSigned-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\nReviewed-by: Milan Zamazal <mzamazal@redhat.com>\n---\n src/ipa/rkisp1/algorithms/awb.cpp | 13 +++++++++----\n 1 file changed, 9 insertions(+), 4 deletions(-)",
    "diff": "diff --git a/src/ipa/rkisp1/algorithms/awb.cpp b/src/ipa/rkisp1/algorithms/awb.cpp\nindex 26d7b8138f17..4bb4f5b88375 100644\n--- a/src/ipa/rkisp1/algorithms/awb.cpp\n+++ b/src/ipa/rkisp1/algorithms/awb.cpp\n@@ -210,13 +210,18 @@ void Awb::process(IPAContext &context,\n \t\t});\n \n \t\t/*\n-\t\t * Convert from YCbCr to RGB.\n-\t\t * The hardware uses the following formulas:\n-\t\t * Y = 16 + 0.2500 R + 0.5000 G + 0.1094 B\n+\t\t * Convert from YCbCr to RGB. The hardware uses the following\n+\t\t * formulas:\n+\t\t *\n+\t\t * Y  =  16 + 0.2500 R + 0.5000 G + 0.1094 B\n \t\t * Cb = 128 - 0.1406 R - 0.2969 G + 0.4375 B\n \t\t * Cr = 128 + 0.4375 R - 0.3750 G - 0.0625 B\n \t\t *\n-\t\t * The inverse matrix is thus:\n+\t\t * This seems to be based on limited range BT.601 with Q1.6\n+\t\t * precision.\n+\t\t *\n+\t\t * The inverse matrix is:\n+\t\t *\n \t\t * [[1,1636, -0,0623,  1,6008]\n \t\t *  [1,1636, -0,4045, -0,7949]\n \t\t *  [1,1636,  1,9912, -0,0250]]\n",
    "prefixes": [
        "v4",
        "17/17"
    ]
}