aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReiner Herrmann <reiner@reiner-h.de>2017-08-13 15:47:09 +0200
committerReiner Herrmann <reiner@reiner-h.de>2017-08-13 15:47:09 +0200
commit5266ee5585535e498e7571110467d71e46a0ed43 (patch)
tree8c0ae0207ee422e7fcc39fd8c461639c24894e8e
parent72decb1787a0ffa1c29d7d6a47a97e1a08786cd6 (diff)
Don't lookup notes for low background frequencies
-rw-r--r--tuner.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/tuner.c b/tuner.c
index 9782eec..4b3d835 100644
--- a/tuner.c
+++ b/tuner.c
@@ -15,6 +15,7 @@
#define ACCURACY 1.0 // Hz
#define NOISE_FLOOR 30
+#define MIN_FREQ 10.0 // Hz
#define FFT_INDEX_TO_FREQ(i) ((float)i * SAMPLE_RATE / FFT_SIZE)
@@ -217,7 +218,10 @@ static void find_note(double freq)
{
int note = 0, dir = 0;
- if (freq <= note_table[1].freq) {
+ if (freq < MIN_FREQ) {
+ note = 0;
+ dir = 0;
+ } else if (freq <= note_table[1].freq) {
note = 1;
dir = -1;
} else if (freq >= note_table[ARRAY_SIZE(note_table)-1].freq) {