From patchwork Sat Jul 4 09:59:12 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Plowman X-Patchwork-Id: 8617 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 9F079BD792 for ; Sat, 4 Jul 2020 09:59:27 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 6494C603AA; Sat, 4 Jul 2020 11:59:27 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="fOxGU8Jd"; dkim-atps=neutral Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id E1CD1603AA for ; Sat, 4 Jul 2020 11:59:24 +0200 (CEST) Received: by mail-wr1-x42e.google.com with SMTP id z2so13012854wrp.2 for ; Sat, 04 Jul 2020 02:59:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=cdAGZtHKtZqwU2zD4B5mvtMuoo6AbqD0SlgJ9r60fco=; b=fOxGU8Jd4SOH1lOX2753RO4Tr8aR47xFD5pSkybL02EKMiG/A0YiIw96gJUt7o8KBZ 65ZhDxRmQjJfrd07SjU5XGd2+v77zCmtCC8dQB9oneUECt0Bg07WOnQyUJ3i97OhYr3f xv5Y6UHUoxX3WhcYU16xqF8D2OUITRRz+Vlu49uq0MoMSY4MT/rqFVq1jhJt9jLGmAvF OSIwL4+6AZYpExWZhGmZq62e04ZLHb5B3cI8IjcKroAqP+eoF6Ei4GbX2clWxGupPLm8 S6HUVcLTzOMlO3XeRqoLnQDTsVC8rG5kpZPZo1R3cggEcbRbClVts+m4d9HljsE/8hyQ LvMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=cdAGZtHKtZqwU2zD4B5mvtMuoo6AbqD0SlgJ9r60fco=; b=CHVVjYq3kv1SReWISsvuHcmCPbXwW2TiVxSaonwambgTNycT9oTxF+huObjYrGqsVU iOQ11+5R/w+WJiE6iq2L2/zv+YU+bwvYpfgpU1zy9h6MD9Q/7pz2Wu5q6HSBmy7BoC4U 9VfReZj5dWvdMGZLVX4o4Z+Tw6X3+IaYZfdDIT2gTN5g6m6gftWChosVUqsHRpUc8sKL Bfk3B/f10yyM1QbrVB8a6/vv/9noxFg7JR6CiO9Tx/0z275s0F1Mn/JtsXXrGuzMM/rZ EGAdi0LwTNwilHf8LXdW1sS1vXhlxe0w5webwZLA2tqxtAZdjQBnTEalzO6No8dKLzsI OjFQ== X-Gm-Message-State: AOAM533swGk2Gr189uQVBI7qfCoRd/cW5ZBpV0qXnVd/J5e/sHdOKKuK Joga48QvYdhbsl6mr4vkeBut5n9iojk= X-Google-Smtp-Source: ABdhPJzAW6bvYNpVPBhWz3I5e8T9Hm2KplLB2ugoBn30L0sF2JbTfnoS83ZB/5r9iKM6bPUfQbAqrg== X-Received: by 2002:adf:f60a:: with SMTP id t10mr32264539wrp.64.1593856764412; Sat, 04 Jul 2020 02:59:24 -0700 (PDT) Received: from pi4-davidp.lan (plowpeople3.plus.com. [80.229.223.72]) by smtp.gmail.com with ESMTPSA id z10sm11477681wrm.21.2020.07.04.02.59.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Jul 2020 02:59:24 -0700 (PDT) From: David Plowman To: libcamera-devel@lists.libcamera.org Date: Sat, 4 Jul 2020 10:59:12 +0100 Message-Id: <20200704095914.17344-2-david.plowman@raspberrypi.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200704095914.17344-1-david.plowman@raspberrypi.com> References: <20200704095914.17344-1-david.plowman@raspberrypi.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 1/3] libcamera: Add ColourCorrectionMatrix control X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" This control is principally for returning, in the image metadata, the CCM (Colour Correction Matrix) used by the imaging pipeline. By which we mean the 3x3 matrix that is applied to the camera RGB pixels after subtraction of black levels and white-balancing, but before any gamma transformation. Some implementations may also choose to let an application set explicit colour matrices, using this as a control. Signed-off-by: David Plowman Reviewed-by: Laurent Pinchart --- src/libcamera/control_ids.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/libcamera/control_ids.yaml b/src/libcamera/control_ids.yaml index 8c3e4c7..23c3f06 100644 --- a/src/libcamera/control_ids.yaml +++ b/src/libcamera/control_ids.yaml @@ -251,4 +251,16 @@ controls: higher than anyone could reasonably want. Negative values are not allowed. Note also that sharpening is not applied to raw streams. + + - ColourCorrectionMatrix: + type: float + description: | + The 3x3 matrix that converts camera RGB to sRGB within the + imaging pipeline. This should describe the matrix that is used + after pixels have been white-balanced, but before any gamma + transformation. The 3x3 matrix is stored in conventional reading + order in an array of 9 floating point values. + + size: [9] + ...