mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-05-28 21:12:26 -04:00
All concerned demods: call applyChannelSettings with force=true at construction and start.
This commit is contained in:
parent
0af04cf66f
commit
6885dd1fe6
@ -67,6 +67,7 @@ AMDemod::AMDemod(DeviceSourceAPI *deviceAPI) :
|
|||||||
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
||||||
m_deviceAPI->addChannelAPI(this);
|
m_deviceAPI->addChannelAPI(this);
|
||||||
|
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
applySettings(m_settings, true);
|
applySettings(m_settings, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -133,6 +134,7 @@ void AMDemod::start()
|
|||||||
qDebug("AMDemod::start");
|
qDebug("AMDemod::start");
|
||||||
m_squelchCount = 0;
|
m_squelchCount = 0;
|
||||||
m_audioFifo.clear();
|
m_audioFifo.clear();
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AMDemod::stop()
|
void AMDemod::stop()
|
||||||
@ -181,19 +183,19 @@ bool AMDemod::handleMessage(const Message& cmd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset)
|
void AMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force)
|
||||||
{
|
{
|
||||||
qDebug() << "AMDemod::applyChannelSettings:"
|
qDebug() << "AMDemod::applyChannelSettings:"
|
||||||
<< " inputSampleRate: " << inputSampleRate
|
<< " inputSampleRate: " << inputSampleRate
|
||||||
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
||||||
|
|
||||||
if ((m_inputFrequencyOffset != inputFrequencyOffset) ||
|
if ((m_inputFrequencyOffset != inputFrequencyOffset) ||
|
||||||
(m_inputSampleRate != inputSampleRate))
|
(m_inputSampleRate != inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_inputSampleRate != inputSampleRate)
|
if ((m_inputSampleRate != inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_settingsMutex.lock();
|
m_settingsMutex.lock();
|
||||||
m_interpolator.create(16, inputSampleRate, m_settings.m_rfBandwidth / 2.2f);
|
m_interpolator.create(16, inputSampleRate, m_settings.m_rfBandwidth / 2.2f);
|
||||||
|
@ -156,7 +156,7 @@ private:
|
|||||||
|
|
||||||
QMutex m_settingsMutex;
|
QMutex m_settingsMutex;
|
||||||
|
|
||||||
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset);
|
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force = false);
|
||||||
void applySettings(const AMDemodSettings& settings, bool force = false);
|
void applySettings(const AMDemodSettings& settings, bool force = false);
|
||||||
|
|
||||||
void processOneSample(Complex &ci)
|
void processOneSample(Complex &ci)
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
const PluginDescriptor AMDemodPlugin::m_pluginDescriptor = {
|
const PluginDescriptor AMDemodPlugin::m_pluginDescriptor = {
|
||||||
QString("AM Demodulator"),
|
QString("AM Demodulator"),
|
||||||
QString("3.9.0"),
|
QString("3.10.1"),
|
||||||
QString("(c) Edouard Griffiths, F4EXB"),
|
QString("(c) Edouard Griffiths, F4EXB"),
|
||||||
QString("https://github.com/f4exb/sdrangel"),
|
QString("https://github.com/f4exb/sdrangel"),
|
||||||
true,
|
true,
|
||||||
|
@ -91,6 +91,7 @@ BFMDemod::BFMDemod(DeviceSourceAPI *deviceAPI) :
|
|||||||
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
||||||
m_deviceAPI->addChannelAPI(this);
|
m_deviceAPI->addChannelAPI(this);
|
||||||
|
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
applySettings(m_settings, true);
|
applySettings(m_settings, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -300,6 +301,7 @@ void BFMDemod::start()
|
|||||||
m_squelchState = 0;
|
m_squelchState = 0;
|
||||||
m_audioFifo.clear();
|
m_audioFifo.clear();
|
||||||
m_phaseDiscri.reset();
|
m_phaseDiscri.reset();
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void BFMDemod::stop()
|
void BFMDemod::stop()
|
||||||
@ -363,19 +365,19 @@ bool BFMDemod::handleMessage(const Message& cmd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void BFMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset)
|
void BFMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force)
|
||||||
{
|
{
|
||||||
qDebug() << "BFMDemod::applyChannelSettings:"
|
qDebug() << "BFMDemod::applyChannelSettings:"
|
||||||
<< " inputSampleRate: " << inputSampleRate
|
<< " inputSampleRate: " << inputSampleRate
|
||||||
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
||||||
|
|
||||||
if((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
if((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
||||||
(inputSampleRate != m_inputSampleRate))
|
(inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (inputSampleRate != m_inputSampleRate)
|
if ((inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_pilotPLL.configure(19000.0/inputSampleRate, 50.0/inputSampleRate, 0.01);
|
m_pilotPLL.configure(19000.0/inputSampleRate, 50.0/inputSampleRate, 0.01);
|
||||||
|
|
||||||
|
@ -225,7 +225,7 @@ private:
|
|||||||
|
|
||||||
static const int m_udpBlockSize;
|
static const int m_udpBlockSize;
|
||||||
|
|
||||||
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset);
|
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force = false);
|
||||||
void applySettings(const BFMDemodSettings& settings, bool force = false);
|
void applySettings(const BFMDemodSettings& settings, bool force = false);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
const PluginDescriptor BFMPlugin::m_pluginDescriptor = {
|
const PluginDescriptor BFMPlugin::m_pluginDescriptor = {
|
||||||
QString("Broadcast FM Demodulator"),
|
QString("Broadcast FM Demodulator"),
|
||||||
QString("3.9.0"),
|
QString("3.10.1"),
|
||||||
QString("(c) Edouard Griffiths, F4EXB"),
|
QString("(c) Edouard Griffiths, F4EXB"),
|
||||||
QString("https://github.com/f4exb/sdrangel"),
|
QString("https://github.com/f4exb/sdrangel"),
|
||||||
true,
|
true,
|
||||||
|
@ -86,6 +86,7 @@ DSDDemod::DSDDemod(DeviceSourceAPI *deviceAPI) :
|
|||||||
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
||||||
m_deviceAPI->addChannelAPI(this);
|
m_deviceAPI->addChannelAPI(this);
|
||||||
|
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
applySettings(m_settings, true);
|
applySettings(m_settings, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -313,6 +314,7 @@ void DSDDemod::start()
|
|||||||
m_audioFifo1.clear();
|
m_audioFifo1.clear();
|
||||||
m_audioFifo2.clear();
|
m_audioFifo2.clear();
|
||||||
m_phaseDiscri.reset();
|
m_phaseDiscri.reset();
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void DSDDemod::stop()
|
void DSDDemod::stop()
|
||||||
@ -365,19 +367,19 @@ bool DSDDemod::handleMessage(const Message& cmd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DSDDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset)
|
void DSDDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force)
|
||||||
{
|
{
|
||||||
qDebug() << "DSDDemod::applyChannelSettings:"
|
qDebug() << "DSDDemod::applyChannelSettings:"
|
||||||
<< " inputSampleRate: " << inputSampleRate
|
<< " inputSampleRate: " << inputSampleRate
|
||||||
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
||||||
|
|
||||||
if ((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
if ((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
||||||
(inputSampleRate != m_inputSampleRate))
|
(inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (inputSampleRate != m_inputSampleRate)
|
if ((inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_settingsMutex.lock();
|
m_settingsMutex.lock();
|
||||||
m_interpolator.create(16, inputSampleRate, (m_settings.m_rfBandwidth) / 2.2);
|
m_interpolator.create(16, inputSampleRate, (m_settings.m_rfBandwidth) / 2.2);
|
||||||
|
@ -202,7 +202,7 @@ private:
|
|||||||
|
|
||||||
static const int m_udpBlockSize;
|
static const int m_udpBlockSize;
|
||||||
|
|
||||||
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset);
|
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force = false);
|
||||||
void applySettings(const DSDDemodSettings& settings, bool force = false);
|
void applySettings(const DSDDemodSettings& settings, bool force = false);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
const PluginDescriptor DSDDemodPlugin::m_pluginDescriptor = {
|
const PluginDescriptor DSDDemodPlugin::m_pluginDescriptor = {
|
||||||
QString("DSD Demodulator"),
|
QString("DSD Demodulator"),
|
||||||
QString("3.9.1"),
|
QString("3.10.1"),
|
||||||
QString("(c) Edouard Griffiths, F4EXB"),
|
QString("(c) Edouard Griffiths, F4EXB"),
|
||||||
QString("https://github.com/f4exb/sdrangel"),
|
QString("https://github.com/f4exb/sdrangel"),
|
||||||
true,
|
true,
|
||||||
|
@ -86,6 +86,7 @@ NFMDemod::NFMDemod(DeviceSourceAPI *devieAPI) :
|
|||||||
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
||||||
m_deviceAPI->addChannelAPI(this);
|
m_deviceAPI->addChannelAPI(this);
|
||||||
|
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
applySettings(m_settings, true);
|
applySettings(m_settings, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -315,6 +316,7 @@ void NFMDemod::start()
|
|||||||
m_squelchCount = 0;
|
m_squelchCount = 0;
|
||||||
m_audioFifo.clear();
|
m_audioFifo.clear();
|
||||||
m_phaseDiscri.reset();
|
m_phaseDiscri.reset();
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void NFMDemod::stop()
|
void NFMDemod::stop()
|
||||||
@ -361,19 +363,19 @@ bool NFMDemod::handleMessage(const Message& cmd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void NFMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset)
|
void NFMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force)
|
||||||
{
|
{
|
||||||
qDebug() << "NFMDemod::applyChannelSettings:"
|
qDebug() << "NFMDemod::applyChannelSettings:"
|
||||||
<< " inputSampleRate: " << inputSampleRate
|
<< " inputSampleRate: " << inputSampleRate
|
||||||
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
||||||
|
|
||||||
if ((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
if ((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
||||||
(inputSampleRate != m_inputSampleRate))
|
(inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (inputSampleRate != m_inputSampleRate)
|
if ((inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_settingsMutex.lock();
|
m_settingsMutex.lock();
|
||||||
m_interpolator.create(16, inputSampleRate, m_settings.m_rfBandwidth / 2.2);
|
m_interpolator.create(16, inputSampleRate, m_settings.m_rfBandwidth / 2.2);
|
||||||
|
@ -220,7 +220,7 @@ private:
|
|||||||
static const int m_udpBlockSize;
|
static const int m_udpBlockSize;
|
||||||
|
|
||||||
// void apply(bool force = false);
|
// void apply(bool force = false);
|
||||||
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset);
|
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force = false);
|
||||||
void applySettings(const NFMDemodSettings& settings, bool force = false);
|
void applySettings(const NFMDemodSettings& settings, bool force = false);
|
||||||
void webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& response, const NFMDemodSettings& settings);
|
void webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& response, const NFMDemodSettings& settings);
|
||||||
};
|
};
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
const PluginDescriptor NFMPlugin::m_pluginDescriptor = {
|
const PluginDescriptor NFMPlugin::m_pluginDescriptor = {
|
||||||
QString("NFM Demodulator"),
|
QString("NFM Demodulator"),
|
||||||
QString("3.9.0"),
|
QString("3.10.1"),
|
||||||
QString("(c) Edouard Griffiths, F4EXB"),
|
QString("(c) Edouard Griffiths, F4EXB"),
|
||||||
QString("https://github.com/f4exb/sdrangel"),
|
QString("https://github.com/f4exb/sdrangel"),
|
||||||
true,
|
true,
|
||||||
|
@ -70,6 +70,7 @@ WFMDemod::WFMDemod(DeviceSourceAPI* deviceAPI) :
|
|||||||
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
||||||
m_deviceAPI->addChannelAPI(this);
|
m_deviceAPI->addChannelAPI(this);
|
||||||
|
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
applySettings(m_settings, true);
|
applySettings(m_settings, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -200,6 +201,7 @@ void WFMDemod::start()
|
|||||||
m_squelchState = 0;
|
m_squelchState = 0;
|
||||||
m_audioFifo.clear();
|
m_audioFifo.clear();
|
||||||
m_phaseDiscri.reset();
|
m_phaseDiscri.reset();
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void WFMDemod::stop()
|
void WFMDemod::stop()
|
||||||
@ -253,19 +255,19 @@ bool WFMDemod::handleMessage(const Message& cmd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void WFMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset)
|
void WFMDemod::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force)
|
||||||
{
|
{
|
||||||
qDebug() << "WFMDemod::applyChannelSettings:"
|
qDebug() << "WFMDemod::applyChannelSettings:"
|
||||||
<< " inputSampleRate: " << inputSampleRate
|
<< " inputSampleRate: " << inputSampleRate
|
||||||
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
||||||
|
|
||||||
if((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
if((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
||||||
(inputSampleRate != m_inputSampleRate))
|
(inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (inputSampleRate != m_inputSampleRate)
|
if ((inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
qDebug() << "WFMDemod::applyChannelSettings: m_interpolator.create";
|
qDebug() << "WFMDemod::applyChannelSettings: m_interpolator.create";
|
||||||
m_interpolator.create(16, inputSampleRate, m_settings.m_afBandwidth);
|
m_interpolator.create(16, inputSampleRate, m_settings.m_afBandwidth);
|
||||||
|
@ -167,7 +167,7 @@ private:
|
|||||||
|
|
||||||
static const int m_udpBlockSize;
|
static const int m_udpBlockSize;
|
||||||
|
|
||||||
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset);
|
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force = false);
|
||||||
void applySettings(const WFMDemodSettings& settings, bool force = false);
|
void applySettings(const WFMDemodSettings& settings, bool force = false);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
const PluginDescriptor WFMPlugin::m_pluginDescriptor = {
|
const PluginDescriptor WFMPlugin::m_pluginDescriptor = {
|
||||||
QString("WFM Demodulator"),
|
QString("WFM Demodulator"),
|
||||||
QString("3.9.0"),
|
QString("3.10.1"),
|
||||||
QString("(c) Edouard Griffiths, F4EXB"),
|
QString("(c) Edouard Griffiths, F4EXB"),
|
||||||
QString("https://github.com/f4exb/sdrangel"),
|
QString("https://github.com/f4exb/sdrangel"),
|
||||||
true,
|
true,
|
||||||
|
@ -102,6 +102,7 @@ UDPSrc::UDPSrc(DeviceSourceAPI *deviceAPI) :
|
|||||||
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
m_deviceAPI->addThreadedSink(m_threadedChannelizer);
|
||||||
m_deviceAPI->addChannelAPI(this);
|
m_deviceAPI->addChannelAPI(this);
|
||||||
|
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
applySettings(m_settings, true);
|
applySettings(m_settings, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -313,6 +314,7 @@ void UDPSrc::feed(const SampleVector::const_iterator& begin, const SampleVector:
|
|||||||
void UDPSrc::start()
|
void UDPSrc::start()
|
||||||
{
|
{
|
||||||
m_phaseDiscri.reset();
|
m_phaseDiscri.reset();
|
||||||
|
applyChannelSettings(m_inputSampleRate, m_inputFrequencyOffset, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void UDPSrc::stop()
|
void UDPSrc::stop()
|
||||||
@ -445,19 +447,19 @@ void UDPSrc::audioReadyRead()
|
|||||||
//qDebug("UDPSrc::audioReadyRead: done");
|
//qDebug("UDPSrc::audioReadyRead: done");
|
||||||
}
|
}
|
||||||
|
|
||||||
void UDPSrc::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset)
|
void UDPSrc::applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force)
|
||||||
{
|
{
|
||||||
qDebug() << "UDPSrc::applyChannelSettings:"
|
qDebug() << "UDPSrc::applyChannelSettings:"
|
||||||
<< " inputSampleRate: " << inputSampleRate
|
<< " inputSampleRate: " << inputSampleRate
|
||||||
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
<< " inputFrequencyOffset: " << inputFrequencyOffset;
|
||||||
|
|
||||||
if((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
if((inputFrequencyOffset != m_inputFrequencyOffset) ||
|
||||||
(inputSampleRate != m_inputSampleRate))
|
(inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
m_nco.setFreq(-inputFrequencyOffset, inputSampleRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (inputSampleRate != m_inputSampleRate)
|
if ((inputSampleRate != m_inputSampleRate) || force)
|
||||||
{
|
{
|
||||||
m_settingsMutex.lock();
|
m_settingsMutex.lock();
|
||||||
m_interpolator.create(16, inputSampleRate, m_settings.m_rfBandwidth / 2.0);
|
m_interpolator.create(16, inputSampleRate, m_settings.m_rfBandwidth / 2.0);
|
||||||
|
@ -198,7 +198,7 @@ protected:
|
|||||||
|
|
||||||
QMutex m_settingsMutex;
|
QMutex m_settingsMutex;
|
||||||
|
|
||||||
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset);
|
void applyChannelSettings(int inputSampleRate, int inputFrequencyOffset, bool force = true);
|
||||||
void applySettings(const UDPSrcSettings& settings, bool force = false);
|
void applySettings(const UDPSrcSettings& settings, bool force = false);
|
||||||
|
|
||||||
inline void calculateSquelch(double value)
|
inline void calculateSquelch(double value)
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
const PluginDescriptor UDPSrcPlugin::m_pluginDescriptor = {
|
const PluginDescriptor UDPSrcPlugin::m_pluginDescriptor = {
|
||||||
QString("UDP Channel Source"),
|
QString("UDP Channel Source"),
|
||||||
QString("3.9.0"),
|
QString("3.10.1"),
|
||||||
QString("(c) Edouard Griffiths, F4EXB"),
|
QString("(c) Edouard Griffiths, F4EXB"),
|
||||||
QString("https://github.com/f4exb/sdrangel"),
|
QString("https://github.com/f4exb/sdrangel"),
|
||||||
true,
|
true,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user