#N canvas 854 454 487 362 10; #N canvas 0 22 458 308 pvcompand-block 0; #X obj 231 190 block~ 256; #X obj 231 133 pvcompand~; #X obj 231 86 inlet~; #X obj 296 94 inlet; #X obj 362 117 inlet; #X obj 231 159 outlet~; #X connect 1 0 5 0; #X connect 2 0 1 0; #X connect 3 0 1 1; #X connect 4 0 1 0; #X restore 121 99 pd pvcompand-block; #X obj 121 139 dac~; #N canvas 0 22 466 316 messages 0; #X obj 203 227 outlet; #X obj 281 174 fftease-system; #N canvas 181 394 454 304 init 0; #X obj 97 48 loadbang; #X obj 97 182 outlet; #X obj 262 124 s compandslider; #X msg 262 97 -6; #X text 105 152 attempt to preserve overall amplitude; #X msg 97 130 normalize \$1; #X obj 97 103 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 ; #X msg 97 83 1; #X connect 0 0 3 0; #X connect 0 0 7 0; #X connect 3 0 2 0; #X connect 5 0 1 0; #X connect 6 0 5 0; #X connect 7 0 6 0; #X restore 203 153 pd init; #X connect 1 0 0 0; #X connect 2 0 0 0; #X restore 242 69 pd messages; #X msg 211 165 \; pd dsp \$1; #X obj 211 143 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X floatatom 181 78 5 0 0 0 - compand-factor -; #X obj 123 229 hsl 128 15 -60 60 0 0 compand-factor compandslider compand-factor -2 -6 0 8 -258842 -1 -1 5115 1; #X text 256 230 -> expansion; #X text 17 230 compression <-; #X text 23 258 pvcompand~ either expands or compresses the differences between the amplitudes of the spectral frames. The threshold is interpreted as dB and useful ranges are from about -60 to +60. Positive values increase the "peakiness" of the sound and negative values tend to whiten the spectrum.; #N canvas 179 221 661 474 sound-source 0; #X text 13 300 try a vocal sound or other sound with strong formant structure; #X obj 31 194 soundfiler; #X obj 31 160 openpanel; #N canvas 0 22 450 300 graph1 0; #X array pvcompand-sound1 4e+06 float 2; #X coords 0 1 4e+06 -1 200 140 1; #X restore 237 13 graph; #X msg 31 131 bang; #X obj 227 284 outlet~; #X msg 227 244 bang; #X obj 348 228 spigot; #X obj 385 205 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1; #X text 63 132 open the sound; #X text 133 244 then play it; #X text 304 190 loop if you like; #X obj 227 268 tabplay~ pvcompand-sound1; #X msg 31 177 read -resize \$1 pvcompand-sound1; #X connect 2 0 13 0; #X connect 4 0 2 0; #X connect 6 0 12 0; #X connect 7 0 6 0; #X connect 8 0 7 1; #X connect 12 0 5 0; #X connect 12 1 7 0; #X connect 13 0 1 0; #X restore 121 38 pd sound-source; #X text 232 39 <- first load sound here; #X connect 0 0 1 0; #X connect 0 0 1 1; #X connect 2 0 0 2; #X connect 4 0 3 0; #X connect 5 0 0 1; #X connect 10 0 0 0;