From dc51f96b3ff16bec5db81ccddd61481e2236b7cb Mon Sep 17 00:00:00 2001 From: f4exb Date: Tue, 4 Sep 2018 22:28:10 +0200 Subject: [PATCH] SDRDaemonSinkOutput: set initial conditions of sample rate control at start --- plugins/samplesink/sdrdaemonsink/sdrdaemonsinkoutput.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkoutput.cpp b/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkoutput.cpp index d6f84c3d5..026e1c112 100644 --- a/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkoutput.cpp +++ b/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkoutput.cpp @@ -91,6 +91,9 @@ bool SDRdaemonSinkOutput::start() m_sdrDaemonSinkThread->connectTimer(m_masterTimer); m_sdrDaemonSinkThread->startWork(); + m_lastRemoteTimestampRateCorrection = 0; + m_lastTimestampRateCorrection = 0; + double delay = ((127*127*m_settings.m_txDelay) / m_settings.m_sampleRate)/(128 + m_settings.m_nbFECBlocks); m_sdrDaemonSinkThread->setTxDelay((int) (delay*1e6)); @@ -542,6 +545,8 @@ void SDRdaemonSinkOutput::analyzeApiReply(const QJsonObject& jsonObject) { m_lastRemoteTimestampRateCorrection = remoteTimestampUs; m_lastTimestampRateCorrection = timestampUs; + m_nbRemoteSamplesSinceRateCorrection = 0; + m_nbSamplesSinceRateCorrection = 0; } else {