Support |
Per, Here's an example patch, at the bottom, to look at pick apart. You should be able to copy it and paste it from the clipboard in Max. It shows one way to do the bpm to millisecond conversion and how you might apply that to "tapin~" and "tapout~". Rick Williamson max v2; #N vpatcher 7 91 790 558; #P origin -21 -69; #P newex 28 286 43 196617 timer; #B color 5; #P number 28 312 42 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P button 39 242 15 0; #P comment 59 236 77 196617 Clever way to report time between events; #P comment 334 290 56 196617 size tapin two beats; #P comment 607 257 142 196617 0.25 = one 16th note; #P comment 607 242 142 196617 16th note subdivision; #P number 501 265 49 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 553 265 49 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 501 242 33 196617 * 1.5; #P newex 553 242 39 196617 * 2.25; #P number 447 265 49 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 447 242 33 196617 * 0.75; #P number 447 219 49 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P message 293 50 26 196617 240; #P message 264 50 26 196617 210; #P message 235 50 26 196617 180; #P message 206 50 26 196617 150; #P message 177 50 26 196617 120; #P message 154 50 20 196617 90; #P message 131 50 20 196617 60; #P message 108 50 20 196617 30; #P message 19 184 14 196617 0; #P newex 19 162 30 196617 sel 0; #P newex 326 197 27 196617 / 2; #P comment 219 138 142 196617 milliseconds per beat; #P number 164 137 49 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 164 85 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 164 109 50 196617 !/ 60000; #P toggle 119 133 15 0; #P newex 119 160 55 196617 metro 500; #P newex 118 412 108 196617 dac~; #P message 118 376 65 196617 startwindow; #P message 189 376 27 196617 stop; #P comment 119 360 70 196617 ¥ start audio; #P newex 216 297 39 196617 *~ 0.2; #P toggle 216 216 15 0; #P newex 238 187 59 196617 cycle~ 440; #P newex 216 252 51 196617 selector~; #B color 4; #P comment 178 217 35 196617 on/off; #P comment 263 229 45 196617 signal in; #P comment 226 270 78 196617 gated signal out; #P newex 326 361 163 196617 tapout~ 375 750 1125; #P newex 326 326 55 196617 tapin~ 500; #P flonum 471 119 112 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 471 93 84 196617 expr 60000/$f1; #P number 326 270 49 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 326 222 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 326 244 50 196617 !/ 60000; #P comment 207 86 100 196617 beats per minuet; #P fasten 20 0 26 0 124 153 24 153; #P connect 26 0 27 0; #P connect 47 0 49 0; #P connect 49 0 48 0; #P connect 19 0 47 0; #P connect 47 0 49 1; #P connect 7 2 18 0; #P connect 7 0 18 0; #P connect 17 0 18 0; #P connect 16 0 18 0; #P connect 20 0 19 0; #P connect 35 0 22 0; #P connect 34 0 22 0; #P connect 33 0 22 0; #P connect 32 0 22 0; #P connect 31 0 22 0; #P connect 30 0 22 0; #P connect 29 0 22 0; #P connect 28 0 22 0; #P connect 22 0 21 0; #P connect 21 0 23 0; #P connect 23 0 19 1; #P connect 19 0 13 0; #P fasten 27 0 13 0 24 205 221 205; #P connect 13 0 11 0; #P connect 11 0 14 0; #P connect 14 0 18 1; #P connect 7 1 18 1; #P fasten 12 0 11 1 243 228 262 228; #P fasten 22 0 25 0 169 103 331 103; #P connect 25 0 2 0; #P connect 2 0 1 0; #P connect 1 0 3 0; #P connect 14 0 6 0; #P connect 3 0 6 0; #P fasten 38 0 7 0 452 346 331 346; #P connect 6 0 7 0; #P fasten 42 0 7 1 506 351 407 351; #P fasten 23 0 36 0 169 157 452 157; #P connect 36 0 37 0; #P connect 37 0 38 0; #P connect 4 0 5 0; #P fasten 41 0 7 2 558 355 483 355; #P connect 36 0 40 0; #P connect 40 0 42 0; #P connect 36 0 39 0; #P connect 39 0 41 0; #P pop;