diff options
Diffstat (limited to 'pd/doc')
-rw-r--r-- | pd/doc/3.audio.examples/A07.frequency.mod.pd | 54 | ||||
-rw-r--r-- | pd/doc/3.audio.examples/A08.review.pd | 41 | ||||
-rw-r--r-- | pd/doc/3.audio.examples/F14.wave.packet.pd | 112 | ||||
-rw-r--r-- | pd/doc/5.reference/0.INTRO.txt | 153 |
4 files changed, 112 insertions, 248 deletions
diff --git a/pd/doc/3.audio.examples/A07.frequency.mod.pd b/pd/doc/3.audio.examples/A07.frequency.mod.pd deleted file mode 100644 index aedb1cc1..00000000 --- a/pd/doc/3.audio.examples/A07.frequency.mod.pd +++ /dev/null @@ -1,54 +0,0 @@ -#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/A08.review.pd b/pd/doc/3.audio.examples/A08.review.pd deleted file mode 100644 index 9b190a19..00000000 --- a/pd/doc/3.audio.examples/A08.review.pd +++ /dev/null @@ -1,41 +0,0 @@ -#N canvas 36 68 701 588 12; -#X text 444 542 updated for Pd version 0.34; -#X text 39 14 PART 1 REVIEW; -#X obj 66 131 tabwrite~; -#X obj 66 105 line~; -#X obj 54 298 +; -#X obj 66 79 +~; -#X obj 66 209 cos~; -#X obj 66 157 osc~; -#X obj 66 183 phasor~; -#X obj 54 324 pack; -#X obj 52 511 r; -#X obj 53 487 s; -#X obj 54 408 inlet; -#X obj 53 462 f; -#X obj 53 436 t; -#X obj 54 378 dbtorms; -#X obj 97 351 mtof; -#X obj 54 350 ftom; -#X obj 105 408 outlet; -#X obj 66 235 dac~; -#X text 26 52 So far we've seen these audio ("tilde") objects:; -#X text 123 104 -- ramp generator; -#X text 157 131 -- sampler (which we've only used for graphing so far) -; -#X text 111 157 -- a cosine wave oscillator; -#X text 139 183 -- phase generator for making your own oscillator; -#X text 112 209 -- cosine waveshape lookup; -#X text 112 236 -- audio output ("digital/analog converter" -- a misnomer) -; -#X text 31 266 ... and these "control" objects:; -#X text 145 349 -- frequency to pitch conversion; -#X text 126 378 -- decibel to amplitude conversion; -#X text 167 409 -- input and output to a subpatch; -#X text 90 437 ("trigger") -- message ordering and conversion; -#X text 93 462 ("float") -- store a (floating point) number; -#X text 90 488 ("send") -- wireless message sending; -#X text 91 513 ("receive") ... and receiving; -#X text 106 78 (etc.) -- arithmetic on audio signals; -#X text 92 296 (etc.) -- arithmetic; -#X text 99 323 -- combine two or more values in a single message; diff --git a/pd/doc/3.audio.examples/F14.wave.packet.pd b/pd/doc/3.audio.examples/F14.wave.packet.pd new file mode 100644 index 00000000..bb6c92b2 --- /dev/null +++ b/pd/doc/3.audio.examples/F14.wave.packet.pd @@ -0,0 +1,112 @@ +#N canvas 448 73 647 779 12; +#X floatatom 272 241 4 0 127 0 - - -; +#X text 268 203 center; +#X obj 272 308 line~; +#X obj 272 285 pack 0 50; +#X floatatom 205 246 4 0 127 0 - - -; +#X text 153 204 fundamental; +#X floatatom 397 252 4 0 127 0 - - -; +#X obj 397 323 line~; +#X obj 132 586 *~; +#X obj 397 300 pack 0 50; +#X obj 132 635 cos~; +#X obj 206 310 mtof; +#X obj 294 333 expr 1/$f1; +#X obj 272 261 mtof; +#X text 267 218 freq.; +#X obj 272 357 *~; +#X text 394 231 bandwidth; +#X obj 397 274 mtof; +#X obj 396 366 *~; +#X text 437 358 divide by fundamental; +#X text 149 220 (MIDI units); +#X obj 136 720 output~; +#X text 91 2 WAVE PACKETS AS ALTERNATIVE TO PAF; +#X obj 79 421 phasor~; +#X obj 471 479 +~ 0.5; +#X obj 471 504 wrap~; +#X text 442 424 second phase signal; +#X text 443 439 out of phase from; +#X text 441 456 first one; +#X obj 132 658 +~ 1; +#X obj 78 522 -~ 0.5; +#X obj 135 692 +~; +#X obj 77 586 *~; +#X obj 77 609 cos~; +#X obj 214 556 samphold~; +#X obj 126 555 samphold~; +#X obj 76 634 *~; +#X obj 132 610 clip~ -0.5 0.5; +#X obj 372 597 *~; +#X obj 372 646 cos~; +#X obj 372 669 +~ 1; +#X obj 318 533 -~ 0.5; +#X obj 317 597 *~; +#X obj 317 620 cos~; +#X obj 454 567 samphold~; +#X obj 366 566 samphold~; +#X obj 316 645 *~; +#X obj 372 621 clip~ -0.5 0.5; +#X obj 396 390 max~ 1; +#X obj 205 285 - 12; +#X text 375 755 updated for Pd version 0.40.; +#X text 20 122 The patch is almost exactly like B13 (the overlapping +sample) except that \, instead of using tabread~ we just use cos~ \, +and that we control pulse width (for bandwidth) as well as wavetable +transposition (for center frequency).; +#X text 18 23 The stretched wavetable method is an alternative to the +PAF generator \, slightly more expensive in processing time but with +two advantages: first \, it is not patent encumbered (PAF patent runs +out in 2011) and second \, it can be generalized to use samples instead +of sinusoids to make complex spectral shapes.; +#X connect 0 0 13 0; +#X connect 2 0 15 0; +#X connect 3 0 2 0; +#X connect 4 0 49 0; +#X connect 6 0 17 0; +#X connect 7 0 18 0; +#X connect 8 0 37 0; +#X connect 9 0 7 0; +#X connect 10 0 29 0; +#X connect 11 0 12 0; +#X connect 11 0 23 0; +#X connect 12 0 15 1; +#X connect 12 0 18 1; +#X connect 13 0 3 0; +#X connect 15 0 35 0; +#X connect 15 0 45 0; +#X connect 17 0 9 0; +#X connect 18 0 48 0; +#X connect 23 0 24 0; +#X connect 23 0 30 0; +#X connect 23 0 35 1; +#X connect 23 0 34 1; +#X connect 24 0 25 0; +#X connect 25 0 41 0; +#X connect 25 0 45 1; +#X connect 25 0 44 1; +#X connect 29 0 36 1; +#X connect 30 0 8 0; +#X connect 30 0 32 0; +#X connect 31 0 21 0; +#X connect 31 0 21 1; +#X connect 32 0 33 0; +#X connect 33 0 36 0; +#X connect 34 0 8 1; +#X connect 35 0 32 1; +#X connect 36 0 31 0; +#X connect 37 0 10 0; +#X connect 38 0 47 0; +#X connect 39 0 40 0; +#X connect 40 0 46 1; +#X connect 41 0 38 0; +#X connect 41 0 42 0; +#X connect 42 0 43 0; +#X connect 43 0 46 0; +#X connect 44 0 38 1; +#X connect 45 0 42 1; +#X connect 46 0 31 1; +#X connect 47 0 39 0; +#X connect 48 0 34 0; +#X connect 48 0 44 0; +#X connect 49 0 11 0; diff --git a/pd/doc/5.reference/0.INTRO.txt b/pd/doc/5.reference/0.INTRO.txt deleted file mode 100644 index 8f935404..00000000 --- a/pd/doc/5.reference/0.INTRO.txt +++ /dev/null @@ -1,153 +0,0 @@ -The "reference" section of the documentation should contain a patch -demonstrating how to use each of Pd's classes. As of version 0.29, a complete -list of "object" classes follows. Not included in this list are messages, -atoms, graphs, etc. which aren't typed into object boxes but come -straight off the "add" menu. - ----------------------------- GLUE -------------------------------- -bang - output a bang message -float - store and recall a number -symbol - store and recall a symbol -int - store and recall an integer -send - send a message to a named object -receive - catch "sent" messages -select - test for matching numbers or symbols -route - route messages according to first element -pack - make compound messages -unpack - get elements of compound messages -trigger - sequence and convert messagess -spigot - interruptible message connection -moses - part a numeric stream -until - looping mechanism -print - print out messages -makefilename - format a symbol with a variable field -change - remove repeated numbers from a stream -swap - swap two numbers -value - shared numeric value ------------------------------- TIME ---------------------------------- -delay - send a message after a time delay -metro - send a message periodically -line - send a series of linearly stepped numbers -timer - measure time intervals -cputime - measure CPU time -realtime -measure real time -pipe - dynamically growable delay line for numbers ------------------------------- MATH ---------------------------------- -+ - * / pow arithmetic -== != > < >= <= relational tests -& && | || % bit twiddling -mtof ftom powtodb rmstodb dbtopow dbtorms convert acoustical units -mod div sin cos tan atan atan2 sqrt log exp abs higher math -random lower math -max min greater or lesser of 2 numbers -clip force a number into a range ------------------------------- MIDI ---------------------------------- -notein ctlin pgmin bendin touchin polytouchin midiin sysexin - MIDI input -noteout ctlout pgmout bendout touchout polytouchout midiout - MIDI output -makenote - schedule a delayed "note off" message corresponding to a note-on -stripnote - strip "note off" messages ------------------------------- TABLES---------------------------------- -tabread - read a number from a table -tabread4 - read a number from a table, with 4 point interpolation -tabwrite - write a number to a table -soundfiler - read and write tables to soundfiles ------------------------------- MISC ---------------------------------- -loadbang - bang on load -serial - serial device control for NT only -netsend - send messages over the internet -netreceive - receive them -qlist - message sequencer -textfile - file to message converter -openpanel - "Open" dialog -savepanel - "Save as" dialog -bag - set of numbers -poly - polyphonic voice allocation -key, keyup - numeric key values from keyboard -keyname - symbolic key name --------------------------- AUDIO MATH ---------------------------------- -+~ -~ *~ /~ arithmetic on audio signals -max~ min~ - maximum or minimum of 2 inputs -clip~ - constrict signal to lie between two bounds -q8_rsqrt~ - cheap reciprocal square root (beware -- 8 bits!) -q8_sqrt~ - cheap square root (beware -- 8 bits!) -wrap~ - wraparound (fractional part, sort of) -fft~ - complex forward discrete Fourier transform -ifft~ - complex inverse discrete Fourier transform -rfft~ - real forward discrete Fourier transform -rifft~ - real inverse discrete Fourier transform -framp~ - output a ramp for each block -mtof~, ftom~, rmstodb~, dbtorms~, rmstopow~, powtorms~ - acoustic conversions --------------------------- AUDIO GLUE ---------------------------------- -dac~ - audio output -adc~ - audio input -sig~ - convert numbers to audio signals -line~ - generate audio ramps -vline~ - deluxe line~ -threshold~ detect signal thresholds -snapshot~ - sample a signal (convert it back to a number) -vsnapshot~ deluxe snapshot~ -bang~ - send a bang message after each DSP block -samplerate~ get the sample rate -send~ - nonlocal signal connection with fanout -receive~ - get signal from send~ -throw~ - add to a summing bus -catch~ - define and read a summing bus -block~ - specify block size and overlap -switch~ - switch DSP computation on and off -readsf~ - soundfile playback from disk -writesf~ - record sound to disk --------------------- AUDIO OSCILLATORS AND TABLES ------------------------ -phasor~ - sawtooth oscillator -cos~ - cosine -osc~ - cosine oscillator -tabwrite~ - write to a table -tabplay~ - play back from a table (non-transposing) -tabread~ - non-interpolating table read -tabread4~ - four-point interpolating table read -tabosc4~ - wavetable oscillator -tabsend~ - write one block continuously to a table -tabreceive~ read one block continuously from a table --------------------- AUDIO FILTERS ------------------------ -vcf~ - voltage controlled filter -noise~ - white noise generator -env~ - envelope follower -hip~ - high pass filter -lop~ - low pass filter -bp~ - band pass filter -biquad~ - raw filter -samphold~ - sample and hold unit -print~ - print out one or more "blocks" -rpole~ - raw real-valued one-pole filter -rzero~ - raw real-valued one-zero filter -rzero_rev~ rzero~, time-reversed -cpole~, czero~, czero_rev - corresponding complex-valued filters --------------------- AUDIO DELAY ------------------------ -delwrite~ - write to a delay line -delread~ - read from a delay line -vd~ - read from a delay line at a variable delay time ------------------------------- SUBWINDOWS ---------------------------------- -pd - define a subwindow -table - array of numbers in a subwindow -inlet - add an inlet to a pd -outlet - add an outlet to a pd -inlet~, outlet~ - signal versions of inlet, outlet ------------------------------- DATA TEMPLATES ----------------------------- -struct - define a data structure -drawcurve, filledcurve - draw a curve -drawpolygon, filledpolygon - draw a polygon -plot - plot an array field -drawnumber - print a numeric value ------------------------------- ACCESSING DATA ---------------------------- -pointer - point to an object belonging to a template -get - get numeric fields -set - change numeric fields -element - get an array element -getsize - get the size of an array -setsize - change the size of an array -append - add an element to a list -sublist - get a pointer into a list which is an element of another scalar -scalar - draw a scalar on parent ------------------------------- OBSOLETE ---------------------------- -scope~ (use tabwrite~ now) -namecanvas -template (use struct now) |