Re: UTC timestamps in v4l2 buffers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le vendredi 08 janvier 2021 à 13:53 +0100, Philippe De Muyter a écrit :
> Hello,
> 
> I need to have the v4l2 buffers of my camera sensor timestamped with a
> precise (1ms) UTC timestamp, in order to be able to match images from cameras
> from several computers (that are of course synchronised with NTP, GPS or PTP).
> 
> While I had that some years ago and still have in computers running
> freescale's 4.1.15 port for imx6q, I have now discovered that 8 years ago
> a decision has been taken by the v4l2 maintainers to switch the timestamp
> of the v4l2 buffers to CLOCK_MONOTONIC, which is useless when one needs
> to synchronise timestamps of images taken by cameras on different computers,
> which of course were not booted at the same time.
> 
> At that time a new flag "V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC" was introduced
> to tell new users that the timestamp was no more the old and not standardized
> behaviour for timestamp, but the new CLOCK_MONOTONIC-based timestamp, but
> no other flag for UTC or way to choose which kind of timestamp one wants.
> 
> Are there since then new standardized or work-in-progess flag to tell users
> that the timestamp is UTC, and way to ask the camera-acquisistion driver to
> give that UTC timestamp instead of the CLOCK_MONOTONIC one ?

Considering the CLOCK_MONOTONIC and CLOCK_REALTIME have the same slope (respond
to adjtime), you can probably just sample both clock in your application in
order to maintain a delta between both clocks. The more often your sample it,
the more precise you can derive. Don't forget to read REALTIME/MONOTONIC and
MONOTONIC/REALTIME orders, so you can averate to the real value. (GStreamer
needs to be improved in this regard).

> 
> Best regards.
> 
> Philippe
> 





[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux