From e8a8ef6f3d4c2caaf74cf7832eda505ba00258e9 Mon Sep 17 00:00:00 2001 From: Andreas Baulig Date: Wed, 4 Aug 2021 13:38:42 +0000 Subject: [PATCH] Switch FileRecord timestamp resolution to milliseconds --- plugins/samplesink/fileoutput/fileoutput.cpp | 5 +++-- plugins/samplesink/fileoutput/fileoutput.h | 2 +- plugins/samplesource/fileinput/fileinputgui.cpp | 4 ++-- sdrbase/dsp/filerecord.cpp | 4 ++-- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/plugins/samplesink/fileoutput/fileoutput.cpp b/plugins/samplesink/fileoutput/fileoutput.cpp index 718aed34d..cba8e6407 100644 --- a/plugins/samplesink/fileoutput/fileoutput.cpp +++ b/plugins/samplesink/fileoutput/fileoutput.cpp @@ -19,6 +19,7 @@ #include #include #include +#include #include "SWGDeviceSettings.h" #include "SWGDeviceState.h" @@ -74,8 +75,8 @@ void FileOutput::openFileStream() int actualSampleRate = m_settings.m_sampleRate * (1<relTimeText->setText(s_timems); - qint64 startingTimeStampMsec = m_startingTimeStamp * 1000LL; - QDateTime dt = QDateTime::fromMSecsSinceEpoch(startingTimeStampMsec); + qint64 startingTimeStampMsec = m_startingTimeStamp; + QDateTime dt = QDateTime::fromMSecsSinceEpoch(startingTimeStampMsec); dt = dt.addSecs(t_sec); dt = dt.addMSecs(t_msec); QString s_date = dt.toString("yyyy-MM-dd HH:mm:ss.zzz"); diff --git a/sdrbase/dsp/filerecord.cpp b/sdrbase/dsp/filerecord.cpp index 899eed818..84b05052b 100644 --- a/sdrbase/dsp/filerecord.cpp +++ b/sdrbase/dsp/filerecord.cpp @@ -183,8 +183,8 @@ void FileRecord::writeHeader() Header header; header.sampleRate = m_sampleRate; header.centerFrequency = m_centerFrequency; - std::time_t ts = time(0); - header.startTimeStamp = ts + (m_msShift / 1000); + qint64 ts = QDateTime::currentMSecsSinceEpoch(); + header.startTimeStamp = (quint64)(ts + m_msShift); header.sampleSize = SDR_RX_SAMP_SZ; header.filler = 0;