3.4. Can you explain the details of Custom Timestamp?#

The following times are recorded in the RTP packet for each mode:

ID

timestamp

timestamp_capture

frame

explain

0

0

-

-

Custom timestamp disabled (General RTP header Time is recorded)

1

1

0

1

Custom timestamp enabled, records the start time of RTP packet generation

2

1

0

0

Custom timestamp enabled, records the end time of RTP packet generation

3

1

1

-

Custom timestamp enabled, records the time when the fsync trigger is output from the GMSL2-10GbEthernet board to the camera (≒ Time of start camera shutter)

The custom timestamp is constructed as follows: 96 bits possible in total:

  • 48b - MSBs from [95:48] for seconds representation

  • 32b - [47:16] for nanoseconds representation

  • 16b - [15:0] for fractions of nanoseconds representation

Thus the RTP header will contain the following set of data when used with custom_timestamp:

  • RTP header’s timestamp - 32b all for the 32b of MSBs from the seconds-related portion of the timestamp array

  • RTP header’s SSRC_ID - 32b - 16b - MSBs [31:16] for low part of the seconds on 16b, and the rest for the high part of the nanoseconds representation

  • Additional RTP header’s CSRC_ID (only one in this case by using a CSRC count == 1 and a first CSRC field with 32b added to the packet - resulting a larger packet dimension) - 16b for the low part of the nanoseconds and 16b for the fractions of nanoseconds representation