{"id":22675,"url":"https://patchwork.libcamera.org/api/patches/22675/?format=json","web_url":"https://patchwork.libcamera.org/patch/22675/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20250122145349.7220-2-david.plowman@raspberrypi.com>","date":"2025-01-22T14:53:43","name":"[v4,1/7] controls: Add FrameWallClock control","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"7412c3ac4bb8c4a777023ce6586889a91e437d41","submitter":{"id":42,"url":"https://patchwork.libcamera.org/api/people/42/?format=json","name":"David Plowman","email":"david.plowman@raspberrypi.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/22675/mbox/","series":[{"id":4964,"url":"https://patchwork.libcamera.org/api/series/4964/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=4964","date":"2025-01-22T14:53:47","name":"Camera synchronisation","version":4,"mbox":"https://patchwork.libcamera.org/series/4964/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/22675/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/22675/checks/","tags":{},"headers":{"Return-Path":"<kieran.bingham@ideasonboard.com>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":["parsemail@patchwork.libcamera.org","kbingham@ideasonboard.com"],"Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id D6A23BDB1C\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 30 Jan 2025 11:51:42 +0000 (UTC)","from pendragon.ideasonboard.com\n\t(cpc89244-aztw30-2-0-cust6594.18-1.cable.virginm.net\n\t[86.31.185.195])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id 38986886\n\tfor <parsemail@patchwork.libcamera.org>;\n\tThu, 30 Jan 2025 12:50:34 +0100 (CET)","from perceval.ideasonboard.com\n\tby perceval.ideasonboard.com with LMTP id 8PRvMkMGkWdTRjQA4E0KoQ\n\t(envelope-from <david.plowman@raspberrypi.com>)\n\tfor <kbingham@ideasonboard.com>; Wed, 22 Jan 2025 15:52:51 +0100","from mail-wm1-x32e.google.com (mail-wm1-x32e.google.com\n\t[IPv6:2a00:1450:4864:20::32e])\tby perceval.ideasonboard.com (Postfix)\n\twith ESMTPS id B1054F91\tfor <kieran.bingham@ideasonboard.com>;\n\tWed, 22 Jan 2025 15:52:51 +0100 (CET)","by mail-wm1-x32e.google.com with SMTP id\n\t5b1f17b1804b1-4361b0ec57aso72574415e9.0        for\n\t<kieran.bingham@ideasonboard.com>;\n\tWed, 22 Jan 2025 06:53:54 -0800 (PST)","from raspberrypi.pitowers.org\n\t([2a00:1098:3142:1f:ffc9:aff6:7f7f:893b]) by smtp.gmail.com with\n\tESMTPSA id\n\t5b1f17b1804b1-438b66dc08bsm11551395e9.37.2025.01.22.06.53.53\n\t(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);       \n\tWed, 22 Jan 2025 06:53:53 -0800 (PST)"],"Authentication-Results":"perceval.ideasonboard.com;\n\tdkim=permerror header.d=raspberrypi.com header.i=@raspberrypi.com\n\theader.a=rsa-sha1 header.s=google header.b=cvhHQZmy; \n\tdkim-atps=neutral","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;       \n\td=raspberrypi.com; s=google; t=1737557633; x=1738162433;\n\tdarn=ideasonboard.com;       \n\th=content-transfer-encoding:mime-version:references:in-reply-to \n\t:message-id:date:subject:cc:to:from:from:to:cc:subject:date        \n\t:message-id:reply-to; bh=wWS+qkr4e2HeK4Yl6e1wMBaJ6VR8PI7E4/+klrfz1lo=;\n\tb=cvhHQZmywiNokFHaWKFDxvF1fSDkhukts6ExdZtdrJ0bIkZkop4nMDmCvlJFEAmaFC\n\tiUUW4LRndObRbaRkKgMx7PhRrWyBEr4BTvZLgUZXBWoLM1F0F66xmRgcGorF1q01ksJr\n\t4+yaei5TlZ0ZeFfgGXcXh6AO4P8GgvG0X5I36cSPreMMSZ8rKUjdzqv/3bKn2jfoj9Nw\n\t2zi/QChoiMthfiWRI1q16WSOBjAZRyEI/+8L2O1kFA9OW92+BcV0w593Vs/v6/rC0Mbi\n\tXxeOLYDlguD9nFxlxQyvSFFUQnEjKDMvRzqN8AglffWlmFvebI79+G50dIRv2UMZ7Kft\n\tzReg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20230601; t=1737557633; x=1738162433;\n\th=content-transfer-encoding:mime-version:references:in-reply-to\n\t:message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n\t:subject:date:message-id:reply-to;\n\tbh=wWS+qkr4e2HeK4Yl6e1wMBaJ6VR8PI7E4/+klrfz1lo=;\n\tb=ghWscfu6b/vq03e0EMv1Equte04wMwk7lNz0hxwDQrUBuVO0aAlxFEPbQ/WL5f7EuJ\n\tME/EHcSVbSquKIdWa0BQD7HdK9Xucnys4GjhQIpOp4gxN4kKGPBG244lT/Yl7+YbzEyu\n\toPka98FcVAKsMapyM4zZR+TN1PGxpfiQ58mu2L7mm6DtU95UNcT3QI//9d1awvMBu/rL\n\tIPdK/bzsLDUJ39eOLBRVHk6UNLXdAblWrUeAmgI7VB5XW+elvyqr/PnGXbH5JOBqmHYU\n\tcLk1EwctT5qNck+fFQi94CxTh20i6L3e9URYwEo0bjVSwSXFb1TZ4jn5n7LqhEF55bIu\n\tQQUg==","X-Forwarded-Encrypted":"i=1; =?utf-8?q?AJvYcCUiBgqJyS5ov1bkO5jtgKvBHcINIAf8?=\n\t=?utf-8?q?tAWIT1Zb5uQdl8TX+C946/qDzw7LA8uVfwSaqR2kD/vTzhy0migKyw?=\n\t=?utf-8?q?=3D=3D=40ideasonboard=2Ecom?=","X-Gm-Message-State":"AOJu0YwveOLqnzVHUiX44+X+OOsoPLSQmP7oIU/6Mj3kKwnT5NzAL5dc\n\tK+OCyO2pb/V2FR9FlwnjTErQWot+FsjA28uRHh6r1yVWNfVHb+pJuQwNuBkri+I=","X-Gm-Gg":"ASbGncuDsYzqzqUlUGt4r6kDIvZmKCxXLQ9q/pZkp/O37l+4qj+9xDWB5ToPL2ox0mp\n\tLd+Z4XPfex7yt/ie+FbVS03RzTFSZW7nIVZjAN+h1vr50nQPQm1EZi/s7gD2pm6W81k5F+pFXj6\n\tHSWg/VIYkwKHf1Skes3Mf00Tg6zvEzWHfpskpyhex7IqHVwL2R8ScJs3BY05mHY8ii/O9xjm9qj\n\tV7SIp6rV50Xev4fQBRZI2rOtPCGoRDJ3gbf+e03NtVCad04rqjZFiQwhYTVe4RdaTrdrnYE1f8J\n\tpypkkldsNW/Iy7+wQQoQHZ7tYw==","X-Google-Smtp-Source":"=?utf-8?q?AGHT+IEUwzPO8tTUiCeAD0fO+J3bUitlNQubQuvJO?=\n\t=?utf-8?q?Y/6k24gRJevylhbFRRXFr4FMh5rQGWAvz0fXA=3D=3D?=","X-Received":"by 2002:a05:600c:19cc:b0:436:fb9e:26c with SMTP id\n\t5b1f17b1804b1-438913de937mr203978545e9.17.1737557633585; Wed, 22 Jan\n\t2025 06:53:53 -0800 (PST)","From":"David Plowman <david.plowman@raspberrypi.com>","To":"libcamera-devel@lists.libcamera.org","Cc":"David Plowman <david.plowman@raspberrypi.com>,\n\tKieran Bingham <kieran.bingham@ideasonboard.com>,\n\tNaushir Patuck <naush@raspberrypi.com>,\n\tLaurent Pinchart <laurent.pinchart@ideasonboard.com>","Subject":"[PATCH v4 1/7] controls: Add FrameWallClock control","Date":"Wed, 22 Jan 2025 14:53:43 +0000","Message-Id":"<20250122145349.7220-2-david.plowman@raspberrypi.com>","X-Mailer":"git-send-email 2.39.5","In-Reply-To":"<20250122145349.7220-1-david.plowman@raspberrypi.com>","References":"<20250122145349.7220-1-david.plowman@raspberrypi.com>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-TUID":"UiUOg+CTxXPG","Resent-From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","Resent-To":"parsemail@patchwork.libcamera.org"},"content":"Add a FrameWallClock control that reports the same moment as the\nframe's SensorTimestamp, but in wallclock units.\n\nSigned-off-by: David Plowman <david.plowman@raspberrypi.com>\nReviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\nReviewed-by: Naushir Patuck <naush@raspberrypi.com>\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\n---\n src/libcamera/control_ids_core.yaml | 19 ++++++++++++++++---\n 1 file changed, 16 insertions(+), 3 deletions(-)","diff":"diff --git a/src/libcamera/control_ids_core.yaml b/src/libcamera/control_ids_core.yaml\nindex aa744864..028919ef 100644\n--- a/src/libcamera/control_ids_core.yaml\n+++ b/src/libcamera/control_ids_core.yaml\n@@ -1,6 +1,4 @@\n-# SPDX-License-Identifier: LGPL-2.1-or-later\n-#\n-# Copyright (C) 2019, Google Inc.\n+\n #\n %YAML 1.1\n ---\n@@ -1268,4 +1266,19 @@ controls:\n       description: |\n         Enable or disable the debug metadata.\n \n+  - FrameWallClock:\n+      type: int64_t\n+      direction: out\n+      description: |\n+        This timestamp corresponds to the same moment in time as the\n+        SensorTimestamp, but is represented as a wall clock time as measured by\n+        the CLOCK_REALTIME clock.\n+\n+        Being a wall clock measurement, it can be used to synchronise timing\n+        across different devices.\n+\n+        \\sa SensorTimestamp\n+\n+        The FrameWallClock control can only be returned in metadata.\n+\n ...\n","prefixes":["v4","1/7"]}