WFM modulator: do not go below 96 kHz for the channelizer sample rate. Attempt to fix CW problem

This commit is contained in:
f4exb 2017-01-05 11:37:57 +01:00
parent 20e08741ca
commit 4b89ac3360
3 changed files with 4 additions and 3 deletions

View File

@ -82,6 +82,7 @@ WFMMod::WFMMod() :
m_cwSmoother.setNbFadeSamples(m_config.m_outputSampleRate / 250); // 4 ms m_cwSmoother.setNbFadeSamples(m_config.m_outputSampleRate / 250); // 4 ms
m_cwKeyer.setWPM(13); m_cwKeyer.setWPM(13);
m_cwKeyer.setMode(CWKeyer::CWNone); m_cwKeyer.setMode(CWKeyer::CWNone);
m_cwKeyer.reset();
} }
WFMMod::~WFMMod() WFMMod::~WFMMod()
@ -426,6 +427,7 @@ void WFMMod::apply()
{ {
m_cwKeyer.setSampleRate(m_config.m_outputSampleRate); m_cwKeyer.setSampleRate(m_config.m_outputSampleRate);
m_cwSmoother.setNbFadeSamples(m_config.m_outputSampleRate / 250); // 4 ms m_cwSmoother.setNbFadeSamples(m_config.m_outputSampleRate / 250); // 4 ms
m_cwKeyer.reset();
} }
m_running.m_outputSampleRate = m_config.m_outputSampleRate; m_running.m_outputSampleRate = m_config.m_outputSampleRate;

View File

@ -42,9 +42,7 @@ const int WFMModGUI::m_nbRfBW = 14;
int WFMModGUI::requiredBW(int rfBW) int WFMModGUI::requiredBW(int rfBW)
{ {
if (rfBW <= 48000) if (rfBW < 96000)
return 48000;
else if (rfBW < 100000)
return 96000; return 96000;
else else
return 384000; return 384000;

View File

@ -66,6 +66,7 @@ public:
void setText(const QString& text); void setText(const QString& text);
void setMode(CWMode mode); void setMode(CWMode mode);
void setLoop(bool loop) { m_loop = loop; } void setLoop(bool loop) { m_loop = loop; }
void reset() { m_keyIambicState = KeySilent; }
int getSample(); int getSample();
bool eom(); bool eom();