From 42e139e63e8a6908e906026353ccd201692f76b3 Mon Sep 17 00:00:00 2001 From: f4exb Date: Tue, 15 Mar 2016 21:22:12 +0100 Subject: [PATCH] SDRdaemon plugin: switchable auto skwew rate following --- .../samplesource/sdrdaemon/sdrdaemonbuffer.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/plugins/samplesource/sdrdaemon/sdrdaemonbuffer.cpp b/plugins/samplesource/sdrdaemon/sdrdaemonbuffer.cpp index 62b6d2369..cf4be7568 100644 --- a/plugins/samplesource/sdrdaemon/sdrdaemonbuffer.cpp +++ b/plugins/samplesource/sdrdaemon/sdrdaemonbuffer.cpp @@ -176,11 +176,18 @@ bool SDRdaemonBuffer::readMeta(char *array, uint32_t length) } // auto skew rate compensation - if (m_skewCorrection) + if (m_autoFollowRate) { - uint64_t newRate = (m_sampleRate * m_writeCount) / (m_readCount * m_iqSampleSize); - m_sampleRate = newRate * m_iqSampleSize; // ensure it is a multiple of the I/Q sample size - resetIndexes(); + if (m_skewCorrection) + { + uint64_t newRate = (m_sampleRate * m_writeCount) / (m_readCount * m_iqSampleSize); + m_sampleRate = newRate * m_iqSampleSize; // ensure it is a multiple of the I/Q sample size + resetIndexes(); + } + } + else + { + m_sampleRate = sampleRate; } if (metaData->m_sampleBytes & 0x10)