[1/4] controls: Add FrameWallClock control
diff mbox series

Message ID 20250619100857.124809-2-naush@raspberrypi.com
State Accepted
Commit 6a09deaf7d4a402051ee86ddc83d5af18e92eec9
Headers show
Series
  • Wallclock support
Related show

Commit Message

Naushir Patuck June 19, 2025, 10:05 a.m. UTC
From: David Plowman <david.plowman@raspberrypi.com>

Add a FrameWallClock control that reports the same moment as the
frame's SensorTimestamp, but in wallclock units.

Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
---
 src/libcamera/control_ids_core.yaml | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

Comments

Barnabás Pőcze June 19, 2025, 11:07 a.m. UTC | #1
Hi

2025. 06. 19. 12:05 keltezéssel, Naushir Patuck írta:
> From: David Plowman <david.plowman@raspberrypi.com>
> 
> Add a FrameWallClock control that reports the same moment as the
> frame's SensorTimestamp, but in wallclock units.
> 
> Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> ---
>   src/libcamera/control_ids_core.yaml | 19 ++++++++++++++++---
>   1 file changed, 16 insertions(+), 3 deletions(-)
> 
> diff --git a/src/libcamera/control_ids_core.yaml b/src/libcamera/control_ids_core.yaml
> index aa7448645880..028919ef3d3e 100644
> --- a/src/libcamera/control_ids_core.yaml
> +++ b/src/libcamera/control_ids_core.yaml
> @@ -1,6 +1,4 @@
> -# SPDX-License-Identifier: LGPL-2.1-or-later
> -#
> -# Copyright (C) 2019, Google Inc.
> +
>   #
>   %YAML 1.1
>   ---
> @@ -1268,4 +1266,19 @@ controls:
>         description: |
>           Enable or disable the debug metadata.
>   
> +  - FrameWallClock:
> +      type: int64_t
> +      direction: out
> +      description: |
> +        This timestamp corresponds to the same moment in time as the
> +        SensorTimestamp, but is represented as a wall clock time as measured by
> +        the CLOCK_REALTIME clock.

`SensorTimestamp` is in nanoseconds, but based on the last patch, this is in microseconds.
This should be clarified, or ideally, the two should use the same unit. Or am I missing
something?


Regards,
Barnabás Pőcze

> +
> +        Being a wall clock measurement, it can be used to synchronise timing
> +        across different devices.
> +
> +        \sa SensorTimestamp
> +
> +        The FrameWallClock control can only be returned in metadata.
> +
>   ...
Kieran Bingham June 19, 2025, 11:08 a.m. UTC | #2
Quoting Naushir Patuck (2025-06-19 11:05:53)
> From: David Plowman <david.plowman@raspberrypi.com>
> 
> Add a FrameWallClock control that reports the same moment as the
> frame's SensorTimestamp, but in wallclock units.
> 
> Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> ---
>  src/libcamera/control_ids_core.yaml | 19 ++++++++++++++++---
>  1 file changed, 16 insertions(+), 3 deletions(-)
> 
> diff --git a/src/libcamera/control_ids_core.yaml b/src/libcamera/control_ids_core.yaml
> index aa7448645880..028919ef3d3e 100644
> --- a/src/libcamera/control_ids_core.yaml
> +++ b/src/libcamera/control_ids_core.yaml
> @@ -1,6 +1,4 @@
> -# SPDX-License-Identifier: LGPL-2.1-or-later
> -#
> -# Copyright (C) 2019, Google Inc.
> +

ARGH.

And of course only after merging do I notice this change ...

How come the copyrights are removed here. I don't think that was
intentional - but I'm also not sure if this was accurate or correct now?

--
Kieran


>  #
>  %YAML 1.1
>  ---
> @@ -1268,4 +1266,19 @@ controls:
>        description: |
>          Enable or disable the debug metadata.
>  
> +  - FrameWallClock:
> +      type: int64_t
> +      direction: out
> +      description: |
> +        This timestamp corresponds to the same moment in time as the
> +        SensorTimestamp, but is represented as a wall clock time as measured by
> +        the CLOCK_REALTIME clock.
> +
> +        Being a wall clock measurement, it can be used to synchronise timing
> +        across different devices.
> +
> +        \sa SensorTimestamp
> +
> +        The FrameWallClock control can only be returned in metadata.
> +
>  ...
> -- 
> 2.43.0
>
Naushir Patuck June 19, 2025, 11:37 a.m. UTC | #3
On Thu, 19 Jun 2025 at 12:08, Kieran Bingham
<kieran.bingham@ideasonboard.com> wrote:
>
> Quoting Naushir Patuck (2025-06-19 11:05:53)
> > From: David Plowman <david.plowman@raspberrypi.com>
> >
> > Add a FrameWallClock control that reports the same moment as the
> > frame's SensorTimestamp, but in wallclock units.
> >
> > Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
> > Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> > Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> > ---
> >  src/libcamera/control_ids_core.yaml | 19 ++++++++++++++++---
> >  1 file changed, 16 insertions(+), 3 deletions(-)
> >
> > diff --git a/src/libcamera/control_ids_core.yaml b/src/libcamera/control_ids_core.yaml
> > index aa7448645880..028919ef3d3e 100644
> > --- a/src/libcamera/control_ids_core.yaml
> > +++ b/src/libcamera/control_ids_core.yaml
> > @@ -1,6 +1,4 @@
> > -# SPDX-License-Identifier: LGPL-2.1-or-later
> > -#
> > -# Copyright (C) 2019, Google Inc.
> > +
>
> ARGH.
>
> And of course only after merging do I notice this change ...
>
> How come the copyrights are removed here. I don't think that was
> intentional - but I'm also not sure if this was accurate or correct now?

