diff options
Diffstat (limited to 'pd/doc')
-rw-r--r-- | pd/doc/3.audio.examples/A07.fusion.pd | 76 | ||||
-rw-r--r-- | pd/doc/3.audio.examples/A08.beating.pd | 41 | ||||
-rw-r--r-- | pd/doc/3.audio.examples/A09.frequency.mod.pd | 54 | ||||
-rw-r--r-- | pd/doc/3.audio.examples/A10.review.pd | 37 |
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:; |