blob: 519bbfc3d8d3418d204b2a5bd342db03d714ce29 (
plain)
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
|
#N canvas 0 0 652 582 10;
#N canvas 0 0 450 300 bmt 0;
#X obj 109 103 rfft~;
#X obj 109 255 outlet;
#X obj 150 224 outlet;
#X obj 109 71 inlet~;
#X obj 109 196 prepend set;
#X obj 150 177 prepend set;
#X obj 109 139 bmt~ 5;
#X obj 109 224 t b a;
#X obj 246 130 block~ 1024;
#X obj 232 71 inlet;
#X connect 0 0 6 0;
#X connect 0 1 6 1;
#X connect 3 0 0 0;
#X connect 4 0 7 0;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X connect 6 1 5 0;
#X connect 7 0 1 0;
#X connect 7 1 1 0;
#X connect 9 0 6 0;
#X restore 113 137 pd bmt;
#N canvas 66 322 450 300 player 0;
#X obj 222 112 tabplay~ \$0-input;
#X obj 339 92 spigot;
#X obj 222 74 inlet;
#X obj 222 93 sel 1;
#X obj 51 63 inlet;
#X obj 51 185 soundfiler;
#X obj 51 82 openpanel;
#X msg 51 166 read -resize \$1 \$2;
#X obj 51 101 t a b;
#X obj 96 127 symbol \$0-input;
#X obj 51 147 pack s s;
#X obj 222 131 outlet~;
#X connect 0 0 11 0;
#X connect 0 1 1 0;
#X connect 1 0 0 0;
#X connect 2 0 1 1;
#X connect 2 0 3 0;
#X connect 3 0 0 0;
#X connect 4 0 6 0;
#X connect 6 0 8 0;
#X connect 7 0 5 0;
#X connect 8 0 10 0;
#X connect 8 1 9 0;
#X connect 9 0 10 1;
#X connect 10 0 7 0;
#X restore 112 115 pd player;
#N canvas 0 0 450 300 (subpatch) 0;
#X array \$0-input 666229 float 2;
#X coords 0 1 666229 -1 200 60 1;
#X restore 227 34 graph;
#X obj 112 96 bng 15 250 50 0 empty empty load 17 7 0 10 -262144 -1
-1;
#X obj 163 96 tgl 15 0 empty empty play 17 7 0 10 -262144 -1 -1 0 1
;
#X msg 113 190 98.4992 6.67565 4.14764 3.2092 2.85022;
#X msg 146 163 102 102 103 102 101;
#X obj 88 278 vu 12 120 empty empty -1 -8 0 10 -66577 -1 0 0;
#X obj 105 278 vu 12 120 empty empty -1 -8 0 10 -66577 -1 0 0;
#N canvas 672 68 450 300 graphic 0;
#X obj 70 52 inlet;
#X obj 70 90 unpack f f f f f;
#X obj 278 50 inlet;
#N canvas 0 0 296 300 scale 0;
#X obj 115 107 f;
#X obj 89 107 max;
#X msg 189 74 0;
#X obj 189 55 inlet;
#X obj 70 56 inlet;
#X obj 89 193 expr 100 / $f1;
#X obj 70 215 *;
#X obj 70 234 - 100;
#X obj 70 75 t f f b;
#X obj 70 253 outlet;
#X connect 0 0 1 1;
#X connect 1 0 0 1;
#X connect 1 0 5 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 4 0 8 0;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 9 0;
#X connect 8 0 6 0;
#X connect 8 1 1 0;
#X connect 8 2 0 0;
#X restore 21 165 pd scale;
#N canvas 0 0 296 300 scale 0;
#X obj 115 107 f;
#X obj 89 107 max;
#X msg 189 74 0;
#X obj 189 55 inlet;
#X obj 70 56 inlet;
#X obj 89 193 expr 100 / $f1;
#X obj 70 215 *;
#X obj 70 234 - 100;
#X obj 70 75 t f f b;
#X obj 70 253 outlet;
#X connect 0 0 1 1;
#X connect 1 0 0 1;
#X connect 1 0 5 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 4 0 8 0;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 9 0;
#X connect 8 0 6 0;
#X connect 8 1 1 0;
#X connect 8 2 0 0;
#X restore 81 165 pd scale;
#N canvas 0 0 296 300 scale 0;
#X obj 115 107 f;
#X obj 89 107 max;
#X msg 189 74 0;
#X obj 189 55 inlet;
#X obj 70 56 inlet;
#X obj 89 193 expr 100 / $f1;
#X obj 70 215 *;
#X obj 70 234 - 100;
#X obj 70 75 t f f b;
#X obj 70 253 outlet;
#X connect 0 0 1 1;
#X connect 1 0 0 1;
#X connect 1 0 5 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 4 0 8 0;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 9 0;
#X connect 8 0 6 0;
#X connect 8 1 1 0;
#X connect 8 2 0 0;
#X restore 141 165 pd scale;
#N canvas 0 0 296 300 scale 0;
#X obj 115 107 f;
#X obj 89 107 max;
#X msg 189 74 0;
#X obj 189 55 inlet;
#X obj 70 56 inlet;
#X obj 89 193 expr 100 / $f1;
#X obj 70 215 *;
#X obj 70 234 - 100;
#X obj 70 75 t f f b;
#X obj 70 253 outlet;
#X connect 0 0 1 1;
#X connect 1 0 0 1;
#X connect 1 0 5 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 4 0 8 0;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 9 0;
#X connect 8 0 6 0;
#X connect 8 1 1 0;
#X connect 8 2 0 0;
#X restore 201 165 pd scale;
#N canvas 0 0 296 300 scale 0;
#X obj 115 107 f;
#X obj 89 107 max;
#X msg 189 74 0;
#X obj 189 55 inlet;
#X obj 70 56 inlet;
#X obj 89 193 expr 100 / $f1;
#X obj 70 215 *;
#X obj 70 234 - 100;
#X obj 70 75 t f f b;
#X obj 70 253 outlet;
#X connect 0 0 1 1;
#X connect 1 0 0 1;
#X connect 1 0 5 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X connect 4 0 8 0;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 9 0;
#X connect 8 0 6 0;
#X connect 8 1 1 0;
#X connect 8 2 0 0;
#X restore 261 165 pd scale;
#X obj 21 184 outlet;
#X obj 81 184 outlet;
#X obj 141 184 outlet;
#X obj 201 184 outlet;
#X obj 261 184 outlet;
#X floatatom 68 145 5 0 0 0 - - -;
#X text 20 213 This will rescale the inputs so that they automatically
span the range -100 to 0 Since bass frequencies are usually louder
than treble \, this is useful in order to make the bands consistent
with one another in their output.;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 1 0 13 0;
#X connect 1 1 4 0;
#X connect 1 2 5 0;
#X connect 1 3 6 0;
#X connect 1 4 7 0;
#X connect 2 0 7 1;
#X connect 2 0 6 1;
#X connect 2 0 5 1;
#X connect 2 0 4 1;
#X connect 2 0 3 1;
#X connect 3 0 8 0;
#X connect 4 0 9 0;
#X connect 5 0 10 0;
#X connect 6 0 11 0;
#X connect 7 0 12 0;
#X restore 87 254 pd graphic;
#X obj 144 213 bng 32 250 50 0 empty empty reset 35 16 0 10 -262144
-1 -1;
#X obj 122 278 vu 12 120 empty empty -1 -8 0 10 -66577 -1 0 0;
#X obj 139 278 vu 12 120 empty empty -1 -8 0 10 -66577 -1 0 0;
#X obj 156 278 vu 12 120 empty empty -1 -8 0 10 -66577 -1 0 0;
#X obj 48 143 dac~;
#X text 400 192 <--- alpha (magnitude) of loudest bin;
#X obj 225 284 cnv 15 400 80 empty empty BassMidTreble_(bmt~) 50 12
0 18 -233017 -65745 0;
#X text 160 139 <--- [rfft~] and [bmt~] are in here!;
#X obj 231 289 bmt~;
#X obj 223 103 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X msg 223 121 mode \$1;
#X obj 73 498 s bass;
#X obj 99 534 s bassmid;
#X obj 120 507 s mid;
#X obj 223 501 s highmid;
#X obj 163 486 s high;
#X obj 53 444 mavg 10;
#X obj 99 414 mavg 10;
#X obj 121 436 mavg 10;
#X obj 171 433 mavg 10;
#X obj 236 430 mavg 10;
#X text 278 104 <--- mode 0 is maximum magnitude bin in the band \,
mode 1 is sum of all fft bins in the band.;
#X msg 52 43 \; pd dsp 1;
#X text 237 309 Splits a spectral analysis [rfft~] into n bands \,
where n is the creation argument (default 3 \, range 2-128). Reports
the maximum bin magnitude and its corresponding bin number for each
band.;
#X obj 49 89 adc~;
#X obj 49 109 *~ 0;
#X obj 80 89 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
;
#X text 270 163 <--- bin offset in band of loudest (highest magnitude)
bin;
#X text 290 433 <--- smoothing (optional);
#X connect 0 0 5 0;
#X connect 0 1 6 0;
#X connect 1 0 0 0;
#X connect 1 0 14 0;
#X connect 1 0 14 1;
#X connect 3 0 1 0;
#X connect 4 0 1 1;
#X connect 5 0 9 0;
#X connect 7 0 26 0;
#X connect 8 0 27 0;
#X connect 9 0 7 0;
#X connect 9 1 8 0;
#X connect 9 2 11 0;
#X connect 9 3 12 0;
#X connect 9 4 13 0;
#X connect 10 0 9 1;
#X connect 11 0 28 0;
#X connect 12 0 29 0;
#X connect 13 0 30 0;
#X connect 19 0 20 0;
#X connect 20 0 0 1;
#X connect 26 0 21 0;
#X connect 27 0 22 0;
#X connect 28 0 23 0;
#X connect 29 0 25 0;
#X connect 30 0 24 0;
#X connect 34 0 35 0;
#X connect 35 0 0 0;
#X connect 36 0 35 1;
|