diff options
Diffstat (limited to 'doc/tutorials/sound/building_waveforms_with_sines.pd')
-rw-r--r-- | doc/tutorials/sound/building_waveforms_with_sines.pd | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/doc/tutorials/sound/building_waveforms_with_sines.pd b/doc/tutorials/sound/building_waveforms_with_sines.pd new file mode 100644 index 00000000..4b478b10 --- /dev/null +++ b/doc/tutorials/sound/building_waveforms_with_sines.pd @@ -0,0 +1,96 @@ +#N canvas 26 211 652 472 10; +#X obj 494 57 import rradical; +#X obj 541 21 pddp/dsp; +#X obj 11 8 cnv 15 450 40 empty empty building_waveforms_with_sines +20 12 0 24 -228992 -66577 0; +#X obj 467 373 ezdac~; +#X obj 32 219 sixteen_harmonics testing; +#X obj 522 238 random 64; +#X obj 522 262 + 32; +#X obj 522 285 mtof; +#X msg 408 190 bang; +#X obj 479 336 *~; +#X obj 522 309 tabosc4~ testing; +#X obj 440 105 cnv 15 100 60 empty empty empty 20 12 0 14 -241291 -66577 +0; +#X obj 446 125 vsl 10 32 0 1 0 1 \$0-a \$0-a a 0 -8 0 8 -262144 -1 +-1 1900 0; +#X obj 459 125 vsl 10 32 0 1 0 1 \$0-d \$0-d d 0 -8 0 8 -262144 -1 +-1 2700 0; +#X obj 472 125 vsl 10 32 0 1 0 1 \$0-s \$0-s s 0 -8 0 8 -262144 -1 +-1 1000 0; +#X obj 485 125 vsl 10 32 0 1 0 1 \$0-r \$0-r r 0 -8 0 8 -262144 -1 +-1 1500 0; +#N canvas 95 141 435 501 env 0; +#X obj 29 5 inlet; +#X obj 29 457 outlet~; +#X obj 29 423 vline~; +#X msg 29 203 0 \, 1 \$1; +#X msg 224 375 0 \$1; +#X obj 254 307 * 500; +#X obj 59 71 * 500; +#X obj 100 253 pack; +#X obj 224 240 random 1000; +#X msg 100 274 \$2 \$1; +#X obj 129 148 * 500; +#X obj 100 189 max 10; +#X obj 29 114 max 10; +#X obj 224 352 max 10; +#X obj 29 25 bang; +#X obj 129 126 receive \$0-d; +#X obj 59 50 receive \$0-a; +#X obj 223 218 delay; +#X obj 254 287 receive \$0-r; +#X obj 224 331 float; +#X obj 224 261 delay; +#X obj 29 92 float; +#X obj 46 139 delay; +#X obj 100 170 float; +#X obj 122 231 receive \$0-s; +#X connect 0 0 14 0; +#X connect 2 0 1 0; +#X connect 3 0 2 0; +#X connect 4 0 2 0; +#X connect 5 0 19 1; +#X connect 6 0 21 1; +#X connect 7 0 9 0; +#X connect 8 0 20 0; +#X connect 9 0 2 0; +#X connect 10 0 23 1; +#X connect 11 0 7 0; +#X connect 11 0 17 0; +#X connect 12 0 3 0; +#X connect 12 0 22 0; +#X connect 13 0 4 0; +#X connect 14 0 21 0; +#X connect 15 0 10 0; +#X connect 16 0 6 0; +#X connect 17 0 8 0; +#X connect 18 0 5 0; +#X connect 19 0 13 0; +#X connect 20 0 19 0; +#X connect 21 0 12 0; +#X connect 22 0 23 0; +#X connect 23 0 11 0; +#X connect 24 0 7 1; +#X restore 407 273 pd env; +#X text 18 145 To start with \, we have something close to a square +wave; +#X text 15 62 Any waveform can be contructed using sine waves. This +patch allows you to construct a waveform using harmonics.; +#X obj 408 213 trigger bang bang; +#X text 7 373 You can make a triangle wave by setting each harmonic +to an amplitude that is the inverse of the harmonic number. That means +for harmonic 2 \, set the slider to an amplitude of 1/2 \, or halfway +in the middle. For harmonic 3 \, set it at 1/3 \, harmonic 4 \, set +to 1/4 \, and so on...; +#X connect 5 0 6 0; +#X connect 6 0 7 0; +#X connect 7 0 10 0; +#X connect 8 0 19 0; +#X connect 9 0 3 0; +#X connect 9 0 3 1; +#X connect 10 0 9 1; +#X connect 16 0 9 0; +#X connect 19 0 16 0; +#X connect 19 1 5 0; |