src/tempo/tempo.c: add silence detection (closes #23), add old behavior in examples...
authorPaul Brossier <piem@piem.org>
Fri, 31 Jul 2015 20:25:30 +0000 (22:25 +0200)
committerPaul Brossier <piem@piem.org>
Fri, 31 Jul 2015 20:25:30 +0000 (22:25 +0200)
examples/aubiotrack.c
src/tempo/tempo.c

index 8bae20d..ab0c2d7 100644 (file)
@@ -70,6 +70,8 @@ int main(int argc, char **argv) {
 
   tempo_out = new_fvec(2);
   tempo = new_aubio_tempo(tempo_method, buffer_size, hop_size, samplerate);
+  // set silence threshold very low to output beats even during silence
+  // aubio_tempo_set_silence(tempo, -1000.);
   if (onset_threshold != 0.) aubio_tempo_set_threshold (tempo, onset_threshold);
 
   wavetable = new_aubio_wavetable (samplerate, hop_size);
index c2b297b..929076e 100644 (file)
@@ -109,11 +109,9 @@ void aubio_tempo_do(aubio_tempo_t *o, fvec_t * input, fvec_t * tempo)
     if (o->blockpos == FLOOR(o->out->data[i])) {
       tempo->data[0] = o->out->data[i] - FLOOR(o->out->data[i]); /* set tactus */
       /* test for silence */
-      /*
       if (aubio_silence_detection(input, o->silence)==1) {
         tempo->data[0] = 0; // unset beat if silent
       }
-      */
       o->last_beat = o->total_frames + (uint_t)ROUND(tempo->data[0] * o->hop_size);
     }
   }