aboutsummaryrefslogtreecommitdiff
path: root/crossx~-help.pd
diff options
context:
space:
mode:
Diffstat (limited to 'crossx~-help.pd')
-rw-r--r--crossx~-help.pd135
1 files changed, 135 insertions, 0 deletions
diff --git a/crossx~-help.pd b/crossx~-help.pd
new file mode 100644
index 0000000..82ec6f7
--- /dev/null
+++ b/crossx~-help.pd
@@ -0,0 +1,135 @@
+#N canvas 684 407 470 320 10;
+#X obj 25 189 dac~;
+#N canvas 0 22 470 320 rich-harmonic-source 0;
+#X obj 127 232 outlet~;
+#X obj 127 125 phasor~ 100;
+#X obj 212 126 phasor~ 125;
+#X obj 296 125 phasor~ 150;
+#X obj 127 183 *~ 0.3;
+#X floatatom 127 67 5 0 0 0 - - -;
+#X obj 212 99 * 1.25;
+#X obj 296 100 * 1.5;
+#X obj 130 34 hsl 128 15 60 600 0 0 empty empty empty -2 -6 0 8 -154413
+-1 -1 8900 1;
+#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 5 0 6 0;
+#X connect 5 0 1 0;
+#X connect 5 0 7 0;
+#X connect 6 0 2 0;
+#X connect 7 0 3 0;
+#X connect 8 0 5 0;
+#X restore 25 23 pd rich-harmonic-source;
+#X floatatom 91 66 5 0 0 0 - - -;
+#N canvas 179 221 657 470 vocal-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 crossx-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 msg 31 177 read -resize \$1 crossx-sound1;
+#X obj 227 268 tabplay~ crossx-sound1;
+#X connect 2 0 12 0;
+#X connect 4 0 2 0;
+#X connect 6 0 13 0;
+#X connect 7 0 6 0;
+#X connect 8 0 7 1;
+#X connect 12 0 1 0;
+#X connect 13 0 5 0;
+#X connect 13 1 7 0;
+#X restore 58 45 pd vocal-source;
+#X msg 186 229 \; pd dsp \$1;
+#X obj 186 208 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 25 160 *~ 1;
+#X floatatom 48 141 5 0 0 0 - - -;
+#X text 90 143 <- might need large amplitude;
+#X text 96 155 but watch for sudden spikes!;
+#X text 133 70 <- synthesis advancement threshold;
+#N canvas 172 351 466 316 crossx-block 0;
+#X obj 161 178 outlet~;
+#X obj 161 49 inlet~;
+#X obj 219 100 inlet;
+#X obj 283 102 inlet;
+#X obj 161 213 block~ 256;
+#X obj 190 80 inlet~;
+#X obj 161 132 crossx~ 4;
+#X connect 1 0 6 0;
+#X connect 2 0 6 2;
+#X connect 3 0 6 0;
+#X connect 5 0 6 1;
+#X connect 6 0 0 0;
+#X restore 25 88 pd crossx-block;
+#N canvas 0 22 458 308 messages 0;
+#X obj 56 233 outlet;
+#X msg 56 175 autonorm \$1;
+#X text 56 66 frame normalization to tame amplitude spikes;
+#X obj 209 217 fftease-system;
+#N canvas 0 22 458 308 rescale-autonorm 0;
+#X obj 93 30 inlet;
+#X obj 61 92 t b b;
+#X msg 61 115 1;
+#X msg 108 118 0.05;
+#X obj 108 144 s output-gain;
+#X obj 96 221 outlet;
+#X obj 197 49 inlet;
+#X obj 226 102 t b b;
+#X obj 243 237 s output-gain;
+#X msg 313 130 0;
+#X msg 243 211 5;
+#X obj 261 174 pipe 100;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 2 0 5 0;
+#X connect 3 0 4 0;
+#X connect 6 0 7 0;
+#X connect 7 0 11 0;
+#X connect 7 1 9 0;
+#X connect 9 0 5 0;
+#X connect 10 0 8 0;
+#X connect 11 0 10 0;
+#X restore 56 122 pd rescale-autonorm;
+#X obj 56 93 bng 15 250 50 0 empty empty on 0 -6 0 8 -262144 -1 -1
+;
+#X obj 184 94 bng 15 250 50 0 empty empty off 0 -6 0 8 -262144 -1 -1
+;
+#X connect 1 0 0 0;
+#X connect 3 0 0 0;
+#X connect 4 0 1 0;
+#X connect 5 0 4 0;
+#X connect 6 0 4 1;
+#X restore 143 88 pd messages;
+#X obj 48 118 r output-gain;
+#X text 96 170 a compressor could be useful here;
+#X obj 215 51 hsl 128 15 0 0.05 0 0 empty empty empty -2 -6 0 8 -191432
+-1 -1 700 1;
+#X text 26 262 crossx~ is related to xsyn~ but uses a threshold to
+determine whether to perform spectral multiplication or maintain the
+last calculated amplitude/phase pair. crossx~ is also somewhat less
+CPU intensive.;
+#X connect 1 0 11 0;
+#X connect 2 0 11 2;
+#X connect 3 0 11 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 6 0 0 1;
+#X connect 7 0 6 1;
+#X connect 11 0 6 0;
+#X connect 12 0 11 3;
+#X connect 13 0 7 0;
+#X connect 15 0 2 0;