[{"id":16350,"web_url":"https://patchwork.libcamera.org/comment/16350/","msgid":"<f53b026c-ff6c-a758-8906-4babbcc72d41@ideasonboard.com>","date":"2021-04-19T13:33:25","subject":"Re: [libcamera-devel] [PATCH 01/13] libcamera: controls: Destage\n\t'SensorTimestamp'","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/people/4/","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"content":"Hi Jacopo,\n\nOn 19/04/2021 14:14, Jacopo Mondi wrote:\n> Destage the 'SensorTimestamp' control, which is used by pipeline\n> handlers to report the time when the first active line of the sensor's\n> pixel array is exposed.\n> \n> Reviewed-by: Hirokazu Honda <hiroh@chromium.org>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n> ---\n>  src/libcamera/control_ids.yaml | 21 ++++++++++++++-------\n>  1 file changed, 14 insertions(+), 7 deletions(-)\n> \n> diff --git a/src/libcamera/control_ids.yaml b/src/libcamera/control_ids.yaml\n> index b4771f9def89..88d81ac4cccc 100644\n> --- a/src/libcamera/control_ids.yaml\n> +++ b/src/libcamera/control_ids.yaml\n> @@ -360,6 +360,20 @@ controls:\n>  \n>        size: [2]\n>  \n> +  - SensorTimestamp:\n> +      type: int64_t\n> +      description: |\n> +        The time when the first row of the image sensor active array is exposed.\n> +\n> +        The timestamp, expressed in nanoseconds, represents a monotonically\n> +        increasing counter since the system boot time, as defined by the\n> +        Linux-specific CLOCK_BOOTTIME clock id.\n> +\n> +        The SensorTimestamp control can only be returned in metadata.\n> +\n> +        \\todo Define how the sensor timestamp has to be used in the reprocessing\n> +        use case.\n\nThis reads fine to me.\n\nI'm not sure if it's relevant to restrict/tie the timestamp to\nCLOCK_BOOTTIME, but I don't know any better, and I think you've already\ndiscussed that elsewhere.\n\n\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n\n\n> +\n>    # ----------------------------------------------------------------------------\n>    # Draft controls section\n>  \n> @@ -547,13 +561,6 @@ controls:\n>            value: 3\n>            description: The AWB algorithm is locked.\n>  \n> -  - SensorTimestamp:\n> -      type: int64_t\n> -      draft: true\n> -      description: |\n> -       Control to report the start of exposure of the first row of the captured\n> -       image. Currently identical to ANDROID_SENSOR_TIMESTAMP.\n> -\n>    - SensorRollingShutterSkew:\n>        type: int64_t\n>        draft: true\n>","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 B697DBD814\n\tfor <parsemail@patchwork.libcamera.org>;\n\tMon, 19 Apr 2021 13:33:30 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 4319D68828;\n\tMon, 19 Apr 2021 15:33:30 +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 CDFA5602CD\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tMon, 19 Apr 2021 15:33:28 +0200 (CEST)","from [192.168.0.20]\n\t(cpc89244-aztw30-2-0-cust3082.18-1.cable.virginm.net [86.31.172.11])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 5C74DD4A;\n\tMon, 19 Apr 2021 15:33:28 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"eZYmT79c\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618839208;\n\tbh=8aBa5hfcYpJ2TXumfVJUe/3JWe6/AzDQXhbRY8JCd2g=;\n\th=Reply-To:Subject:To:References:From:Date:In-Reply-To:From;\n\tb=eZYmT79c/rF3CBHlQgqkm/uNgLxGFPyXSpw20z1cClFVSN1b/4IlEz7ALx7vG8fKX\n\tsLBVc+rqiAHNVfFUHqPM3pP2kWFuXTjqE0QXb2mWieh5av1hYoEdTFrvd5tHKNxfZQ\n\th3qUBhxzzxxL1v8Az9xZaeLYJ589QjMHoEVhA1W4=","To":"Jacopo Mondi <jacopo@jmondi.org>, libcamera-devel@lists.libcamera.org","References":"<20210419131433.22920-1-jacopo@jmondi.org>\n\t<20210419131433.22920-2-jacopo@jmondi.org>","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Organization":"Ideas on Board","Message-ID":"<f53b026c-ff6c-a758-8906-4babbcc72d41@ideasonboard.com>","Date":"Mon, 19 Apr 2021 14:33:25 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101\n\tThunderbird/78.7.1","MIME-Version":"1.0","In-Reply-To":"<20210419131433.22920-2-jacopo@jmondi.org>","Content-Language":"en-GB","Subject":"Re: [libcamera-devel] [PATCH 01/13] libcamera: controls: Destage\n\t'SensorTimestamp'","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>","Reply-To":"kieran.bingham@ideasonboard.com","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>"}},{"id":16401,"web_url":"https://patchwork.libcamera.org/comment/16401/","msgid":"<YH8/hSASBPcvTtfJ@pendragon.ideasonboard.com>","date":"2021-04-20T20:54:29","subject":"Re: [libcamera-devel] [PATCH 01/13] libcamera: controls: Destage\n\t'SensorTimestamp'","submitter":{"id":2,"url":"https://patchwork.libcamera.org/api/people/2/","name":"Laurent Pinchart","email":"laurent.pinchart@ideasonboard.com"},"content":"Hi Jacopo,\n\nThank you for the patch.\n\nOn Mon, Apr 19, 2021 at 03:14:21PM +0200, Jacopo Mondi wrote:\n> Destage the 'SensorTimestamp' control, which is used by pipeline\n> handlers to report the time when the first active line of the sensor's\n> pixel array is exposed.\n> \n> Reviewed-by: Hirokazu Honda <hiroh@chromium.org>\n> Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>\n\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n\n> ---\n>  src/libcamera/control_ids.yaml | 21 ++++++++++++++-------\n>  1 file changed, 14 insertions(+), 7 deletions(-)\n> \n> diff --git a/src/libcamera/control_ids.yaml b/src/libcamera/control_ids.yaml\n> index b4771f9def89..88d81ac4cccc 100644\n> --- a/src/libcamera/control_ids.yaml\n> +++ b/src/libcamera/control_ids.yaml\n> @@ -360,6 +360,20 @@ controls:\n>  \n>        size: [2]\n>  \n> +  - SensorTimestamp:\n> +      type: int64_t\n> +      description: |\n> +        The time when the first row of the image sensor active array is exposed.\n> +\n> +        The timestamp, expressed in nanoseconds, represents a monotonically\n> +        increasing counter since the system boot time, as defined by the\n> +        Linux-specific CLOCK_BOOTTIME clock id.\n> +\n> +        The SensorTimestamp control can only be returned in metadata.\n> +\n> +        \\todo Define how the sensor timestamp has to be used in the reprocessing\n> +        use case.\n> +\n>    # ----------------------------------------------------------------------------\n>    # Draft controls section\n>  \n> @@ -547,13 +561,6 @@ controls:\n>            value: 3\n>            description: The AWB algorithm is locked.\n>  \n> -  - SensorTimestamp:\n> -      type: int64_t\n> -      draft: true\n> -      description: |\n> -       Control to report the start of exposure of the first row of the captured\n> -       image. Currently identical to ANDROID_SENSOR_TIMESTAMP.\n> -\n>    - SensorRollingShutterSkew:\n>        type: int64_t\n>        draft: true","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 C1521BDB16\n\tfor <parsemail@patchwork.libcamera.org>;\n\tTue, 20 Apr 2021 20:54:35 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 285F468844;\n\tTue, 20 Apr 2021 22:54:35 +0200 (CEST)","from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 2367F68839\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 20 Apr 2021 22:54:34 +0200 (CEST)","from pendragon.ideasonboard.com (62-78-145-57.bb.dnainternet.fi\n\t[62.78.145.57])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 895B8411;\n\tTue, 20 Apr 2021 22:54:33 +0200 (CEST)"],"Authentication-Results":"lancelot.ideasonboard.com;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ideasonboard.com header.i=@ideasonboard.com\n\theader.b=\"CkTsedYa\"; dkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1618952073;\n\tbh=efbxLSFEMNzECsvI+NIfWLSRH4u/HF26D7X0xrKx5cc=;\n\th=Date:From:To:Cc:Subject:References:In-Reply-To:From;\n\tb=CkTsedYaDAJvMpIHtxR0zqo6FLcgbwzal+q5vrLnbAZJGQElwb5dHKd6pFs3Igntu\n\tkbjpPI/os2YVwy4Aasa1Te8qC03umpoTSUyB1nj0jadJV1unC2zu1Y1d5QwlpS2kQ2\n\t9v6GiZq7ppy19ANmby9qCQ/7/78O1kdL2lgXFFwM=","Date":"Tue, 20 Apr 2021 23:54:29 +0300","From":"Laurent Pinchart <laurent.pinchart@ideasonboard.com>","To":"Jacopo Mondi <jacopo@jmondi.org>","Message-ID":"<YH8/hSASBPcvTtfJ@pendragon.ideasonboard.com>","References":"<20210419131433.22920-1-jacopo@jmondi.org>\n\t<20210419131433.22920-2-jacopo@jmondi.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20210419131433.22920-2-jacopo@jmondi.org>","Subject":"Re: [libcamera-devel] [PATCH 01/13] libcamera: controls: Destage\n\t'SensorTimestamp'","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>","Cc":"libcamera-devel@lists.libcamera.org","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>"}}]