DSD demod: show cosine filter output in scope if the filter is engaged

This commit is contained in:
f4exb 2016-08-19 19:30:32 +02:00
parent 2bd7f49259
commit 001cadae2a
2 changed files with 7 additions and 1 deletions

View File

@ -29,6 +29,7 @@ public:
~DSDDecoder();
void pushSample(short sample) { m_decoder.run(sample); }
short getFilteredSample() const { return m_decoder.getFilteredSample(); }
short *getAudio(int& nbSamples) { return m_decoder.getAudio(nbSamples); }
void resetAudio() { m_decoder.resetAudio(); }
void enableMbelib(bool enable) { m_decoder.enableMbelib(enable); }

View File

@ -155,6 +155,12 @@ void DSDDemod::feed(const SampleVector::const_iterator& begin, const SampleVecto
sample = 0;
}
m_dsdDecoder.pushSample(sample);
if (m_running.m_enableCosineFiltering) { // show actual input to FSK demod
sample = m_dsdDecoder.getFilteredSample();
}
if (m_sampleBufferIndex < (1<<17)) {
m_sampleBufferIndex++;
} else {
@ -171,7 +177,6 @@ void DSDDemod::feed(const SampleVector::const_iterator& begin, const SampleVecto
Sample s(sample, delayedSample); // I=signal, Q=signal delayed by 20 samples (2400 baud: lowest rate)
m_scopeSampleBuffer.push_back(s);
m_dsdDecoder.pushSample(sample);
if (DSPEngine::instance()->hasDVSerialSupport() && m_dsdDecoder.mbeDVReady())
{