Groan, I missed that. :(  I can send a correction!

>
> --
> Kieran
>
>
> >  #
> >  %YAML 1.1
> >  ---
> > @@ -1268,4 +1266,19 @@ controls:
> >        description: |
> >          Enable or disable the debug metadata.
> >
> > +  - FrameWallClock:
> > +      type: int64_t
> > +      direction: out
> > +      description: |
> > +        This timestamp corresponds to the same moment in time as the
> > +        SensorTimestamp, but is represented as a wall clock time as measured by
> > +        the CLOCK_REALTIME clock.
> > +
> > +        Being a wall clock measurement, it can be used to synchronise timing
> > +        across different devices.
> > +
> > +        \sa SensorTimestamp
> > +
> > +        The FrameWallClock control can only be returned in metadata.
> > +
> >  ...
> > --
> > 2.43.0
> >
Kieran Bingham June 19, 2025, 11:46 a.m. UTC | #4
Quoting Naushir Patuck (2025-06-19 12:37:40)
> On Thu, 19 Jun 2025 at 12:08, Kieran Bingham
> <kieran.bingham@ideasonboard.com> wrote:
> >
> > Quoting Naushir Patuck (2025-06-19 11:05:53)
> > > From: David Plowman <david.plowman@raspberrypi.com>
> > >
> > > Add a FrameWallClock control that reports the same moment as the
> > > frame's SensorTimestamp, but in wallclock units.
> > >
> > > Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
> > > Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
> > > Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
> > > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> > > ---
> > >  src/libcamera/control_ids_core.yaml | 19 ++++++++++++++++---
> > >  1 file changed, 16 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/src/libcamera/control_ids_core.yaml b/src/libcamera/control_ids_core.yaml
> > > index aa7448645880..028919ef3d3e 100644
> > > --- a/src/libcamera/control_ids_core.yaml
> > > +++ b/src/libcamera/control_ids_core.yaml
> > > @@ -1,6 +1,4 @@
> > > -# SPDX-License-Identifier: LGPL-2.1-or-later
> > > -#
> > > -# Copyright (C) 2019, Google Inc.
> > > +
> >
> > ARGH.
> >
> > And of course only after merging do I notice this change ...
> >
> > How come the copyrights are removed here. I don't think that was
> > intentional - but I'm also not sure if this was accurate or correct now?
> 
> Groan, I missed that. :(  I can send a correction!

Sorry, Already did! - I should have added you on cc.

https://patchwork.libcamera.org/patch/23606/

> 
> >
> > --
> > Kieran
> >
> >
> > >  #
> > >  %YAML 1.1
> > >  ---
> > > @@ -1268,4 +1266,19 @@ controls:
> > >        description: |
> > >          Enable or disable the debug metadata.
> > >
> > > +  - FrameWallClock:
> > > +      type: int64_t
> > > +      direction: out
> > > +      description: |
> > > +        This timestamp corresponds to the same moment in time as the
> > > +        SensorTimestamp, but is represented as a wall clock time as measured by
> > > +        the CLOCK_REALTIME clock.
> > > +
> > > +        Being a wall clock measurement, it can be used to synchronise timing
> > > +        across different devices.
> > > +
> > > +        \sa SensorTimestamp
> > > +
> > > +        The FrameWallClock control can only be returned in metadata.
> > > +
> > >  ...
> > > --
> > > 2.43.0
> > >

Patch
diff mbox series

diff --git a/src/libcamera/control_ids_core.yaml b/src/libcamera/control_ids_core.yaml
index aa7448645880..028919ef3d3e 100644
--- a/src/libcamera/control_ids_core.yaml
+++ b/src/libcamera/control_ids_core.yaml
@@ -1,6 +1,4 @@ 
-# SPDX-License-Identifier: LGPL-2.1-or-later
-#
-# Copyright (C) 2019, Google Inc.
+
 #
 %YAML 1.1
 ---
@@ -1268,4 +1266,19 @@  controls:
       description: |
         Enable or disable the debug metadata.
 
+  - FrameWallClock:
+      type: int64_t
+      direction: out
+      description: |
+        This timestamp corresponds to the same moment in time as the
+        SensorTimestamp, but is represented as a wall clock time as measured by
+        the CLOCK_REALTIME clock.
+
+        Being a wall clock measurement, it can be used to synchronise timing
+        across different devices.
+
+        \sa SensorTimestamp
+
+        The FrameWallClock control can only be returned in metadata.
+
 ...