-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.pd
213 lines (213 loc) · 5.62 KB
/
main.pd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
#N canvas 116 87 1280 687 10;
#N canvas 0 23 1680 914 main 0;
#X obj 115 158 cnv 15 834 525 empty empty empty 20 12 0 14 -1 -66577
0;
#X obj 116 159 cnv 15 686 524 empty empty empty 10 10 0 14 -133153
-262144 0;
#X obj 803 158 tgl 28 0 play empty Play 33 13 0 10 -66577 -262144 -262144
0 1;
#X obj 157 361 hihat;
#N canvas 368 89 767 781 kick 0;
#X obj 34 12 inlet;
#X obj 168 309 osc~;
#X obj 168 285 vline~;
#X obj 34 282 vline~;
#X obj 153 334 *~;
#X obj 220 226 pipe 10;
#X obj 168 231 *;
#X obj 180 43 loadbang;
#X msg 34 246 1 1.5;
#X obj 78 222 del 10;
#X obj 34 46 t b b i b;
#X obj 180 121 hsl 128 15 50 120 0 0 empty empty Tone 5 5 0 10 -1 -262144
-262144 2743 1;
#X obj 180 141 hsl 128 15 50 500 0 0 empty empty Decay 5 5 0 10 -1
-262144 -262144 2422 1;
#X msg 168 254 \$1 0;
#X obj 220 202 / 2;
#X obj 220 250 pack f f;
#X obj 78 247 pack 0 f;
#X obj 123 222 + 100;
#X msg 180 76 80;
#X msg 216 76 150;
#X obj 68 97 scale 0 1 0.5 1;
#X obj 153 362 outlet~;
#X connect 0 0 10 0;
#X connect 1 0 4 1;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 4 0 21 0;
#X connect 5 0 15 0;
#X connect 6 0 13 0;
#X connect 7 0 18 0;
#X connect 7 0 19 0;
#X connect 8 0 3 0;
#X connect 9 0 16 0;
#X connect 10 0 8 0;
#X connect 10 1 9 0;
#X connect 10 2 20 0;
#X connect 10 3 11 0;
#X connect 11 0 6 1;
#X connect 11 0 14 0;
#X connect 12 0 15 1;
#X connect 12 0 17 0;
#X connect 13 0 2 0;
#X connect 14 0 5 0;
#X connect 15 0 2 0;
#X connect 16 0 3 0;
#X connect 17 0 16 1;
#X connect 18 0 11 0;
#X connect 19 0 12 0;
#X connect 20 0 6 0;
#X coords 0 -1 1 1 133 35 2 180 121;
#X restore 158 235 pd kick;
#X obj 803 96 key;
#X obj 157 485 snare;
#X obj 803 554 record;
#X obj 803 121 route 32;
#N canvas 477 295 850 569 sample 0;
#X obj 15 28 inlet;
#X obj 154 113 openpanel;
#X obj 155 42 bng 30 100 50 0 empty empty Load\ sample 35 13 0 12 -1
-262144 -262144;
#X obj 154 157 soundfiler;
#X obj 15 157 table sampler;
#X msg 154 135 read -resize \$1 sampler;
#X obj 30 63 tabplay~ sampler;
#X obj 15 90 *~;
#X obj 15 128 outlet~;
#X connect 0 0 6 0;
#X connect 0 0 7 0;
#X connect 1 0 5 0;
#X connect 2 0 1 0;
#X connect 5 0 3 0;
#X connect 6 0 7 1;
#X connect 7 0 8 0;
#X coords 0 -1 1 1 130 43 2 149 35;
#X restore 158 609 pd sample;
#N canvas 121 23 1499 897 control 0;
#X obj 605 137 cnv 15 128 170 empty empty empty 5 5 0 12 -1 -262144
0;
#X floatatom 653 283 4 50 200 1 - - -, f 4;
#X obj 611 152 vsl 30 120 0 0.5 0 0 empty empty Swing 0 -9 0 10 -66577
-262144 -262144 5000 1;
#X obj 651 152 vsl 30 120 40 200 0 0 tempo empty Tempo 0 -9 0 10 -66577
-262144 -262144 5793 1;
#X obj 617 79 loadbang;
#X obj 164 299 expr (60 / $f1) * (4000 / 15);
#X obj 547 100 t b;
#X obj 631 325 int;
#X obj 164 324 s step-duration;
#X obj 40 29 metro;
#X floatatom 40 86 2 0 0 0 debug - -, f 2;
#X obj 40 186 send clock;
#X obj 617 399 *;
#X floatatom 617 425 7 0 0 0 debug - -, f 7;
#X obj 97 19 select 0;
#X obj 40 -21 r play;
#X obj 632 366 r step-duration;
#X obj 40 59 counter 15;
#X obj 656 342 s bpm;
#X obj 547 77 r bpm;
#X obj 164 274 r bpm;
#X obj 690 6 key;
#X obj 690 35 route 43 45;
#X obj 744 65 r bpm;
#X obj 690 100 +, f 1;
#X msg 690 65 2, f 2;
#X msg 717 65 -2, f 2;
#X text 687 -12 keyboard shortcuts for changing bpm;
#X text 150 19 reset counter when toggling play off;
#X text 161 253 calculate duration of one step according to bpm;
#X text 378 56 trigger swing change when bpm changes;
#X text 479 398 calculate swing amount;
#X text 656 324 round bpm;
#X obj 67 134 expr if($i1 % 2 == 1 \, $f2 \, 0);
#X obj 40 109 t i i;
#X obj 40 159 pipe;
#X obj 119 -25 r step-duration;
#X obj 617 454 s swing;
#X obj 238 103 r swing;
#X obj 791 367 catch~ output;
#X obj 791 439 clip~ -1 1;
#X obj 863 439 clip~ -1 1;
#X obj 691 153 vsl 28 120 0 1 0 0 empty empty Output 0 -9 0 10 -66577
-262144 -262144 5550 1;
#X obj 791 409 *~;
#X obj 863 409 *~;
#X obj 791 470 dac~;
#X obj 617 105 t 0 120 0.5;
#X text 73 154 if at a "swing step" \, delay output by swing;
#X text 787 346 send everything to output;
#X connect 1 0 18 0;
#X connect 2 0 12 0;
#X connect 3 0 7 0;
#X connect 4 0 46 0;
#X connect 5 0 8 0;
#X connect 6 0 2 0;
#X connect 7 0 1 0;
#X connect 9 0 17 0;
#X connect 10 0 34 0;
#X connect 12 0 13 0;
#X connect 13 0 37 0;
#X connect 14 0 17 2;
#X connect 15 0 14 0;
#X connect 15 0 9 0;
#X connect 16 0 12 1;
#X connect 17 0 10 0;
#X connect 19 0 6 0;
#X connect 20 0 5 0;
#X connect 21 0 22 0;
#X connect 22 0 25 0;
#X connect 22 1 26 0;
#X connect 23 0 24 1;
#X connect 24 0 3 0;
#X connect 25 0 24 0;
#X connect 26 0 24 0;
#X connect 33 0 35 1;
#X connect 34 0 35 0;
#X connect 34 1 33 0;
#X connect 35 0 11 0;
#X connect 36 0 9 1;
#X connect 38 0 33 1;
#X connect 39 0 43 0;
#X connect 39 0 44 0;
#X connect 40 0 45 0;
#X connect 41 0 45 1;
#X connect 42 0 44 1;
#X connect 42 0 43 1;
#X connect 43 0 40 0;
#X connect 44 0 41 0;
#X connect 46 0 2 0;
#X connect 46 1 3 0;
#X connect 46 2 42 0;
#X coords 0 -1 1 1 130 171 2 604 136;
#X restore 803 203 pd control;
#X obj 157 167 cnv 15 20 20 empty empty Kick 0 0 0 14 -133153 -262144
0;
#X obj 158 179 sequencer;
#X obj 156 293 cnv 15 20 20 empty empty Hi-hat 0 0 0 14 -133153 -262144
0;
#X obj 157 305 sequencer;
#X obj 156 416 cnv 15 20 20 empty empty Weird\ percussion 0 0 0 14
-133153 -262144 0;
#X obj 157 429 sequencer;
#X obj 157 541 cnv 15 20 20 empty empty Sample 0 0 0 14 -133153 -262144
0;
#X obj 158 553 sequencer;
#X obj 121 179 track;
#X obj 120 305 track;
#X obj 120 429 track;
#X obj 121 553 track;
#X connect 3 0 20 0;
#X connect 4 0 19 0;
#X connect 5 0 8 0;
#X connect 6 0 21 0;
#X connect 8 0 2 0;
#X connect 9 0 22 0;
#X connect 12 0 4 0;
#X connect 14 0 3 0;
#X connect 16 0 6 0;
#X connect 18 0 9 0;
#X coords 0 -1 1 1 835 525 2 115 158;
#X restore 4 2 pd main;