-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvoice~.pd
335 lines (335 loc) · 8.2 KB
/
voice~.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
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
#N canvas 1027 35 336 708 12;
#X obj 27 232 - 1;
#X obj 27 262 pack 0 0 0;
#X obj 27 172 unpack, f 10;
#X msg 27 142 1 1;
#X obj 27 640 *~;
#X obj 27 669 outlet~;
#X obj 143 640 *~;
#X obj 143 669 outlet~;
#X obj 175 12 inlet;
#X obj 264 112 t f f;
#X obj 113 152 spigot;
#X obj 113 122 inlet;
#X obj 27 112 metro, f 9;
#X obj 27 82 route metro float;
#N canvas 686 35 677 708 help 0;
#X text 12 12 inlet 0: mensajes midi (nota + velocity);
#X text 12 39 inlet 1: recibe múltiples mensajes (bang enciende un
grano \, adsr trae parámetros de envolvente \, power apaga todas las
notas al cambiar entre mono y poly además de evitar que la inlet 0
reciba notas [power 0] y vuelve a permitir que la inlet 0 reciba notas
[power 1] \, rate activa o desactiva el encendido automático de los
granos [rate metro 1/0] y a qué frecuencia [rate float] \, y todos
los mensajes con el prefijo pass son enviados directamente a todas
las instancias de granos del [clone]);
#X text 12 189 la velocity de la nota midi se utiliza para disparar
la envolvente de la voz \, mientras que la altura de la nota es enviada
a todos los granos \; para encender los granos uso el falso mensaje
de nota midi [1 1( en conjunción con el objeto [poly] para así poder
iterar ordenadamente las instancias de granos del [clone] \, luego
esa "entrada midi" se convierte en un simple bang que le indica al
grano que debe encenderse;
#X text 31 361 (para más información revisar [pd help] dentro de
[grain~]);
#X restore 1268 659 pd help;
#X text 932 588 esta abstracción está pensada para ser instanciada
por un objeto [clone] y representa una voz del sintetizador \, está
constituida por una serie de granos producidos por otro [clone];
#X obj 264 142 sel 0;
#X msg 264 172 0;
#X obj 85 534 list trim;
#X obj 85 509 list prepend all;
#X obj 353 534 list trim;
#X obj 353 509 list prepend all;
#X obj 211 594 pd-adsr/adsr~;
#X obj 27 202 poly 10 1, f 10;
#X obj 27 564 clone ./grain~ 10;
#X msg 363 469 switch \$1;
#X obj 556 323 *;
#X obj 594 233 t b f;
#X obj 574 263 /, f 5;
#X obj 574 293 t b f;
#X obj 556 463 list prepend phas;
#X obj 574 203 route rate duration;
#X obj 556 163 route speed pos;
#X obj 742 203 route manual noteon;
#X msg 791 288 0;
#X msg 816 288 1;
#X obj 752 288 f;
#X obj 752 318 spigot;
#X msg 752 258 bang;
#X obj 556 353 phasor~, f 27;
#X obj 742 228 t f b;
#X obj 556 433 *;
#X obj 1037 533 switch~;
#X obj 1006 503 f, f 5;
#X obj 1024 283 route rel;
#X obj 1006 308 f;
#X obj 1006 333 t b f;
#X obj 1006 358 delay;
#X msg 1006 408 0;
#X obj 1006 233 sel 0, f 14;
#X msg 1101 283 1;
#X obj 1006 433 t b f;
#X obj 1069 478 loadbang;
#X msg 1069 503 0;
#X obj 1006 458 delay 5;
#X obj 910 183 r \$0-vel;
#X obj 1024 258 r \$0-adsr;
#X obj 219 82 s \$0-adsr;
#X obj 299 564 r \$0-adsr;
#X obj 874 399 swap;
#X obj 793 439 f;
#X obj 874 459 s \$0-vel;
#X obj 874 429 / 127;
#X obj 793 369 route bend, f 12;
#X obj 793 399 t b f;
#X obj 793 469 +, f 5;
#X obj 211 564 f;
#X obj 229 539 r \$0-vel;
#X obj 211 514 r \$0-adsr-on;
#X obj 910 208 t b f f, f 23;
#X obj 910 233 s \$0-adsr-on;
#X obj 1068 353 == 0;
#X obj 1006 383 spigot;
#X obj 556 383 snapshot~;
#N canvas 686 35 677 708 phase 0;
#X obj 67 104 sel 0 1;
#X msg 92 134 2;
#X obj 35 74 t b f;
#X msg 67 134 1;
#X obj 17 164 /;
#X obj 17 314 phasor~;
#X obj 17 14 inlet;
#X obj 17 134 f;
#X obj 35 44 r \$0-pingpong;
#X obj 343 111 inlet;
#X obj 199 10 r \$0-loop;
#X obj 199 35 route start end;
#X obj 199 185 -;
#X msg 199 235 1;
#X obj 199 260 /, f 5;
#X obj 199 210 t b f;
#X obj 17 194 *;
#X obj 17 629 *;
#X obj 199 290 t b f;
#X msg 199 320 1;
#X obj 199 345 /, f 5;
#X obj 17 654 +;
#X obj 27 344 r \$0-snap;
#X obj 17 374 snapshot~;
#X obj 17 404 *;
#X obj 17 679 outlet;
#X obj 63 194 *;
#X obj 343 201 clip;
#X obj 63 254 -;
#X obj 81 224 *;
#X obj 199 65 t b f;
#X obj 250 65 t b f;
#X obj 63 284 clip 0 0.999999;
#X obj 373 141 f;
#X obj 17 599 -, f 4;
#X obj 43 544 *, f 4;
#X obj 43 514 /;
#X obj 70 454 wrap;
#X obj 43 484 -;
#X obj 17 429 t f f f, f 8;
#X obj 43 569 * 2;
#X obj 343 261 +, f 6;
#X obj 343 231 /;
#X obj 382 201 * 0.5;
#X obj 382 231 *;
#X obj 373 171 t f b;
#X connect 0 0 3 0;
#X connect 0 1 1 0;
#X connect 1 0 4 1;
#X connect 1 0 24 1;
#X connect 1 0 42 1;
#X connect 2 0 7 0;
#X connect 2 0 33 0;
#X connect 2 1 0 0;
#X connect 2 1 44 1;
#X connect 3 0 4 1;
#X connect 3 0 24 1;
#X connect 3 0 42 1;
#X connect 4 0 16 0;
#X connect 5 0 23 0;
#X connect 6 0 7 0;
#X connect 7 0 4 0;
#X connect 8 0 2 0;
#X connect 9 0 27 0;
#X connect 10 0 11 0;
#X connect 11 0 30 0;
#X connect 11 1 12 0;
#X connect 11 1 31 0;
#X connect 12 0 15 0;
#X connect 13 0 14 0;
#X connect 14 0 18 0;
#X connect 15 0 13 0;
#X connect 15 1 14 1;
#X connect 16 0 5 0;
#X connect 17 0 21 0;
#X connect 18 0 19 0;
#X connect 18 0 16 0;
#X connect 18 0 29 0;
#X connect 18 0 33 0;
#X connect 18 1 20 1;
#X connect 18 1 16 1;
#X connect 18 1 26 1;
#X connect 18 1 29 1;
#X connect 19 0 20 0;
#X connect 20 0 17 1;
#X connect 21 0 25 0;
#X connect 21 0 33 1;
#X connect 22 0 23 0;
#X connect 23 0 24 0;
#X connect 24 0 39 0;
#X connect 26 0 28 0;
#X connect 27 0 42 0;
#X connect 28 0 32 0;
#X connect 29 0 28 1;
#X connect 30 0 12 0;
#X connect 30 0 27 0;
#X connect 30 0 41 0;
#X connect 30 1 29 0;
#X connect 30 1 27 1;
#X connect 30 1 21 1;
#X connect 30 1 12 1;
#X connect 30 1 43 0;
#X connect 31 0 27 0;
#X connect 31 1 27 2;
#X connect 32 0 5 1;
#X connect 33 0 45 0;
#X connect 34 0 17 0;
#X connect 35 0 40 0;
#X connect 36 0 35 0;
#X connect 37 0 38 1;
#X connect 37 0 35 1;
#X connect 38 0 36 0;
#X connect 38 0 36 1;
#X connect 39 0 34 0;
#X connect 39 1 38 0;
#X connect 39 2 37 0;
#X connect 40 0 34 1;
#X connect 41 0 26 0;
#X connect 42 0 41 0;
#X connect 43 0 44 0;
#X connect 44 0 41 1;
#X connect 45 0 27 0;
#X connect 45 1 44 0;
#X restore 654 380 pd phase;
#X obj 397 82 s \$0-pingpong;
#X obj 556 123 route playhead sample;
#X obj 27 292 t a b;
#X obj 175 42 route bang adsr power rate pass pingpong loop;
#X obj 442 112 s \$0-loop;
#X obj 59 332 s \$0-snap;
#X connect 0 0 1 0;
#X connect 1 0 77 0;
#X connect 2 0 23 0;
#X connect 2 1 23 1;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 8 0 78 0;
#X connect 9 0 16 0;
#X connect 9 1 10 1;
#X connect 10 0 63 0;
#X connect 11 0 10 0;
#X connect 12 0 3 0;
#X connect 13 0 12 0;
#X connect 13 1 12 1;
#X connect 16 0 17 0;
#X connect 17 0 61 0;
#X connect 18 0 24 1;
#X connect 18 0 38 0;
#X connect 19 0 18 0;
#X connect 20 0 24 2;
#X connect 21 0 20 0;
#X connect 22 0 6 1;
#X connect 22 0 4 1;
#X connect 23 0 0 0;
#X connect 23 1 1 1;
#X connect 23 2 1 2;
#X connect 24 0 4 0;
#X connect 24 1 6 0;
#X connect 25 0 21 0;
#X connect 26 0 39 0;
#X connect 26 0 74 0;
#X connect 27 0 28 0;
#X connect 27 1 28 1;
#X connect 27 1 41 1;
#X connect 28 0 29 0;
#X connect 29 0 26 0;
#X connect 29 1 26 1;
#X connect 30 0 21 0;
#X connect 31 0 28 0;
#X connect 31 1 27 0;
#X connect 32 0 26 0;
#X connect 32 1 33 0;
#X connect 33 0 40 0;
#X connect 33 1 35 0;
#X connect 33 1 36 1;
#X connect 34 0 37 1;
#X connect 35 0 37 1;
#X connect 36 0 37 0;
#X connect 37 0 39 1;
#X connect 37 0 74 1;
#X connect 38 0 36 0;
#X connect 39 0 73 0;
#X connect 40 0 39 1;
#X connect 40 0 74 1;
#X connect 40 1 34 0;
#X connect 41 0 30 0;
#X connect 43 0 42 0;
#X connect 44 0 45 1;
#X connect 45 0 46 0;
#X connect 46 0 47 0;
#X connect 46 1 47 1;
#X connect 47 0 72 0;
#X connect 48 0 51 0;
#X connect 48 0 25 0;
#X connect 49 0 45 0;
#X connect 49 1 50 0;
#X connect 50 0 43 0;
#X connect 50 0 25 0;
#X connect 51 0 54 0;
#X connect 51 1 43 1;
#X connect 52 0 53 0;
#X connect 53 0 42 0;
#X connect 54 0 43 0;
#X connect 55 0 69 0;
#X connect 56 0 44 0;
#X connect 58 0 22 1;
#X connect 59 0 62 0;
#X connect 59 1 60 0;
#X connect 60 0 65 0;
#X connect 62 0 61 0;
#X connect 63 0 64 0;
#X connect 63 1 59 0;
#X connect 64 0 60 0;
#X connect 64 1 65 1;
#X connect 65 0 19 0;
#X connect 66 0 22 0;
#X connect 67 0 66 1;
#X connect 68 0 66 0;
#X connect 69 0 70 0;
#X connect 69 1 49 0;
#X connect 69 2 71 0;
#X connect 71 0 72 1;
#X connect 72 0 48 0;
#X connect 74 0 41 0;
#X connect 76 0 32 0;
#X connect 76 1 31 0;
#X connect 77 0 24 0;
#X connect 77 1 73 0;
#X connect 77 1 80 0;
#X connect 78 0 3 0;
#X connect 78 1 57 0;
#X connect 78 2 9 0;
#X connect 78 3 13 0;
#X connect 78 4 21 0;
#X connect 78 4 76 0;
#X connect 78 5 75 0;
#X connect 78 6 79 0;