1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-01 13:47:01 -04:00

FCD: implemented decimation

This commit is contained in:
f4exb
2019-01-04 15:12:35 +01:00
parent b5a7425f1e
commit 050ae9d2e8
19 changed files with 260 additions and 46 deletions
+14 -2
View File
@@ -235,7 +235,7 @@ const QString& FCDProInput::getDeviceDescription() const
int FCDProInput::getSampleRate() const
{
return fcd_traits<Pro>::sampleRate;
return fcd_traits<Pro>::sampleRate/(1<<m_settings.m_log2Decim);
}
quint64 FCDProInput::getCenterFrequency() const
@@ -354,6 +354,18 @@ void FCDProInput::applySettings(const FCDProSettings& settings, bool force)
m_settings.m_centerFrequency = settings.m_centerFrequency;
}
if ((m_settings.m_log2Decim != settings.m_log2Decim) || force)
{
reverseAPIKeys.append("log2Decim");
forwardChange = true;
if (m_FCDThread != 0)
{
m_FCDThread->setLog2Decimation(settings.m_log2Decim);
qDebug() << "FCDProInput::applySettings: set decimation to " << (1<<settings.m_log2Decim);
}
}
if ((m_settings.m_lnaGainIndex != settings.m_lnaGainIndex) || force)
{
reverseAPIKeys.append("lnaGainIndex");
@@ -533,7 +545,7 @@ void FCDProInput::applySettings(const FCDProSettings& settings, bool force)
if (forwardChange)
{
DSPSignalNotification *notif = new DSPSignalNotification(fcd_traits<Pro>::sampleRate, m_settings.m_centerFrequency);
DSPSignalNotification *notif = new DSPSignalNotification(fcd_traits<Pro>::sampleRate/(1<<m_settings.m_log2Decim), m_settings.m_centerFrequency);
m_fileSink->handleMessage(*notif); // forward to file sink
m_deviceAPI->getDeviceEngineInputMessageQueue()->push(notif);
}