aboutsummaryrefslogtreecommitdiff
path: root/pd/doc/3.audio.examples
diff options
context:
space:
mode:
Diffstat (limited to 'pd/doc/3.audio.examples')
-rw-r--r--pd/doc/3.audio.examples/A07.fusion.pd76
-rw-r--r--pd/doc/3.audio.examples/A08.beating.pd41
-rw-r--r--pd/doc/3.audio.examples/A09.frequency.mod.pd54
-rw-r--r--pd/doc/3.audio.examples/A10.review.pd37
4 files changed, 208 insertions, 0 deletions
diff --git a/pd/doc/3.audio.examples/A07.fusion.pd b/pd/doc/3.audio.examples/A07.fusion.pd
new file mode 100644
index 00000000..e391099c
--- /dev/null
+++ b/pd/doc/3.audio.examples/A07.fusion.pd
@@ -0,0 +1,76 @@
+#N canvas 18 14 650 653 12;
+#X floatatom 32 60 0 0 0 0 - - -;
+#X obj 32 86 mtof;
+#X obj 32 323 output~;
+#X msg 32 34 60;
+#X text 67 63 <-- choose a pitch;
+#X text 68 34 <-- reset to middle C;
+#X obj 32 154 osc~;
+#X obj 73 130 * 2;
+#X obj 73 154 osc~;
+#X obj 137 154 osc~;
+#X obj 137 130 * 3;
+#X obj 201 155 osc~;
+#X obj 201 131 * 4;
+#X obj 137 179 *~ 0.2;
+#X obj 33 289 +~;
+#X obj 74 259 *~;
+#X obj 109 260 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+1;
+#X obj 74 210 +~;
+#X obj 74 234 +~;
+#X text 133 7 Adding sinusoids to make a complex tone;
+#N canvas 0 0 450 300 graph1 0;
+#X array tab.01.07 882 float 0;
+#X coords 0 1.02 881 -1.02 200 130 1;
+#X restore 426 222 graph;
+#X msg 116 295 bang;
+#X text 165 294 <-- click to graph;
+#X text 260 129 frequencies of harmonics;
+#X text 260 155 four oscillators;
+#X text 264 181 adjust amplitudes;
+#X text 109 233 add the three overtones together;
+#X obj 116 324 tabwrite~ tab.01.07;
+#X text 381 632 updated for Pd version 0.40.;
+#X text 429 360 ---- 0.02 seconds ----;
+#X obj 73 179 *~ 0.1;
+#X obj 201 179 *~ 0.5;
+#X text 129 259 <-- overtones ON/OFF;
+#X text 29 580 To hear the output \, choose a pitch (at top) \, optionally
+click the "overtones" control \, and mouse up the output volume. Click
+the "bang" message to graph it.;
+#X text 31 392 A simple way to build non-sinusoidal \, periodic musical
+tones is to sum a series of harmonically tuned sinusoids. Here the
+four oscillators have frequencies in a 1:2:3:4 ratio (the three "*"
+objects compute the second \, third \, and fourth one). The amplitudes
+are adjusted by the "*~ 0.1" \, etc. \, objects. Note that \, since
+the frequency (from the "mtof") is a message \, a "*" box suffices
+to operate on it \, but the oscillator's output \, being an audio signal
+\, needs "*~" instead. The control marked "overtones ON/OFF" is a toggle
+switch. Click to turn it on and off. Of the overtones are "off" you
+hear only a sinusoid from the forst oscillator. If on \, you hear all
+four.;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 7 0;
+#X connect 1 0 10 0;
+#X connect 1 0 12 0;
+#X connect 3 0 0 0;
+#X connect 6 0 14 0;
+#X connect 7 0 8 0;
+#X connect 8 0 30 0;
+#X connect 9 0 13 0;
+#X connect 10 0 9 0;
+#X connect 11 0 31 0;
+#X connect 12 0 11 0;
+#X connect 13 0 17 1;
+#X connect 14 0 2 0;
+#X connect 14 0 2 1;
+#X connect 14 0 27 0;
+#X connect 15 0 14 1;
+#X connect 16 0 15 1;
+#X connect 17 0 18 0;
+#X connect 18 0 15 0;
+#X connect 21 0 27 0;
+#X connect 30 0 17 0;
+#X connect 31 0 18 1;
diff --git a/pd/doc/3.audio.examples/A08.beating.pd b/pd/doc/3.audio.examples/A08.beating.pd
new file mode 100644
index 00000000..e7657450
--- /dev/null
+++ b/pd/doc/3.audio.examples/A08.beating.pd
@@ -0,0 +1,41 @@
+#N canvas 53 63 581 571 12;
+#X obj 31 212 output~;
+#X obj 32 178 +~;
+#X text 320 537 updated for Pd version 0.40.;
+#X obj 32 110 +~;
+#X obj 187 105 +~;
+#X obj 187 52 osc~ 440;
+#X obj 32 57 osc~ 330;
+#X obj 53 81 osc~ 330.2;
+#X obj 208 75 osc~ 440.33;
+#X obj 342 102 +~;
+#X obj 343 52 osc~ 587;
+#X obj 364 75 osc~ 587.25;
+#X obj 33 147 +~;
+#X text 133 7 Beating between closely tuned sinusoids;
+#X text 33 280 In each of the three pairs of oscillators above \, the
+two frequencies are within 1/3 Hz or closer (for example \, the leftmost
+ones are close to 330 Hz but separated by 1/5 Hz.) The result is a
+gradual change in amplitude as the phases of the two slip against each
+other. This is called beating. More complex beating pattenrs may be
+made by using three or more oscillators. Also their amplitudes need
+not be equal (as they are here).;
+#X text 31 407 They are all summed using "+~" boxes. They could have
+been summed in any order ("+~" is commutative for practical purposes)
+but here they are added in pairs to emphasize the relationships between
+them.;
+#X text 30 474 In contrast to the previous example \, the oscillators
+are not tuned to the overtone series (ratios 1:2:3:4...) and so the
+frequencies 330 \, 440 \, and 587 are heard separately.;
+#X connect 1 0 0 0;
+#X connect 1 0 0 1;
+#X connect 3 0 12 0;
+#X connect 4 0 12 1;
+#X connect 5 0 4 0;
+#X connect 6 0 3 0;
+#X connect 7 0 3 1;
+#X connect 8 0 4 1;
+#X connect 9 0 1 1;
+#X connect 10 0 9 0;
+#X connect 11 0 9 1;
+#X connect 12 0 1 0;
diff --git a/pd/doc/3.audio.examples/A09.frequency.mod.pd b/pd/doc/3.audio.examples/A09.frequency.mod.pd
new file mode 100644
index 00000000..aedb1cc1
--- /dev/null
+++ b/pd/doc/3.audio.examples/A09.frequency.mod.pd
@@ -0,0 +1,54 @@
+#N canvas 92 96 760 640 12;
+#X obj 259 168 *~;
+#X floatatom 259 83 0 0 0 0 - - -;
+#X floatatom 169 118 0 0 0 0 - - -;
+#X obj 169 188 +~;
+#N canvas 0 0 450 300 graph1 0;
+#X array fm-output 441 float 0;
+#X coords 0 1.02 440 -1.02 200 130 1;
+#X restore 527 40 graph;
+#X msg 244 228 bang;
+#X text 286 228 <-- click to graph;
+#X obj 244 252 tabwrite~ fm-output;
+#X floatatom 281 138 0 0 0 0 - - -;
+#X text 166 75 carrier;
+#X text 165 93 frequency;
+#X text 244 59 frequency;
+#X text 245 42 modulation;
+#X text 33 8 FREQUENCY MODULATION ("FM") USING TWO OSCILLATORS;
+#X obj 168 232 osc~;
+#X text 52 214 "carrier";
+#X text 34 232 oscillator -->;
+#X text 47 149 add modulator;
+#X text 46 167 to carrier;
+#X text 44 186 frequency -->;
+#X text 320 150 index;
+#X text 322 131 modulation;
+#X obj 259 108 osc~;
+#X text 531 172 --- 0.01 seconds ----;
+#X text 53 443 To get the FM sound \, set all three of carrier frequency
+\, modulation frequency \, and modulation index in the hundreds. Note
+that you get a timbral change as you sweep modulation index \, because
+this changes the amplitudes of the components of the output sound but
+not their frequencies.;
+#X obj 167 270 output~;
+#X text 489 613 updated for Pd version 0.37;
+#X text 54 332 This patch shows the classical FM synthesis technique
+developed by John Chowning. It's nothing but an oscillator with vibrato
+controlled by another "modulation" oscillator. First \, to understand
+the patch \, set carrier frequency to 400 or so \, modulation frequency
+between 5 and 10 \, and try modulation index values between 0 and 400
+\, say. You'll hear a sine wave with vibrato.;
+#X text 55 526 The component frequencies are equal to the carrier frequency
+\, plus or minus multiples of the modulator frequency. A more complete
+discussion of FM occurs in part 5 of this series.;
+#X connect 0 0 3 1;
+#X connect 1 0 22 0;
+#X connect 2 0 3 0;
+#X connect 3 0 14 0;
+#X connect 5 0 7 0;
+#X connect 8 0 0 1;
+#X connect 14 0 7 0;
+#X connect 14 0 25 0;
+#X connect 14 0 25 1;
+#X connect 22 0 0 0;
diff --git a/pd/doc/3.audio.examples/A10.review.pd b/pd/doc/3.audio.examples/A10.review.pd
new file mode 100644
index 00000000..fbaaee43
--- /dev/null
+++ b/pd/doc/3.audio.examples/A10.review.pd
@@ -0,0 +1,37 @@
+#N canvas 36 68 652 461 12;
+#X text 157 10 PART 1 REVIEW;
+#X obj 67 113 tabwrite~;
+#X obj 67 87 line~;
+#X obj 71 220 +;
+#X obj 67 61 +~;
+#X obj 67 139 osc~;
+#X obj 72 319 r;
+#X obj 72 295 s;
+#X obj 71 269 inlet;
+#X obj 114 245 mtof;
+#X obj 71 244 ftom;
+#X obj 122 269 outlet;
+#X obj 67 164 dac~;
+#X text 27 34 So far we've seen these audio ("tilde") objects:;
+#X text 124 86 -- ramp generator;
+#X text 158 113 -- sampler (which we've only used for graphing so far)
+;
+#X text 113 165 -- audio output ("digital/analog converter" -- a misnomer)
+;
+#X text 34 193 ... and these "control" objects:;
+#X text 162 243 -- frequency to pitch conversion;
+#X text 184 270 -- input and output to a subpatch;
+#X text 108 296 ("send") -- wireless message sending;
+#X text 109 321 ("receive") ... and receiving;
+#X text 107 60 (etc.) -- arithmetic on audio signals;
+#X text 109 218 (etc.) -- arithmetic;
+#X text 385 426 updated for Pd version 0.40.;
+#X text 112 139 -- sinusoidal oscillator;
+#X obj 74 418 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
+;
+#X text 97 416 -- toggle switch;
+#X floatatom 74 395 0 0 0 0 - - -;
+#X text 109 394 -- number box;
+#X msg 74 372;
+#X text 111 372 -- message box;
+#X text 43 346 ... and these other (non-object) boxes:;