-
Notifications
You must be signed in to change notification settings - Fork 9
/
pp.loop.rec~-help.pd
208 lines (208 loc) · 7.35 KB
/
pp.loop.rec~-help.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
#N canvas 523 191 1034 619 10;
#X obj 2 2 cnv 15 500 600 empty empty empty 20 12 0 14 #e0e0e0 #404040 0;
#X obj 16 21 cnv 15 10 10 empty empty pp.loop.rec~ 0 0 2 16 #e0e0e0 #fcfcfc 0;
#X text 16 223 Inlets:;
#X text 16 286 Outlets:;
#X text 78 222 1:(~)signal;
#X obj 610 191 pp.loop.rec~ foo 9000;
#A saved empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \;;
#X text 137 169 \$2(obligatory): max loop length (ms). The maximum loop length is reduced to 2/3 in [pp.loop.play~] \, e.g. a maximum length of 9000 ms results in 6000 ms;
#X text 16 123 Creation arguments:;
#X text 78 237 2:(~)loop length (ms);
#X text 78 252 3:control-messages;
#X text 77 303 2:message;
#X text 77 286 1:loop length;
#X obj 813 168 cnv 15 118 17 empty empty empty 20 12 0 14 #fc8000 #404040 0;
#N canvas 927 114 663 665 control-messages 0;
#X obj 63 615 outlet;
#X obj 130 589 cnv 16 87 16 empty empty empty 20 12 0 14 #fc8000 #404040 0;
#N canvas 864 246 634 307 save&recall 0;
#X obj 93 233 outlet;
#X msg 93 60 0;
#X msg 125 60 1;
#X msg 158 60 2;
#X msg 93 99 save \$1;
#X text 185 63 ...;
#X msg 207 60 20;
#X msg 149 154 0;
#X msg 181 154 1;
#X msg 214 154 2;
#X text 241 157 ...;
#X msg 263 154 20;
#X msg 149 193 recall \$1;
#X text 249 93 save & recall up to 20 presets \, presets will be saved with the parrent patch;
#X connect 1 0 4 0;
#X connect 2 0 4 0;
#X connect 3 0 4 0;
#X connect 4 0 0 0;
#X connect 6 0 4 0;
#X connect 7 0 12 0;
#X connect 8 0 12 0;
#X connect 9 0 12 0;
#X connect 11 0 12 0;
#X connect 12 0 0 0;
#X restore 130 588 pd save&recall;
#X msg 86 128 clear;
#X text 128 129 delete recorded loop;
#X msg 63 47 feedback \$1;
#X floatatom 79 74 5 0 1e+10 0 - - - 0;
#X floatatom 63 25 5 0 0 0 - - - 0;
#X text 100 25 %;
#X text 114 73 set loop length in ms;
#X msg 79 96 length \$1;
#X floatatom 116 260 5 0 100 0 - - - 0;
#X msg 116 282 damping \$1;
#X msg 139 333 hip \$1;
#X floatatom 139 311 5 0 20000 0 - - - 0;
#X floatatom 140 358 5 0 20000 0 - - - 0;
#X msg 140 380 lop \$1;
#X text 176 314 hz;
#X text 175 358 hz;
#X text 154 263 %;
#X floatatom 140 410 5 0 0 0 - - - 0;
#X msg 140 432 flutter \$1;
#X obj 141 461 tgl 18 0 empty empty empty 0 -9 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 141 486 softclip \$1;
#X text 107 232 feedback loop decay;
#X connect 2 0 0 0;
#X connect 3 0 0 0;
#X connect 5 0 0 0;
#X connect 6 0 10 0;
#X connect 7 0 5 0;
#X connect 10 0 0 0;
#X connect 11 0 12 0;
#X connect 12 0 0 0;
#X connect 13 0 0 0;
#X connect 14 0 13 0;
#X connect 15 0 16 0;
#X connect 16 0 0 0;
#X connect 20 0 21 0;
#X connect 21 0 0 0;
#X connect 22 0 23 0;
#X connect 23 0 0 0;
#X restore 813 167 pd control-messages;
#X msg 809 133 rec \$1;
#X floatatom 809 110 5 0 0 0 - - - 0;
#X obj 809 41 vradio 15 1 0 4 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0;
#X text 828 87 overdub;
#X text 828 71 record overwrite;
#X text 828 55 record and set size;
#X floatatom 696 104 5 0 0 0 - - - 0;
#X msg 696 126 \$1 100;
#X obj 696 149 line~;
#X text 731 104 ms;
#X text 695 84 add loop length;
#X obj 609 26 adc~;
#X obj 610 433 pp.loop.play~ foo;
#A saved empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \;;
#X floatatom 610 233 6 0 0 0 - - - 0;
#N canvas 686 449 454 180 message-out 0;
#X obj 20 20 inlet;
#X msg 20 44 length 2849.33 \, feedback 100 \, damping 3 \, lop 5000 \, hip 50 \, flutter 5 \, softclip 1 \, rec 0 \,;
#X connect 0 0 1 0;
#X restore 783 232 pd message-out;
#X obj 610 536 pp.out~;
#A saved empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \;;
#N canvas 686 449 454 180 message-out 0;
#X obj 20 20 inlet;
#X msg 20 44 speed 1 \, position 0 \, phase 0 \,;
#X connect 0 0 1 0;
#X restore 758 472 pd message-out;
#X text 608 255 loop length (ms);
#X obj 758 403 cnv 15 118 17 empty empty empty 20 12 0 14 #fc8000 #404040 0;
#N canvas 1221 82 574 425 control-messages 0;
#X obj 63 388 outlet;
#X obj 130 362 cnv 16 87 16 empty empty empty 20 12 0 14 #fc8000 #404040 0;
#N canvas 864 246 634 307 save&recall 0;
#X obj 93 233 outlet;
#X msg 93 60 0;
#X msg 125 60 1;
#X msg 158 60 2;
#X msg 93 99 save \$1;
#X text 185 63 ...;
#X msg 207 60 20;
#X msg 149 154 0;
#X msg 181 154 1;
#X msg 214 154 2;
#X text 241 157 ...;
#X msg 263 154 20;
#X msg 149 193 recall \$1;
#X text 249 93 save & recall up to 20 presets \, presets will be saved with the parrent patch;
#X connect 1 0 4 0;
#X connect 2 0 4 0;
#X connect 3 0 4 0;
#X connect 4 0 0 0;
#X connect 6 0 4 0;
#X connect 7 0 12 0;
#X connect 8 0 12 0;
#X connect 9 0 12 0;
#X connect 11 0 12 0;
#X connect 12 0 0 0;
#X restore 130 361 pd save&recall;
#X msg 63 94 speed \$1;
#X floatatom 63 69 5 0 0 0 - - - 0;
#X floatatom 74 128 5 0 1 0 - - - 0;
#X text 108 129 0-1;
#X text 151 150 position of the playhead;
#X floatatom 89 199 5 0 1 0 - - - 0;
#X msg 89 221 phase \$1;
#X text 123 200 0-1;
#X msg 74 150 position \$1;
#X text 122 95 playback speed (1: normal \, 2: double \, -1: reversed);
#X text 154 201 "phase" shifts one of the two overlapping readers to allow for variations in the loop playback. Variations depend on the setting in "position" and "speed".;
#X msg 111 283 reset;
#X connect 2 0 0 0;
#X connect 3 0 0 0;
#X connect 4 0 3 0;
#X connect 5 0 11 0;
#X connect 8 0 9 0;
#X connect 9 0 0 0;
#X connect 11 0 0 0;
#X connect 14 0 0 0;
#X restore 758 402 pd control-messages;
#X floatatom 611 360 5 0 0 0 - - - 0;
#X msg 611 382 \$1 100;
#X obj 611 405 line~;
#X floatatom 685 360 5 0 0 0 - - - 0;
#X msg 685 382 \$1 100;
#X obj 685 405 line~;
#X text 684 340 position;
#X text 610 340 speed;
#X text 26 76 [pp.loop.rec~];
#X text 16 442 Inlets:;
#X text 16 505 Outlets:;
#X text 15 385 Creation arguments:;
#X text 73 471 3:control-messages;
#X text 72 522 2:message;
#X text 26 341 [pp.loop.play~];
#X text 73 441 1:(~)speed;
#X text 73 456 2:(~)position;
#X text 72 505 1:(~) signal;
#X obj 16 42 cnv 15 10 10 empty empty pp.loop.play~ 0 0 2 16 #e0e0e0 #fcfcfc 0;
#X text 828 39 stop;
#X text 134 77 Record audio into a circular buffer of variable length;
#X text 134 342 Read from the buffer defined in [pp.loop.rec~].;
#X text 135 386 \$1(obligatory): buffer name. All instances of [pp.loop.play~] with the same name will read from this buffer.;
#X text 137 124 \$1(obligatory): buffer name. All instances of [pp.loop.play~] with the same name will read from this buffer.;
#X text 797 204 <-- click to open GUI;
#X text 772 446 <-- click to open GUI;
#X connect 5 0 27 0;
#X connect 5 1 28 0;
#X connect 13 0 5 2;
#X connect 14 0 5 2;
#X connect 15 0 14 0;
#X connect 16 0 15 0;
#X connect 20 0 21 0;
#X connect 21 0 22 0;
#X connect 22 0 5 1;
#X connect 25 0 5 0;
#X connect 26 0 29 0;
#X connect 26 0 29 1;
#X connect 26 1 30 0;
#X connect 33 0 26 2;
#X connect 34 0 35 0;
#X connect 35 0 36 0;
#X connect 36 0 26 0;
#X connect 37 0 38 0;
#X connect 38 0 39 0;
#X connect 39 0 26 1;