-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathfiltercoeff.mmb.pd
653 lines (653 loc) · 15.1 KB
/
filtercoeff.mmb.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
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
#N canvas 468 22 799 621 10;
#X obj 91 75 inlet frequency;
#X obj 191 75 inlet Q/BW/slope;
#X obj 301 75 inlet gain;
#X obj 431 75 inlet;
#N canvas 375 28 571 435 messages 0;
#X obj 97 63 inlet;
#X msg 96 254 0;
#X msg 130 255 1;
#X msg 165 255 2;
#X msg 202 254 3;
#X msg 238 255 4;
#X msg 275 255 5;
#X msg 313 256 6;
#X msg 353 255 7;
#X msg 389 256 8;
#X obj 239 341 s \$0-filter.type;
#X obj 211 57 loadbang;
#X obj 210 81 t b b;
#X obj 237 104 samplerate~;
#X obj 237 127 s \$0-sample.rate;
#X msg 156 67 bang;
#X msg 114 171 \$1;
#X obj 114 145 list append \$1;
#X obj 97 200 route lowpass highpass resonant bandpass notch peaking
lowshelf highshelf allpass lop hip;
#X msg 423 256 9;
#X msg 451 257 10;
#X connect 0 0 18 0;
#X connect 1 0 10 0;
#X connect 2 0 10 0;
#X connect 3 0 10 0;
#X connect 4 0 10 0;
#X connect 5 0 10 0;
#X connect 6 0 10 0;
#X connect 7 0 10 0;
#X connect 8 0 10 0;
#X connect 9 0 10 0;
#X connect 11 0 12 0;
#X connect 12 0 17 0;
#X connect 12 1 13 0;
#X connect 13 0 14 0;
#X connect 15 0 17 0;
#X connect 16 0 18 0;
#X connect 17 0 16 0;
#X connect 18 0 1 0;
#X connect 18 1 2 0;
#X connect 18 2 3 0;
#X connect 18 3 4 0;
#X connect 18 4 5 0;
#X connect 18 5 6 0;
#X connect 18 6 7 0;
#X connect 18 7 8 0;
#X connect 18 8 9 0;
#X connect 18 9 19 0;
#X connect 18 10 20 0;
#X connect 19 0 10 0;
#X connect 20 0 10 0;
#X restore 431 106 pd messages;
#N canvas 0 22 486 394 pack.input 0;
#X obj 54 46 inlet;
#X obj 124 46 inlet;
#X obj 194 46 inlet;
#X obj 54 173 expr 6.28319*$f1/$f2;
#X obj 253 72 r \$0-sample.rate;
#X obj 54 299 pack f f f;
#X obj 54 330 outlet;
#X obj 54 139 clip 0 22050;
#X obj 123 113 / 2;
#X obj 252 224 expr 1/(pow($f1 \, 24));
#X obj 82 263 max 5.96046e-08;
#X obj 253 195 loadbang;
#X connect 0 0 7 0;
#X connect 1 0 10 0;
#X connect 2 0 5 2;
#X connect 3 0 5 0;
#X connect 4 0 3 1;
#X connect 4 0 8 0;
#X connect 5 0 6 0;
#X connect 7 0 3 0;
#X connect 8 0 7 2;
#X connect 9 0 10 1;
#X connect 10 0 5 1;
#X connect 11 0 9 0;
#X restore 91 146 pd pack.input;
#N canvas 5 24 595 449 lowpass 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 185 92 == 0;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X obj 152 144 t l l;
#X msg 311 207 \$1;
#X obj 311 227 cos;
#X msg 311 278 1 \$1;
#X text 340 383 a0 a1 a2 b0 b1 b2;
#X obj 237 383 pack f f f f f f;
#X obj 311 305 -;
#X obj 324 338 / 2;
#X obj 278 278 * -2;
#X obj 152 215 expr sin($f1)/(2*$f2);
#X msg 152 185 \$1 \$2;
#X obj 152 250 t f f;
#X msg 179 279 1 \$1;
#X obj 179 305 -;
#X obj 152 336 + 1;
#X obj 237 413 s \$0-coeff;
#X connect 0 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 4 1;
#X connect 4 0 6 0;
#X connect 5 0 1 0;
#X connect 5 1 4 0;
#X connect 6 0 16 0;
#X connect 6 1 7 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 8 0 14 0;
#X connect 9 0 12 0;
#X connect 11 0 21 0;
#X connect 12 0 11 4;
#X connect 12 0 13 0;
#X connect 13 0 11 5;
#X connect 13 0 11 3;
#X connect 14 0 11 1;
#X connect 15 0 17 0;
#X connect 16 0 15 0;
#X connect 17 0 20 0;
#X connect 17 1 18 0;
#X connect 18 0 19 0;
#X connect 19 0 11 2;
#X connect 20 0 11 0;
#X restore 91 182 pd lowpass;
#N canvas 0 22 519 369 divide.by.a0 0;
#X obj 156 51 r \$0-coeff;
#X msg 306 82 \$2 \$3 \$4 \$5 \$6 \$1;
#X obj 306 111 unpack f f f f f f;
#X obj 306 218 /;
#X obj 336 218 /;
#X obj 366 218 /;
#X obj 396 218 /;
#X obj 426 218 /;
#X obj 306 265 pack f f f f f;
#X obj 156 296 outlet;
#X obj 45 33 inlet;
#X obj 306 164 * -1;
#X obj 336 184 * -1;
#X obj 156 110 unpack f f f f f f;
#X obj 175 143 * -1;
#X obj 207 144 * -1;
#X obj 155 230 pack f f f f f f;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 11 0;
#X connect 2 1 12 0;
#X connect 2 2 5 0;
#X connect 2 3 6 0;
#X connect 2 4 7 0;
#X connect 2 5 7 1;
#X connect 2 5 6 1;
#X connect 2 5 5 1;
#X connect 2 5 4 1;
#X connect 2 5 3 1;
#X connect 3 0 8 0;
#X connect 4 0 8 1;
#X connect 5 0 8 2;
#X connect 6 0 8 3;
#X connect 7 0 8 4;
#X connect 8 0 9 0;
#X connect 11 0 3 0;
#X connect 12 0 4 0;
#X connect 13 0 16 0;
#X connect 13 1 14 0;
#X connect 13 2 15 0;
#X connect 13 3 16 3;
#X connect 13 4 16 4;
#X connect 13 5 16 5;
#X connect 14 0 16 1;
#X connect 15 0 16 2;
#X restore 91 547 pd divide.by.a0;
#X obj 91 587 outlet;
#N canvas 5 24 595 449 highpass 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X obj 152 144 t l l;
#X msg 311 207 \$1;
#X obj 311 227 cos;
#X text 340 383 a0 a1 a2 b0 b1 b2;
#X obj 237 383 pack f f f f f f;
#X obj 324 338 / 2;
#X obj 278 278 * -2;
#X obj 152 215 expr sin($f1)/(2*$f2);
#X msg 152 185 \$1 \$2;
#X obj 152 250 t f f;
#X msg 179 279 1 \$1;
#X obj 179 305 -;
#X obj 152 336 + 1;
#X obj 237 413 s \$0-coeff;
#X obj 311 279 + 1;
#X obj 293 338 * -1;
#X obj 185 92 == 1;
#X connect 0 0 4 0;
#X connect 2 0 21 0;
#X connect 3 0 5 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 5 0 13 0;
#X connect 5 1 6 0;
#X connect 6 0 7 0;
#X connect 7 0 11 0;
#X connect 7 0 19 0;
#X connect 9 0 18 0;
#X connect 10 0 9 5;
#X connect 10 0 9 3;
#X connect 11 0 9 1;
#X connect 12 0 14 0;
#X connect 13 0 12 0;
#X connect 14 0 17 0;
#X connect 14 1 15 0;
#X connect 15 0 16 0;
#X connect 16 0 9 2;
#X connect 17 0 9 0;
#X connect 19 0 10 0;
#X connect 19 0 20 0;
#X connect 20 0 9 4;
#X connect 21 0 3 1;
#X restore 91 212 pd highpass;
#N canvas 5 24 614 566 notch 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X obj 152 144 t l l;
#X text 403 485 a0 a1 a2 b0 b1 b2;
#X obj 300 515 s \$0-coeff;
#X obj 359 220 sin;
#X msg 334 193 \$1;
#X obj 152 262 expr $f3*sinh(log(2)/2*$f2*$f1/$f3);
#X msg 152 234 \$1 \$2;
#X obj 320 321 expr -2*cos($f1);
#X msg 257 374 1 \$1;
#X obj 257 397 -;
#X obj 210 394 + 1;
#X obj 210 319 t f f f;
#X obj 185 92 == 4;
#X obj 300 485 pack f f f 1 f 1;
#X connect 0 0 4 0;
#X connect 2 0 17 0;
#X connect 3 0 5 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 5 0 11 0;
#X connect 5 1 9 0;
#X connect 8 0 10 2;
#X connect 9 0 8 0;
#X connect 9 0 12 0;
#X connect 10 0 16 0;
#X connect 11 0 10 0;
#X connect 12 0 18 1;
#X connect 12 0 18 4;
#X connect 13 0 14 0;
#X connect 14 0 18 2;
#X connect 15 0 18 0;
#X connect 16 0 15 0;
#X connect 16 1 13 0;
#X connect 17 0 3 1;
#X connect 18 0 7 0;
#X restore 91 302 pd notch;
#N canvas 5 24 614 566 peaking 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X text 405 503 a0 a1 a2 b0 b1 b2;
#X obj 302 533 s \$0-coeff;
#X obj 320 321 expr -2*cos($f1);
#X obj 185 92 == 5;
#X msg 320 298 \$1;
#X obj 152 143 t l l l;
#X obj 152 305 t f f;
#X obj 152 350 /;
#X obj 227 350 *;
#X msg 260 395 1 \$1;
#X obj 260 418 -;
#X obj 227 419 + 1;
#X obj 302 503 pack f f f f f f;
#X msg 190 395 1 \$1;
#X obj 190 418 -;
#X obj 152 375 t f f;
#X obj 152 419 + 1;
#X obj 152 262 expr sin($f1)/(2*$f2) \; pow(10 \, $f3/40);
#X connect 0 0 4 0;
#X connect 2 0 8 0;
#X connect 3 0 10 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 7 0 17 1;
#X connect 7 0 17 4;
#X connect 8 0 3 1;
#X connect 9 0 7 0;
#X connect 10 0 22 0;
#X connect 10 1 9 0;
#X connect 11 0 12 0;
#X connect 11 1 13 0;
#X connect 12 0 20 0;
#X connect 13 0 14 0;
#X connect 13 0 16 0;
#X connect 14 0 15 0;
#X connect 15 0 17 5;
#X connect 16 0 17 3;
#X connect 17 0 6 0;
#X connect 18 0 19 0;
#X connect 19 0 17 2;
#X connect 20 0 21 0;
#X connect 20 1 18 0;
#X connect 21 0 17 0;
#X connect 22 0 11 0;
#X connect 22 1 13 1;
#X connect 22 1 12 1;
#X restore 91 332 pd peaking;
#N canvas 5 24 784 585 lowshelf 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X text 405 503 a0 a1 a2 b0 b1 b2;
#X obj 302 533 s \$0-coeff;
#X obj 302 503 pack f f f f f f;
#X obj 185 92 == 6;
#X obj 360 346 expr $f3*(($f3+1) - ($f3-1)*$f1 + $f2) \; 2*$f3*(($f3-1)
- ($f3+1)*$f1) \; $f3*(($f3+1) - ($f3-1)*$f1 - $f2);
#X obj 152 287 t f f;
#X obj 138 347 expr ($f3+1) + ($f3-1)*$f1 + $f2 \; -2*(($f3-1) + ($f3+1)*$f1)
\; ($f3+1) + ($f3-1)*$f1 -$f2;
#X obj 455 211 expr pow(10 \, $f1/40);
#X msg 455 189 \$3;
#X obj 152 234 expr cos($f1) \; sin($f1) * sqrt(($f3*$f3 + 1)*(1/$f2
- 1) + 2*$f3) \; $f3;
#X obj 152 144 t l l l;
#X msg 152 208 \$1;
#X msg 230 178 \$2;
#X obj 230 201 clip 0 1;
#X connect 0 0 4 0;
#X connect 2 0 8 0;
#X connect 3 0 15 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 7 0 6 0;
#X connect 8 0 3 1;
#X connect 9 0 7 3;
#X connect 9 1 7 4;
#X connect 9 2 7 5;
#X connect 10 0 11 0;
#X connect 10 1 9 0;
#X connect 11 0 7 0;
#X connect 11 1 7 1;
#X connect 11 2 7 2;
#X connect 12 0 14 2;
#X connect 13 0 12 0;
#X connect 14 0 10 0;
#X connect 14 1 9 1;
#X connect 14 1 11 1;
#X connect 14 2 9 2;
#X connect 14 2 11 2;
#X connect 15 0 16 0;
#X connect 15 1 17 0;
#X connect 15 2 13 0;
#X connect 16 0 14 0;
#X connect 17 0 18 0;
#X connect 18 0 14 1;
#X restore 91 362 pd lowshelf;
#N canvas 5 24 784 585 highshelf 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X text 405 503 a0 a1 a2 b0 b1 b2;
#X obj 302 533 s \$0-coeff;
#X obj 302 503 pack f f f f f f;
#X obj 455 212 expr pow(10 \, $f1/40);
#X msg 455 192 \$3;
#X obj 152 287 t f f;
#X obj 185 92 == 7;
#X obj 138 347 expr ($f3+1) - ($f3-1)*$f1 + $f2 \; 2*(($f3-1) - ($f3+1)*$f1)
\; ($f3+1) - ($f3-1)*$f1 -$f2;
#X obj 358 347 expr $f3*(($f3+1) + ($f3-1)*$f1 + $f2) \; -2*$f3*(($f3-1)
+ ($f3+1)*$f1) \; $f3*(($f3+1) + ($f3-1)*$f1 - $f2);
#X obj 152 234 expr cos($f1) \; sin($f1) * sqrt(($f3*$f3 + 1)*(1/$f2
- 1) + 2*$f3) \; $f3;
#X msg 250 178 \$2;
#X obj 250 201 clip 0 1;
#X obj 152 144 t l l l;
#X msg 152 206 \$1;
#X connect 0 0 4 0;
#X connect 2 0 11 0;
#X connect 3 0 17 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 7 0 6 0;
#X connect 8 0 14 2;
#X connect 9 0 8 0;
#X connect 10 0 12 0;
#X connect 10 1 13 0;
#X connect 11 0 3 1;
#X connect 12 0 7 0;
#X connect 12 1 7 1;
#X connect 12 2 7 2;
#X connect 13 0 7 3;
#X connect 13 1 7 4;
#X connect 13 2 7 5;
#X connect 14 0 10 0;
#X connect 14 1 12 1;
#X connect 14 1 13 1;
#X connect 14 2 12 2;
#X connect 14 2 13 2;
#X connect 15 0 16 0;
#X connect 16 0 14 1;
#X connect 17 0 18 0;
#X connect 17 1 15 0;
#X connect 17 2 9 0;
#X connect 18 0 14 0;
#X restore 91 392 pd highshelf;
#N canvas 5 24 784 585 allpass 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X text 405 503 a0 a1 a2 b0 b1 b2;
#X obj 302 533 s \$0-coeff;
#X obj 302 503 pack f f f f f f;
#X obj 372 393 expr -2*cos($f1);
#X msg 372 366 \$1;
#X obj 152 144 t l l l;
#X obj 352 235 sin;
#X msg 146 236 \$1 \$2;
#X obj 146 298 t f f;
#X msg 177 335 1 \$1;
#X obj 178 359 -;
#X obj 146 381 + 1;
#X obj 146 403 t f f;
#X obj 185 92 == 8;
#X obj 146 262 expr $f3*sinh(log(2)/2*$f2*$f1/$f3);
#X connect 0 0 4 0;
#X connect 2 0 18 0;
#X connect 3 0 10 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 7 0 6 0;
#X connect 8 0 7 1;
#X connect 8 0 7 4;
#X connect 9 0 8 0;
#X connect 10 0 12 0;
#X connect 10 1 11 0;
#X connect 10 2 9 0;
#X connect 11 0 19 2;
#X connect 12 0 19 0;
#X connect 13 0 16 0;
#X connect 13 1 14 0;
#X connect 14 0 15 0;
#X connect 15 0 7 3;
#X connect 15 0 7 2;
#X connect 16 0 17 0;
#X connect 17 0 7 0;
#X connect 17 1 7 5;
#X connect 18 0 3 1;
#X connect 19 0 13 0;
#X restore 91 422 pd allpass;
#N canvas 5 24 614 566 resonant 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X text 403 485 a0 a1 a2 b0 b1 b2;
#X obj 300 515 s \$0-coeff;
#X msg 334 193 \$1;
#X obj 300 485 pack f f f f 0 f;
#X obj 440 398 * -1;
#X msg 152 234 \$1 \$2;
#X obj 308 305 expr -2*cos($f1);
#X msg 257 344 1 \$1;
#X obj 257 367 -;
#X obj 210 364 + 1;
#X obj 185 92 == 2;
#X obj 152 144 t l l l;
#X obj 402 366 * 1;
#X msg 412 181 \$2;
#X obj 210 319 t f f f;
#X obj 152 262 expr sin($f1)/(2.*$f2);
#X connect 0 0 4 0;
#X connect 2 0 15 0;
#X connect 3 0 16 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 7 0 11 0;
#X connect 8 0 6 0;
#X connect 9 0 8 5;
#X connect 10 0 20 0;
#X connect 11 0 8 1;
#X connect 12 0 13 0;
#X connect 13 0 8 2;
#X connect 14 0 8 0;
#X connect 15 0 3 1;
#X connect 16 0 10 0;
#X connect 16 1 7 0;
#X connect 16 2 18 0;
#X connect 17 0 9 0;
#X connect 17 0 8 3;
#X connect 18 0 17 1;
#X connect 19 0 14 0;
#X connect 19 1 12 0;
#X connect 19 2 17 0;
#X connect 20 0 19 0;
#X restore 91 242 pd resonant;
#N canvas 27 98 614 566 bandpass 0;
#X obj 85 58 inlet;
#X obj 85 120 outlet;
#X obj 185 59 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 86 t l l;
#X obj 152 144 t l l;
#X text 403 485 a0 a1 a2 b0 b1 b2;
#X obj 300 515 s \$0-coeff;
#X msg 334 193 \$1;
#X obj 300 485 pack f f f f 0 f;
#X msg 152 234 \$1 \$2;
#X obj 311 297 expr -2*cos($f1);
#X msg 257 374 1 \$1;
#X obj 257 397 -;
#X obj 210 394 + 1;
#X obj 185 92 == 3;
#X obj 210 319 t f f f;
#X obj 385 371 * -1;
#X obj 152 262 expr sin($f1)/(2.*$f2);
#X connect 0 0 4 0;
#X connect 2 0 15 0;
#X connect 3 0 5 0;
#X connect 4 0 1 0;
#X connect 4 1 3 0;
#X connect 5 0 10 0;
#X connect 5 1 8 0;
#X connect 8 0 11 0;
#X connect 9 0 7 0;
#X connect 10 0 18 0;
#X connect 11 0 9 1;
#X connect 12 0 13 0;
#X connect 13 0 9 2;
#X connect 14 0 9 0;
#X connect 15 0 3 1;
#X connect 16 0 14 0;
#X connect 16 1 12 0;
#X connect 16 2 17 0;
#X connect 16 2 9 3;
#X connect 17 0 9 5;
#X connect 18 0 16 0;
#X restore 91 272 pd bandpass;
#X obj 91 117 f;
#X text 262 33 based on The Audio EQ Cookbook by Robert Bristow-Johnson
and Pd source;
#N canvas 210 22 595 449 lop 0;
#X obj 85 28 inlet;
#X obj 85 410 outlet;
#X obj 185 29 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 56 t l l;
#X text 255 382 a0 a1 a2 b0 b1 b2;
#X obj 185 92 == 9;
#X obj 85 119 spigot;
#X obj 118 92 != 9;
#X msg 152 185 \$1;
#X obj 152 382 pack 0 0 0 0 0;
#X obj 152 218 clip 0 1;
#X obj 152 273 t f f;
#X msg 152 311 1 \$1;
#X obj 152 333 -;
#X obj 152 410 outlet;
#X connect 0 0 4 0;
#X connect 2 0 6 0;
#X connect 2 0 8 0;
#X connect 3 0 9 0;
#X connect 4 0 7 0;
#X connect 4 1 3 0;
#X connect 6 0 3 1;
#X connect 7 0 1 0;
#X connect 8 0 7 1;
#X connect 9 0 11 0;
#X connect 10 0 15 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 12 1 10 2;
#X connect 13 0 14 0;
#X connect 14 0 10 0;
#X restore 91 457 pd lop;
#N canvas 210 22 595 449 hip 0;
#X obj 85 28 inlet;
#X obj 85 410 outlet;
#X obj 185 29 r \$0-filter.type;
#X obj 152 119 spigot;
#X obj 85 56 t l l;
#X text 255 382 a0 a1 a2 b0 b1 b2;
#X obj 85 119 spigot;
#X msg 152 185 \$1;
#X obj 152 218 clip 0 1;
#X msg 152 311 1 \$1;
#X obj 152 333 -;
#X obj 152 410 outlet;
#X obj 152 382 pack 0 0 1 -1 0;
#X obj 118 92 != 10;
#X obj 185 92 == 10;
#X connect 0 0 4 0;
#X connect 2 0 13 0;
#X connect 2 0 14 0;
#X connect 3 0 7 0;
#X connect 4 0 6 0;
#X connect 4 1 3 0;
#X connect 6 0 1 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 12 0;
#X connect 12 0 11 0;
#X connect 13 0 6 1;
#X connect 14 0 3 1;
#X restore 91 489 pd hip;
#X connect 0 0 17 0;
#X connect 1 0 5 1;
#X connect 2 0 5 2;
#X connect 3 0 4 0;
#X connect 5 0 6 0;
#X connect 6 0 9 0;
#X connect 7 0 8 0;
#X connect 9 0 15 0;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 14 0 19 0;
#X connect 15 0 16 0;
#X connect 16 0 10 0;
#X connect 17 0 5 0;
#X connect 19 0 20 0;
#X connect 19 1 8 0;
#X connect 20 0 7 0;
#X connect 20 1 8 0;