We set the OceanInstuments SoundTrap ST600 (Firmware 4.0.0.7, Offloader 1.52, MSP 1.36) to record continuously, with 30 min. files every 30 min. When downloading the data, we selected the "Zero Fill Dropouts" options. Extracted WAV files come with associated XML files that contain the following information:
'SamplingStartTimeUTC': '2023-11-20T08:00:01'
'SamplingStartTimeSubS': '349411 us'
'SamplingTimePeriod': '1798941789 us'
'CumulativeSamplingGap': '23156 us'
'SampleCount': '345402320'
The SampleCount matches the actual number of samples in the WAV file. However, taking the samplerate (192000) into account, the file length (1798970416 us) does not match the SamplingTimePeriod. The difference (28627 us) does not match the CumulativeSampleGap. When computing the time difference of the StartTimes of two consecutive files, one gets yet another file length, but not any difference matches CumulativeSampleGap. (3 different file lengths computed, none difference matches CumulativeSampleGap).
I could not find any documentation. The clock drift should be better than 5ppm. The sample clock and the real time clock are derived from the same quartz. Therefore timing should be easy and consistent by just counting samples.
We deployed several SoundTraps and want to use them as an coherent array. We have precisely located the SoundTraps on the sea bottom and synchronized the recordings with external sounds every day. We need an accurate relation between sample number and time and therefore would need a gapless recording or at least know precisely about the gaps.
Does anyone have experience with concatenating files from ST600? Should we concatenate the files and ignore the timestamps? Or, should we fill the gaps in order to make the timestamps fit? What are these mysterious SampleGaps and how are they filled with zeros?