aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tuner.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/tuner.c b/tuner.c
index ec2ebb9..d2defcb 100644
--- a/tuner.c
+++ b/tuner.c
@@ -14,6 +14,7 @@
#define FFT_SIZE (1<<13)
#define ACCURACY 2.0 // Hz
+#define NOISE_FLOOR 30
#define FFT_INDEX_TO_FREQ(i) ((float)i * SAMPLE_RATE / FFT_SIZE)
@@ -128,6 +129,10 @@ static void calculate_magnitudes()
/* +1 because out[0] is DC result */
magnitudes[i] = cabs(fft_out[i+1]);
+ if (magnitudes[i] < NOISE_FLOOR) {
+ magnitudes[i] = 0.0;
+ }
+
/* also find highest magnitude for later informational output */
if (magnitudes[i] > magnitudes[max_i]) {
max_i = i;