Fixed resampling bug + added waterfall colormap selection + general bugfix

This commit is contained in:
Ryzerth
2020-12-31 14:26:12 +01:00
parent 7c4e442432
commit 979928ded8
21 changed files with 399 additions and 46 deletions

View File

@ -42,7 +42,7 @@ public:
demod.init(&squelch.out);
agc.init(&demod.out, 1.0f / 125.0f);
agc.init(&demod.out, 20.0f, bbSampRate);
float audioBW = std::min<float>(audioSampRate / 2.0f, bw / 2.0f);
win.init(audioBW, audioBW, bbSampRate);
@ -151,6 +151,11 @@ private:
void setBandwidth(float bandWidth) {
bw = bandWidth;
_vfo->setBandwidth(bw);
float audioBW = std::min<float>(audioSampRate / 2.0f, bw / 2.0f);
win.setSampleRate(bbSampRate * resamp.getInterpolation());
win.setCutoff(audioBW);
win.setTransWidth(audioBW);
resamp.updateWindow(&win);
}
void setSnapInterval(float snapInt) {

View File

@ -53,7 +53,7 @@ public:
c2r.init(&xlator.out);
agc.init(&c2r.out, 1.0f / 125.0f);
agc.init(&c2r.out, 20.0f, audioSampRate);
m2s.init(&agc.out);
}
@ -104,6 +104,7 @@ public:
}
audioSampRate = sampleRate;
float audioBW = std::min<float>(audioSampRate / 2.0f, bw / 2.0f);
agc.setSampleRate(audioSampRate);
resamp.setOutSampleRate(audioSampRate);
win.setSampleRate(bbSampRate * resamp.getInterpolation());
win.setCutoff(audioBW);
@ -170,7 +171,7 @@ private:
const float bwMax = 500;
const float bwMin = 100;
const float bbSampRate = 500;
const float bbSampRate = 6000;
std::string uiPrefix;
float snapInterval = 10;

View File

@ -42,7 +42,7 @@ public:
demod.init(&squelch.out, bbSampRate, bandWidth, dsp::SSBDemod::MODE_DSB);
agc.init(&demod.out, 1.0f / 125.0f);
agc.init(&demod.out, 20.0f, bbSampRate);
float audioBW = std::min<float>(audioSampRate / 2.0f, bw / 2.0f);
win.init(audioBW, audioBW, bbSampRate);

View File

@ -42,7 +42,7 @@ public:
demod.init(&squelch.out, bbSampRate, bandWidth, dsp::SSBDemod::MODE_LSB);
agc.init(&demod.out, 1.0f / 125.0f);
agc.init(&demod.out, 20.0f, bbSampRate);
float audioBW = std::min<float>(audioSampRate / 2.0f, bw);
win.init(audioBW, audioBW, bbSampRate);
@ -151,6 +151,12 @@ private:
void setBandwidth(float bandWidth) {
bw = bandWidth;
_vfo->setBandwidth(bw);
demod.setBandWidth(bw);
float audioBW = std::min<float>(audioSampRate / 2.0f, bw);
win.setSampleRate(bbSampRate * resamp.getInterpolation());
win.setCutoff(audioBW);
win.setTransWidth(audioBW);
resamp.updateWindow(&win);
}
void setSnapInterval(float snapInt) {

View File

@ -42,7 +42,7 @@ public:
demod.init(&squelch.out, bbSampRate, bandWidth, dsp::SSBDemod::MODE_USB);
agc.init(&demod.out, 1.0f / 125.0f);
agc.init(&demod.out, 20.0f, bbSampRate);
float audioBW = std::min<float>(audioSampRate / 2.0f, bw);
win.init(audioBW, audioBW, bbSampRate);
@ -151,6 +151,12 @@ private:
void setBandwidth(float bandWidth) {
bw = bandWidth;
_vfo->setBandwidth(bw);
demod.setBandWidth(bw);
float audioBW = std::min<float>(audioSampRate / 2.0f, bw);
win.setSampleRate(bbSampRate * resamp.getInterpolation());
win.setCutoff(audioBW);
win.setTransWidth(audioBW);
resamp.updateWindow(&win);
}
void setSnapInterval(float snapInt) {