Here’s another little tap-tempo abstraction that’s not quite as heavy as Frank’s but works pretty well.

 

Ingo

 

 

#N canvas 1513 211 341 567 12;

#X obj 87 57 sel 32;

#X obj 37 118 timer;

#X floatatom 47 503 5 0 0 1 - - -;

#X obj 37 177 expr 60000/$f1;

#X text 88 502 bpm;

#X obj 87 35 key;

#X obj 37 35 inlet;

#X obj 37 522 outlet;

#X obj 37 96 t b b;

#X obj 160 403 + 1;

#X obj 37 374 t f b;

#X obj 37 454 spigot;

#X obj 120 309 del 2000;

#X msg 120 287 stop;

#X obj 120 425 >= 5;

#X obj 37 258 t f b b;

#X msg 120 331 0;

#X obj 37 219 maxlib/average 3;

#X msg 190 180 reset \, weight;

#X obj 190 151 loadbang;

#X obj 120 403 f 1;

#X obj 146 13 cnv 15 180 120 empty empty empty 20 12 0 14 -233017 -66577

0;

#X text 152 100 ...or just keep tapping!;

#X text 152 75 change the tempo;

#X text 152 60 tap another 5 times to;

#X text 152 20 tap 5 times to get the;

#X text 152 35 tempo;

#X text 32 10 ds-tap_tempo;

#X connect 0 0 8 0;

#X connect 1 0 3 0;

#X connect 3 0 17 0;

#X connect 5 0 0 0;

#X connect 6 0 8 0;

#X connect 8 0 1 0;

#X connect 8 1 1 1;

#X connect 9 0 20 1;

#X connect 10 0 11 0;

#X connect 10 1 20 0;

#X connect 11 0 2 0;

#X connect 11 0 7 0;

#X connect 12 0 16 0;

#X connect 12 0 18 0;

#X connect 13 0 12 0;

#X connect 14 0 11 1;

#X connect 15 0 10 0;

#X connect 15 1 12 0;

#X connect 15 2 13 0;

#X connect 16 0 11 1;

#X connect 16 0 20 0;

#X connect 17 0 15 0;

#X connect 18 0 17 0;

#X connect 19 0 18 0;

#X connect 20 0 9 0;

#X connect 20 0 14 0;