Hi,
As things stand, the frame's timestamp (with system clock) is taken when a UV3 leader packet (which precedes image payload packets) lands on the host :
|
ctx->buffer->priv->system_timestamp_ns = g_get_real_time () * 1000LL; |
However, the current documentation of arv_buffer_get_system_timestamp() :
https://aravisproject.github.io/docs/aravis-0.8/ArvBuffer.html#arv-buffer-get-system-timestamp
specifies that the "timestamp is for when the frame was received". To me this is confusing : when I read that, I expect the full frame being received on the host. But from my understanding, receiving a UV3 leader packet does not guarantee that the full frame is already received. Should we instead timestamp when the trailer packet is received ?
Hi,
As things stand, the frame's timestamp (with system clock) is taken when a UV3 leader packet (which precedes image payload packets) lands on the host :
aravis/src/arvuvstream.c
Line 192 in 98c2d79
However, the current documentation of arv_buffer_get_system_timestamp() :
https://aravisproject.github.io/docs/aravis-0.8/ArvBuffer.html#arv-buffer-get-system-timestamp
specifies that the "timestamp is for when the frame was received". To me this is confusing : when I read that, I expect the full frame being received on the host. But from my understanding, receiving a UV3 leader packet does not guarantee that the full frame is already received. Should we instead timestamp when the trailer packet is received ?