Just in case anyone's curious, here's what I have so far for a DJ-style,
3-band EQ with kill switch capability, but not so flat frequency
crossovers. The [lowpass]/[bandpass]/[highpass] objects are from the
GGEE lib, and their equivalent in [biquad~] specs are posted afterwards
for those who don't have that lib installed.
BASS:
[lowpass 370 310] --> 3 x [biquad~] in series
=
3 x [biquad~ 1.86972 -0.872325 0.000650245 0.00130049 0.000650245] in
series
MIDS:
[bandpass 1175 490] --> 3 x [biquad~] in series
=
3 x [biquad~ 1.36591 -0.385279 0.307361 0 -0.307361] in series
HIGHS:
[highpass 2350 130] --> 2 x [biquad~] in series
=
2 x [biquad~ 1.63386 -0.729864 0.840931 -1.68186 0.840931] in series
There are still noticable notches in the lower and upper mids, however.
But they work in the "musical" sense, at least for the tracks I tested
them with, to isolate the bass, melody and hi-end percussion. Developed
rather unscientifically using [pink~] and also some crappy German
techno. Oompah-oompah and 4-to-the-floor, baby!
Suggestions and improvements deeply appreciated,
d.
--
derek holzer :::
http://www.umatic.nl
---Oblique Strategy # 7:
"Accept advice"
#N canvas 184 182 718 329 10;
#X obj 10 3 cnv 15 150 300 empty empty empty 20 12 0 14 -24198 -66577
0;
#X obj 168 3 adc~;
#X obj 233 23 tgl 15 1 empty empty empty 0 -6 0 8 -258699 -1 -1 1 1
;
#X obj 217 3 pink~;
#N canvas 0 0 450 300 using 0;
#X obj 67 239 outlet~;
#X obj 65 134 biquad~;
#X obj 66 154 biquad~;
#X obj 66 174 biquad~;
#X obj 35 110 lowpass 370 310;
#X obj 194 134 biquad~;
#X obj 193 154 biquad~;
#X obj 194 174 biquad~;
#X obj 163 111 bandpass 1175 490;
#X obj 305 111 highpass 2350 130;
#X obj 334 134 biquad~;
#X obj 334 154 biquad~;
#X obj 163 25 loadbang;
#X obj 193 239 outlet~;
#X obj 335 239 outlet~;
#X obj 66 25 inlet~ signal;
#X obj 235 54 switch~;
#X obj 235 25 inlet switch;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X connect 4 0 2 0;
#X connect 4 0 3 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X connect 7 0 13 0;
#X connect 8 0 5 0;
#X connect 8 0 6 0;
#X connect 8 0 7 0;
#X connect 9 0 10 0;
#X connect 9 0 11 0;
#X connect 10 0 11 0;
#X connect 11 0 14 0;
#X connect 12 0 4 0;
#X connect 12 0 8 0;
#X connect 12 0 9 0;
#X connect 15 0 1 0;
#X connect 15 0 5 0;
#X connect 15 0 10 0;
#X connect 17 0 16 0;
#X restore 241 140 pd using GGEE filter objects;
#N canvas 0 0 727 430 using 0;
#X obj 66 25 inlet~;
#X obj 67 369 outlet~;
#X obj 193 369 outlet~;
#X obj 335 369 outlet~;
#X obj 66 80 biquad~ 1.86972 -0.872325 0.000650245 0.00130049 0.000650245
;
#X text 185 59 lo x3;
#X obj 66 100 biquad~ 1.86972 -0.872325 0.000650245 0.00130049 0.000650245
;
#X obj 66 120 biquad~ 1.86972 -0.872325 0.000650245 0.00130049 0.000650245
;
#X obj 194 172 biquad~ 1.36591 -0.385279 0.307361 0 -0.307361;
#X text 329 152 mid x3;
#X obj 194 192 biquad~ 1.36591 -0.385279 0.307361 0 -0.307361;
#X obj 194 212 biquad~ 1.36591 -0.385279 0.307361 0 -0.307361;
#X obj 336 263 biquad~ 1.63386 -0.729864 0.840931 -1.68186 0.840931
;
#X text 476 241 hi x2;
#X obj 336 283 biquad~ 1.63386 -0.729864 0.840931 -1.68186 0.840931
;
#X obj 255 54 switch~;
#X obj 255 25 inlet switch;
#X connect 0 0 4 0;
#X connect 0 0 8 0;
#X connect 0 0 12 0;
#X connect 4 0 6 0;
#X connect 6 0 7 0;
#X connect 7 0 1 0;
#X connect 8 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 2 0;
#X connect 12 0 14 0;
#X connect 14 0 3 0;
#X connect 16 0 15 0;
#X restore 449 140 pd using raw biquad~ objects;
#X obj 185 23 tgl 15 1 empty empty empty 0 -6 0 8 -258699 -1 -1 0 1
;
#X obj 21 165 hsl 128 15 0 1 0 1 empty empty dry/wet -2 -6 0 8 -241291
-1 -1 12700 1;
#X obj 170 278 dac~;
#X obj 21 17 vsl 15 128 0 1 0 1 empty empty BASS 0 -8 0 8 -44926 -1
-1 12700 1;
#X obj 76 17 vsl 15 128 0 1 0 1 empty empty MIDS 0 -8 0 8 -44926 -1
-1 12700 1;
#X obj 135 17 vsl 15 128 0 1 0 1 empty empty HIGHS 0 -8 0 8 -44926
-1 -1 12700 1;
#N canvas 401 243 528 469 output_mixer 0;
#X obj 39 11 inlet dry/wet;
#X obj 22 -19 inlet~ dry;
#X obj 248 -19 inlet~ bass;
#X obj 338 -19 inlet~ mids;
#X obj 424 -19 inlet~ highs;
#X obj 87 35 inlet bass;
#X obj 127 60 inlet mids;
#X obj 157 86 inlet highs;
#X obj 22 327 outlet~;
#X obj 111 235
*~;
#X obj 141 235 *~;
#X obj 71 235
*~;
#X obj 23 288 *~;
#X obj 70 288
*~;
#X obj 39 35 * -1;
#X obj 39 57 + 1;
#X connect 0 0 14 0;
#X connect 0 0 13 1;
#X connect 1 0 12 0;
#X connect 2 0 11 0;
#X connect 3 0 9 0;
#X connect 4 0 10 0;
#X connect 5 0 11 1;
#X connect 6 0 9 1;
#X connect 7 0 10 1;
#X connect 9 0 13 0;
#X connect 10 0 13 0;
#X connect 11 0 13 0;
#X connect 12 0 8 0;
#X connect 13 0 8 0;
#X connect 14 0 15 0;
#X connect 15 0 12 1;
#X restore 170 246 pd output_mixer;
#X obj 432 78 tgl 15 1 empty empty ON 0 -6 0 8 -258699 -1 -1 1 1;
#X obj 640 78 tgl 15 1 empty empty ON 0 -6 0 8 -258699 -1 -1 0 1;
#X text 251 23 <--choose your source;
#X obj 403 3 cnv 15 255 20 empty empty empty 20 12 0 14 -24198 -66577
0;
#X text 404 5 Test version for DJ-style 3-band EQ.;
#X obj 548 283 cnv 15 110 20 empty empty empty 20 12 0 14 -24198 -66577
0;
#X text 551 285 derek@umatic.nl;
#X obj 217 50
*~;
#X obj 169 50 *~;
#X connect 1 0 21 0;
#X connect 2 0 20 1;
#X connect 3 0 20 0;
#X connect 4 0 12 5;
#X connect 4 1 12 6;
#X connect 4 2 12 7;
#X connect 5 0 12 5;
#X connect 5 1 12 6;
#X connect 5 2 12 7;
#X connect 6 0 21 1;
#X connect 7 0 12 1;
#X connect 9 0 12 2;
#X connect 10 0 12 3;
#X connect 11 0 12 4;
#X connect 12 0 8 0;
#X connect 12 0 8 1;
#X connect 13 0 4 1;
#X connect 14 0 5 1;
#X connect 20 0 5 0;
#X connect 20 0 12 0;
#X connect 20 0 4 0;
#X connect 21 0 5 0;
#X connect 21 0 12 0;
#X connect 21 0 4 0;