aboutsummaryrefslogtreecommitdiff
path: root/pd/doc/3.audio.examples/51.ring.modulation.pd
diff options
context:
space:
mode:
Diffstat (limited to 'pd/doc/3.audio.examples/51.ring.modulation.pd')
-rw-r--r--pd/doc/3.audio.examples/51.ring.modulation.pd153
1 files changed, 153 insertions, 0 deletions
diff --git a/pd/doc/3.audio.examples/51.ring.modulation.pd b/pd/doc/3.audio.examples/51.ring.modulation.pd
new file mode 100644
index 00000000..0380a07d
--- /dev/null
+++ b/pd/doc/3.audio.examples/51.ring.modulation.pd
@@ -0,0 +1,153 @@
+#N canvas 1 23 809 567 12;
+#X graph graph1 0 -1.02 882 1.02 542 471 742 341;
+#X array pulse-output 882 float 0;
+#X pop;
+#X floatatom 101 331 0 0 0;
+#N canvas 159 26 495 266 output 0;
+#X obj 338 160 t b;
+#X obj 338 110 f;
+#X obj 338 60 inlet;
+#X text 344 29 mute;
+#X obj 338 185 f;
+#X msg 425 178 0;
+#X msg 338 85 bang;
+#X obj 338 135 moses 1;
+#X obj 425 153 t b f;
+#X obj 397 117 moses 1;
+#X obj 83 148 dbtorms;
+#X obj 397 92 r master-lvl;
+#X obj 83 42 r master-lvl;
+#X obj 338 210 s master-lvl;
+#X obj 22 181 inlet~;
+#X obj 199 41 inlet;
+#X text 199 18 level;
+#X obj 199 100 s master-lvl;
+#X msg 96 65 set \$1;
+#X obj 96 89 outlet;
+#X msg 214 64 \; pd dsp 1;
+#X obj 83 194 line~;
+#X obj 22 212 *~;
+#X obj 22 241 dac~;
+#X obj 83 171 pack 0 50;
+#X text 20 158 audio;
+#X text 93 110 show level;
+#X connect 0 0 4 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 4 0 13 0;
+#X connect 5 0 13 0;
+#X connect 6 0 1 0;
+#X connect 7 0 0 0;
+#X connect 7 1 8 0;
+#X connect 8 0 5 0;
+#X connect 9 1 4 1;
+#X connect 10 0 24 0;
+#X connect 11 0 1 1;
+#X connect 11 0 9 0;
+#X connect 12 0 10 0;
+#X connect 12 0 18 0;
+#X connect 14 0 22 0;
+#X connect 15 0 17 0;
+#X connect 15 0 20 0;
+#X connect 18 0 19 0;
+#X connect 21 0 22 1;
+#X connect 22 0 23 0;
+#X connect 22 0 23 1;
+#X connect 24 0 21 0;
+#X restore 63 359 pd output;
+#X msg 139 332 MUTE;
+#X text 179 331 <-- output amplitude;
+#X floatatom 63 48 0 0 0;
+#X obj 63 303 hip~ 5;
+#X graph graph1 0 0 128 1000 490 259 746 129;
+#X array spectrum 128 float 0;
+#X pop;
+#X obj 129 278 tabwrite~ pulse-output;
+#X msg 129 243 bang;
+#X text 170 244 <-- click to graph;
+#N canvas 204 17 358 234 fft 0;
+#X obj 46 48 inlet~;
+#X obj 159 181 tabwrite~ spectrum;
+#X obj 159 145 inlet;
+#X obj 46 78 rfft~;
+#X obj 46 111 *~;
+#X obj 77 111 *~;
+#X obj 46 141 sqrt~;
+#X obj 191 45 block~ 2048 1;
+#X connect 0 0 3 0;
+#X connect 2 0 1 0;
+#X connect 3 0 4 0;
+#X connect 3 0 4 1;
+#X connect 3 1 5 0;
+#X connect 3 1 5 1;
+#X connect 4 0 6 0;
+#X connect 5 0 6 0;
+#X connect 6 0 1 0;
+#X restore 74 281 pd fft;
+#X text 488 265 0;
+#X obj 79 194 osc~ 0;
+#N canvas 0 0 600 384 pulse-train 0;
+#X obj 185 162 line~;
+#X obj 39 251 cos~;
+#X obj 185 138 pack 0 50;
+#X obj 40 178 -~ 0.5;
+#X obj 40 204 *~;
+#X obj 185 63 / 10;
+#X obj 185 87 moses 0;
+#X msg 185 111 0;
+#X obj 39 227 clip~ -0.5 0.5;
+#X obj 185 187 +~ 1;
+#X obj 38 274 +~ 1;
+#X obj 184 38 inlet;
+#X obj 38 299 outlet~;
+#X obj 40 154 phasor~ 344.532;
+#X text 51 13 This is the pulse train generator from example 17;
+#X connect 0 0 9 0;
+#X connect 1 0 10 0;
+#X connect 2 0 0 0;
+#X connect 3 0 4 0;
+#X connect 4 0 8 0;
+#X connect 5 0 6 0;
+#X connect 6 0 7 0;
+#X connect 6 1 2 0;
+#X connect 7 0 2 0;
+#X connect 8 0 1 0;
+#X connect 9 0 4 1;
+#X connect 10 0 12 0;
+#X connect 11 0 5 0;
+#X connect 13 0 3 0;
+#X restore 63 75 pd pulse-train;
+#X floatatom 79 168 0 0 0;
+#X text 124 167 <-- modulation frequency;
+#X text 102 48 <-- bandwidth;
+#X obj 63 218 *~;
+#X text 736 262 2656 Hz.;
+#X text 196 77 fundamental is 344.5 Hz;
+#X text 157 210 an oscillator...;
+#X text 66 22 RING MODULATION;
+#X text 542 473 ---- 0.02 seconds ----;
+#X text 528 533 updated for Pd version 0.34;
+#X text 156 195 Just multiply by;
+#X text 12 422 Ring modulation is just multiplication by an oscillator.
+This patch shows the effect of ring modulation on a pulse train. When
+bandwidth is high and modulation frequency is moderately low \, you
+see the spectrum reflect off the "y axis".;
+#X obj 79 140 * 344.5;
+#X floatatom 79 114 0 0 0;
+#X text 120 114 <-- modulation frequency as;
+#X text 159 128 multiple of fundamental;
+#X connect 1 0 2 1;
+#X connect 2 0 1 0;
+#X connect 3 0 2 2;
+#X connect 5 0 14 0;
+#X connect 6 0 2 0;
+#X connect 9 0 8 0;
+#X connect 9 0 11 1;
+#X connect 13 0 18 1;
+#X connect 14 0 18 0;
+#X connect 15 0 13 0;
+#X connect 18 0 11 0;
+#X connect 18 0 6 0;
+#X connect 18 0 8 0;
+#X connect 27 0 15 0;
+#X connect 28 0 27 0;