summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Daniel <cd@maintech.de>2013-08-07 23:23:43 +0200
committerChristian Daniel <cd@maintech.de>2013-08-07 23:23:43 +0200
commit6fa57d6d2c791ffeb2279b2324ce61f557ce4cd5 (patch)
tree6c4b955c4912f8e6c990c56eb54b666adde34157
parentfb090cdfa91ae3ead3d23969d4fad3aab7caa8b1 (diff)
allow edges of spectrum in channelizer
-rw-r--r--sdrbase/dsp/channelizer.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/sdrbase/dsp/channelizer.cpp b/sdrbase/dsp/channelizer.cpp
index 34df1fa..d64eb02 100644
--- a/sdrbase/dsp/channelizer.cpp
+++ b/sdrbase/dsp/channelizer.cpp
@@ -136,8 +136,10 @@ Real Channelizer::createFilterChain(Real sigStart, Real sigEnd, Real chanStart,
Real safetyMargin = sigBw / 20;
Real rot = sigBw / 4;
- //qDebug("Signal [%f, %f] (BW %f), Channel [%f, %f], Rot %f, Safety %f", sigStart, sigEnd, sigBw, chanStart, chanEnd, rot, safetyMargin);
+ safetyMargin = 0;
+ //qDebug("Signal [%f, %f] (BW %f), Channel [%f, %f], Rot %f, Safety %f", sigStart, sigEnd, sigBw, chanStart, chanEnd, rot, safetyMargin);
+#if 1
// check if it fits into the left half
if(signalContainsChannel(sigStart + safetyMargin, sigStart + sigBw / 2.0 - safetyMargin, chanStart, chanEnd)) {
//qDebug("-> take left half (rotate by +1/4 and decimate by 2)");
@@ -158,7 +160,7 @@ Real Channelizer::createFilterChain(Real sigStart, Real sigEnd, Real chanStart,
m_filterStages.push_back(new FilterStage(FilterStage::ModeCenter));
return createFilterChain(sigStart + rot, sigStart + sigBw / 2.0f + rot, chanStart, chanEnd);
}
-
+#endif
Real ofs = ((chanEnd - chanStart) / 2.0 + chanStart) - ((sigEnd - sigStart) / 2.0 + sigStart);
qDebug("-> complete (final BW %f, frequency offset %f)", sigBw, ofs);
return ofs;