-
Notifications
You must be signed in to change notification settings - Fork 1
/
dkincwr~.pd
232 lines (232 loc) · 5.68 KB
/
dkincwr~.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
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
#N canvas 331 166 1091 848 12;
#X obj 38 79 inlet~;
#X obj 302 54 inlet;
#X obj 217 56 inlet;
#X obj 168 171 t f f;
#X obj 210 203 sel 1 0;
#X text 230 154 1: start rec \, 0: stop;
#X obj 219 284 timer;
#X obj 270 250 t b b;
#X msg 319 280 stop;
#X obj 186 526 tabwrite~ \$1;
#X msg 156 426 start \$1;
#X text 368 248 0: stop rec \, output time stopped;
#X text 237 428 start pos of recording (old pos + time stopped in samps)
;
#N canvas 514 404 883 489 newpos 0;
#X obj 205 35 inlet;
#X text 219 10 time recorded;
#X obj 205 60 t b f;
#N canvas 540 376 635 695 mstosamp 0;
#X obj 209 53 inlet;
#X obj 209 78 t b f;
#X obj 160 113 samplerate~;
#X obj 268 122 / 1000;
#X obj 208 197 outlet;
#X obj 209 160 *;
#X text 8 8 dkms2smp: milliseconds to samples;
#X text 15 37 Derek Kwan \, 2016;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 2 0 5 0;
#X connect 3 0 5 1;
#X connect 5 0 4 0;
#X restore 259 90 pd mstosamp;
#X obj 173 139 f;
#X obj 245 144 +;
#X text 304 121 sample position accumulator;
#X text 655 -2 reset;
#X msg 652 82 0;
#X obj 648 48 bang;
#X obj 357 95 array size \$1;
#X obj 358 6 loadbang;
#X obj 242 180 moses 88200;
#X text 387 166 arg: if we're going to wrap or stop at end;
#X obj 320 299 % 88200;
#X obj 318 219 t f b;
#X obj 539 26 inlet;
#X text 530 55 wrap or stop;
#X obj 106 249 f 0;
#X text 502 289 bang if reached end;
#X obj 437 320 outlet;
#X obj 93 34 inlet;
#X obj 93 59 bang;
#X obj 88 421 outlet;
#X text 52 9 get start pos;
#X obj 214 306 f;
#X text 205 329 end pos of recording;
#X obj 324 263 spigot \$3;
#X obj 438 8 r \$0-arrset;
#X obj 651 25 r \$0-incrst;
#X obj 208 403 f;
#X obj 272 403 + 1;
#X msg 335 362 0;
#X obj 89 344 t f b;
#X obj 206 448 outlet;
#X text 282 447 index of recording;
#X obj 105 305 i;
#X obj 439 40 t b s;
#X msg 451 68 symbol \$1;
#X connect 0 0 2 0;
#X connect 2 0 4 0;
#X connect 2 1 3 0;
#X connect 3 0 5 1;
#X connect 4 0 5 0;
#X connect 5 0 4 1;
#X connect 5 0 12 0;
#X connect 8 0 4 1;
#X connect 8 0 18 1;
#X connect 8 0 30 1;
#X connect 9 0 8 0;
#X connect 10 0 12 1;
#X connect 10 0 14 1;
#X connect 11 0 10 0;
#X connect 12 0 25 0;
#X connect 12 1 15 0;
#X connect 14 0 25 0;
#X connect 15 0 27 0;
#X connect 15 1 20 0;
#X connect 15 1 32 0;
#X connect 16 0 27 1;
#X connect 18 0 36 0;
#X connect 21 0 22 0;
#X connect 22 0 18 0;
#X connect 25 0 18 1;
#X connect 27 0 14 0;
#X connect 28 0 37 0;
#X connect 29 0 9 0;
#X connect 30 0 31 0;
#X connect 30 0 34 0;
#X connect 31 0 30 1;
#X connect 32 0 30 1;
#X connect 33 0 23 0;
#X connect 33 1 30 0;
#X connect 36 0 33 0;
#X connect 37 0 10 0;
#X connect 37 1 38 0;
#X connect 38 0 10 1;
#X restore 200 344 pd newpos;
#X obj 509 577 outlet;
#X text 554 556 bang if reached end of array;
#X obj 143 587 outlet;
#X text 120 618 start pos in samps of recording;
#X obj 285 589 outlet;
#X obj 552 145 bang;
#X obj 160 260 t b b;
#X text 153 230 1: start rec \, reset timer;
#X obj 759 46 loadbang;
#N canvas 845 394 629 525 thresh 0;
#X obj 72 373 change 2;
#X obj 205 10 inlet;
#X text 275 19 on/off;
#X text 552 51 reset;
#X obj 112 8 inlet;
#X text 44 19 trigger;
#X text 166 371 if no input bangs before callback \, shut off recording
;
#X obj 68 458 outlet;
#X text 135 456 1: start rec \, 0: stop;
#X obj 401 13 inlet;
#X text 382 50 time threshold;
#X obj 346 132 moses 1;
#X msg 346 157 1000;
#X obj 178 271 delay 1000;
#X obj 345 201 f;
#X obj 502 24 r \$0-incrst;
#X obj 140 56 spigot 0;
#X msg 69 192 1;
#X text 286 253 rec at least one second;
#X obj 164 174 < 1000;
#X obj 169 130 timer;
#X msg 100 274 0;
#X obj 108 216 sel 0 1;
#X connect 0 0 7 0;
#X connect 1 0 16 1;
#X connect 4 0 16 0;
#X connect 9 0 11 0;
#X connect 11 0 12 0;
#X connect 11 1 14 0;
#X connect 12 0 14 0;
#X connect 13 0 20 1;
#X connect 14 0 13 1;
#X connect 14 0 19 1;
#X connect 15 0 21 0;
#X connect 16 0 17 0;
#X connect 16 0 20 0;
#X connect 16 0 13 0;
#X connect 17 0 0 0;
#X connect 19 0 22 0;
#X connect 20 0 19 0;
#X connect 21 0 0 0;
#X connect 22 0 21 0;
#X connect 22 1 13 0;
#X restore 178 135 pd thresh;
#X text 307 82 on/off;
#X text 231 31 rec trigger;
#X obj 432 90 f \$2;
#X obj 57 299 *~;
#X obj 88 247 line~;
#X text 18 6 dkincwr~: incremental tabwriter;
#X text 77 98 signal input;
#X text 26 29 Derek Kwan 2016;
#X text 60 683 arg1: array \, arg2: rec time thresh \, arg3: stop/wrap
at end;
#X text 49 804 DEFAULTS: rectime thresh = 1000 \, stop at end;
#X text 71 703 in1: ipt \, in2: rec trig \, in3: on/off;
#X obj 439 8 inlet;
#X text 136 725 in4: threshold \, stopwrap at end \, set array \, reset
;
#X obj 248 450 r \$0-arrset;
#X obj 611 146 s \$0-arrset;
#X obj 532 192 s \$0-incrst;
#X msg 88 222 \$1 5;
#X text 58 751 out1: startpos of rec \, out2: rec index \, out3: bang
at end;
#X text 310 561 rec idx;
#X obj 558 99 t b symbol;
#X msg 223 489 set \$1;
#X obj 441 40 route thresh stopwrap set reset clear;
#X obj 736 163 symbol \$1;
#X msg 736 187 \; \$1 const 0;
#X obj 731 93 t b b;
#X connect 0 0 27 0;
#X connect 1 0 23 1;
#X connect 2 0 23 0;
#X connect 3 0 40 0;
#X connect 3 1 4 0;
#X connect 4 0 20 0;
#X connect 4 1 7 0;
#X connect 6 0 13 1;
#X connect 7 0 6 1;
#X connect 7 1 8 0;
#X connect 8 0 9 0;
#X connect 10 0 9 0;
#X connect 13 0 10 0;
#X connect 13 0 16 0;
#X connect 13 1 18 0;
#X connect 13 2 14 0;
#X connect 19 0 39 0;
#X connect 20 0 6 0;
#X connect 20 1 13 0;
#X connect 22 0 26 0;
#X connect 22 0 19 0;
#X connect 23 0 3 0;
#X connect 26 0 23 2;
#X connect 27 0 9 0;
#X connect 28 0 27 1;
#X connect 35 0 45 0;
#X connect 37 0 44 0;
#X connect 40 0 28 0;
#X connect 43 0 19 0;
#X connect 43 1 38 0;
#X connect 43 1 46 1;
#X connect 44 0 9 0;
#X connect 45 0 26 0;
#X connect 45 1 13 2;
#X connect 45 2 43 0;
#X connect 45 3 19 0;
#X connect 45 4 48 0;
#X connect 46 0 47 0;
#X connect 48 0 19 0;
#X connect 48 1 46 0;