Update of /cvsroot/pure-data/pd/doc/3.audio.examples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29112/pd/doc/3.audio.examples
Added Files: A07.fusion.pd A08.beating.pd A09.frequency.mod.pd A10.review.pd Log Message: add files that didn't seem to be uploaded
--- NEW FILE: A08.beating.pd --- #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;
--- NEW FILE: A07.fusion.pd --- #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;
--- NEW FILE: A09.frequency.mod.pd --- #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;
--- NEW FILE: A10.review.pd --- #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:;