From 1547269146594dc49bb8817c92db26876596d98a Mon Sep 17 00:00:00 2001 From: Frank Barknecht Date: Tue, 29 Apr 2003 09:19:26 +0000 Subject: Added the example patches and images. svn path=/trunk/; revision=599 --- doc/tutorials/footils/pddrums/2lineseg~-1.pd | 49 +++++++++++++++ doc/tutorials/footils/pddrums/2lineseg~.pd | 72 ++++++++++++++++++++++ doc/tutorials/footils/pddrums/angriff-01.pd | 2 + doc/tutorials/footils/pddrums/angriff-01.png | Bin 0 -> 2923 bytes doc/tutorials/footils/pddrums/angriff-1.pd | 2 + doc/tutorials/footils/pddrums/default.css | 8 +-- doc/tutorials/footils/pddrums/drumcenter-01.pd | 44 +++++++++++++ doc/tutorials/footils/pddrums/drumcenter-01.png | Bin 0 -> 9758 bytes doc/tutorials/footils/pddrums/drumcenter-02.pd | 48 +++++++++++++++ doc/tutorials/footils/pddrums/drumcenter-02.png | Bin 0 -> 9683 bytes doc/tutorials/footils/pddrums/drumcenter-03.pd | 65 +++++++++++++++++++ doc/tutorials/footils/pddrums/drumcenter-03.png | Bin 0 -> 8214 bytes doc/tutorials/footils/pddrums/drumcenter-04.pd | 72 ++++++++++++++++++++++ doc/tutorials/footils/pddrums/drumcenter-04.png | Bin 0 -> 9621 bytes doc/tutorials/footils/pddrums/fastline.pd | 47 ++++++++++++++ doc/tutorials/footils/pddrums/fastline.png | Bin 0 -> 6738 bytes doc/tutorials/footils/pddrums/pddrums.html | 26 +++++--- doc/tutorials/footils/pddrums/pddrums.txt | 41 +++++++++--- doc/tutorials/footils/pddrums/t3-fastline.pd | 49 +++++++++++++++ doc/tutorials/footils/pddrums/t3-fastline.png | Bin 0 -> 8255 bytes doc/tutorials/footils/pddrums/using_angriff-1.pd | 2 + doc/tutorials/footils/pddrums/using_angriff-1.png | Bin 0 -> 19935 bytes 22 files changed, 506 insertions(+), 21 deletions(-) create mode 100644 doc/tutorials/footils/pddrums/2lineseg~-1.pd create mode 100644 doc/tutorials/footils/pddrums/2lineseg~.pd create mode 100644 doc/tutorials/footils/pddrums/angriff-01.pd create mode 100644 doc/tutorials/footils/pddrums/angriff-01.png create mode 100644 doc/tutorials/footils/pddrums/angriff-1.pd create mode 100644 doc/tutorials/footils/pddrums/drumcenter-01.pd create mode 100644 doc/tutorials/footils/pddrums/drumcenter-01.png create mode 100644 doc/tutorials/footils/pddrums/drumcenter-02.pd create mode 100644 doc/tutorials/footils/pddrums/drumcenter-02.png create mode 100644 doc/tutorials/footils/pddrums/drumcenter-03.pd create mode 100644 doc/tutorials/footils/pddrums/drumcenter-03.png create mode 100644 doc/tutorials/footils/pddrums/drumcenter-04.pd create mode 100644 doc/tutorials/footils/pddrums/drumcenter-04.png create mode 100644 doc/tutorials/footils/pddrums/fastline.pd create mode 100644 doc/tutorials/footils/pddrums/fastline.png create mode 100644 doc/tutorials/footils/pddrums/t3-fastline.pd create mode 100644 doc/tutorials/footils/pddrums/t3-fastline.png create mode 100644 doc/tutorials/footils/pddrums/using_angriff-1.pd create mode 100644 doc/tutorials/footils/pddrums/using_angriff-1.png diff --git a/doc/tutorials/footils/pddrums/2lineseg~-1.pd b/doc/tutorials/footils/pddrums/2lineseg~-1.pd new file mode 100644 index 00000000..1b34bfa2 --- /dev/null +++ b/doc/tutorials/footils/pddrums/2lineseg~-1.pd @@ -0,0 +1,49 @@ +#N canvas 179 206 819 529 10; +#X obj 191 291 t3_bpe; +#X obj 191 192 t b b; +#X obj 191 348 t3_line~ 0; +#X obj 191 252 f 0; +#X obj 244 128 t b f; +#X floatatom 244 87 5 0 0; +#X obj 107 417 tabwrite~ line; +#N canvas 0 0 450 300 graph1 0; +#X array line 441 float 0; +#X coords 0 1 440 -1 200 140 1; +#X restore 457 270 graph; +#X msg 472 79 \; line resize 441 \; line xticks 0 64 8 \; line xlabel +1.1 0 64 128 192 256 320 384 \; pd dsp 1; +#X obj 244 176 pack 1 0.5 0 1.5; +#X obj 244 105 / 44.1; +#X msg 191 149 bang; +#X obj 472 49 loadbang; +#X floatatom 112 189 5 0 0; +#X obj 112 207 / 44.1; +#X text 104 165 pre-delay; +#X text 90 24 T3-envelopes; +#X text 290 85 samples; +#X floatatom 274 152 5 0 0; +#X text 324 151 msec; +#X text 63 47 With Time-Tagged Triggers exact positioning is possible +even between block boundaries.; +#X msg 244 204 set \$1 \$2 \$3 \$4; +#X msg 244 246 1 2.26757 0 1.5; +#X connect 0 0 2 0; +#X connect 0 1 2 1; +#X connect 1 0 3 0; +#X connect 1 0 6 0; +#X connect 1 1 22 0; +#X connect 2 0 6 0; +#X connect 3 0 0 0; +#X connect 4 0 9 0; +#X connect 4 0 11 0; +#X connect 4 1 18 0; +#X connect 5 0 10 0; +#X connect 9 0 21 0; +#X connect 10 0 4 0; +#X connect 11 0 1 0; +#X connect 12 0 8 0; +#X connect 13 0 14 0; +#X connect 14 0 3 1; +#X connect 18 0 9 1; +#X connect 21 0 22 0; +#X connect 22 0 0 0; diff --git a/doc/tutorials/footils/pddrums/2lineseg~.pd b/doc/tutorials/footils/pddrums/2lineseg~.pd new file mode 100644 index 00000000..5dbc2b54 --- /dev/null +++ b/doc/tutorials/footils/pddrums/2lineseg~.pd @@ -0,0 +1,72 @@ +#N canvas 52 135 633 538 10; +#X obj 191 425 outlet~; +#X obj 191 237 t3_bpe; +#X obj 191 138 t b b; +#X obj 191 294 t3_line~ 0; +#X obj 191 375 fade~ lin; +#X msg 342 344 set _lin; +#X msg 342 365 set _linsqrt; +#X msg 342 386 set _sqrt; +#X msg 342 407 set _sin; +#X msg 342 428 set _sinhann; +#X msg 342 449 set _hann; +#X obj 476 48 inlet; +#X obj 140 40 inlet; +#X msg 342 323 set \$1; +#X obj 476 132 symbol; +#X obj 522 190 symbol stop; +#X obj 140 138 t b b; +#X obj 140 105 select 0; +#X obj 191 198 f 0; +#X obj 476 69 route set stop; +#X obj 289 36 inlet; +#X obj 289 61 t b f; +#X obj 244 35 inlet; +#X obj 332 36 inlet; +#X obj 332 61 t b f; +#X obj 377 37 inlet; +#X obj 377 62 t b f; +#X obj 244 105 pack 0 0 0 0; +#X msg 244 133 set \$1 \$2 \$3 \$4; +#X msg 244 192 1 71 0 132; +#X msg 140 198 0 10; +#X text 18 225 go very quick to zero; +#X text 17 238 if inlet receives a 0; +#X connect 1 0 3 0; +#X connect 1 1 3 1; +#X connect 2 0 18 0; +#X connect 2 1 29 0; +#X connect 3 0 4 0; +#X connect 4 0 0 0; +#X connect 5 0 4 0; +#X connect 6 0 4 0; +#X connect 7 0 4 0; +#X connect 8 0 4 0; +#X connect 9 0 4 0; +#X connect 10 0 4 0; +#X connect 11 0 19 0; +#X connect 12 0 17 0; +#X connect 13 0 4 0; +#X connect 14 0 13 0; +#X connect 15 0 1 0; +#X connect 16 0 30 0; +#X connect 16 1 18 0; +#X connect 17 0 16 0; +#X connect 17 1 2 0; +#X connect 18 0 1 0; +#X connect 19 0 14 0; +#X connect 19 1 15 0; +#X connect 20 0 21 0; +#X connect 21 0 27 0; +#X connect 21 1 27 1; +#X connect 22 0 27 0; +#X connect 23 0 24 0; +#X connect 24 0 27 0; +#X connect 24 1 27 2; +#X connect 25 0 26 0; +#X connect 26 0 27 0; +#X connect 26 1 27 3; +#X connect 27 0 28 0; +#X connect 28 0 29 0; +#X connect 29 0 1 0; +#X connect 30 0 1 0; diff --git a/doc/tutorials/footils/pddrums/angriff-01.pd b/doc/tutorials/footils/pddrums/angriff-01.pd new file mode 100644 index 00000000..72a18330 --- /dev/null +++ b/doc/tutorials/footils/pddrums/angriff-01.pd @@ -0,0 +1,2 @@ +#N canvas 0 0 392 161 10; +#X obj 160 67 noise~; diff --git a/doc/tutorials/footils/pddrums/angriff-01.png b/doc/tutorials/footils/pddrums/angriff-01.png new file mode 100644 index 00000000..ebacdbec Binary files /dev/null and b/doc/tutorials/footils/pddrums/angriff-01.png differ diff --git a/doc/tutorials/footils/pddrums/angriff-1.pd b/doc/tutorials/footils/pddrums/angriff-1.pd new file mode 100644 index 00000000..f47d98d4 --- /dev/null +++ b/doc/tutorials/footils/pddrums/angriff-1.pd @@ -0,0 +1,2 @@ +#N canvas 0 0 450 300 10; +#X obj 159 146 noise~; diff --git a/doc/tutorials/footils/pddrums/default.css b/doc/tutorials/footils/pddrums/default.css index a6f384c3..bd00d3cc 100644 --- a/doc/tutorials/footils/pddrums/default.css +++ b/doc/tutorials/footils/pddrums/default.css @@ -120,7 +120,7 @@ div.document { /* Again, "be nice to Opera 5". */ body>#Menu {width:140px;} -div."contents topic" { +#contents { position:absolute; top:120px; left:10px; @@ -133,14 +133,14 @@ div."contents topic" { width:140px; } /* Again, "be nice to Opera 5". */ -body>#"contents topic" {width:140px;} +body>#contents {width:140px;} /* :Author: David Goodger :Contact: goodger@users.sourceforge.net -:date: $Date: 2003-04-28 16:33:34 $ -:version: $Revision: 1.1 $ +:date: $Date: 2003-04-29 09:19:26 $ +:version: $Revision: 1.2 $ :copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. diff --git a/doc/tutorials/footils/pddrums/drumcenter-01.pd b/doc/tutorials/footils/pddrums/drumcenter-01.pd new file mode 100644 index 00000000..013d1343 --- /dev/null +++ b/doc/tutorials/footils/pddrums/drumcenter-01.pd @@ -0,0 +1,44 @@ +#N canvas 236 304 646 364 10; +#X obj 66 77 noise~; +#X obj 123 77 line~; +#X obj 66 131 *~; +#X obj 58 253 dac~; +#X obj 66 226 *~ 0; +#X obj 99 206 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8 -262144 +-1 -1 6500 1; +#N canvas 0 0 450 300 graph1 0; +#X array noise 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 102 graph; +#N canvas 0 0 450 300 graph1 0; +#X array line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 19 graph; +#N canvas 0 0 450 300 graph1 0; +#X array noise_and_line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 186 graph; +#X obj 187 132 tabwrite~ noise; +#X obj 209 109 tabwrite~ line; +#X obj 147 167 tabwrite~ noise_and_line; +#X msg 59 295 \; line resize \$1 \; noise resize \$1 \; noise_and_line +resize \$1; +#X msg 59 274 5000; +#X msg 123 49 1 \, 0 50; +#X obj 247 11 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1 +-1; +#X connect 0 0 2 0; +#X connect 0 0 9 0; +#X connect 1 0 2 1; +#X connect 1 0 10 0; +#X connect 2 0 4 0; +#X connect 2 0 11 0; +#X connect 4 0 3 0; +#X connect 4 0 3 1; +#X connect 5 0 4 1; +#X connect 13 0 12 0; +#X connect 14 0 1 0; +#X connect 15 0 14 0; +#X connect 15 0 10 0; +#X connect 15 0 11 0; +#X connect 15 0 9 0; diff --git a/doc/tutorials/footils/pddrums/drumcenter-01.png b/doc/tutorials/footils/pddrums/drumcenter-01.png new file mode 100644 index 00000000..cc42b13a Binary files /dev/null and b/doc/tutorials/footils/pddrums/drumcenter-01.png differ diff --git a/doc/tutorials/footils/pddrums/drumcenter-02.pd b/doc/tutorials/footils/pddrums/drumcenter-02.pd new file mode 100644 index 00000000..906bc4ac --- /dev/null +++ b/doc/tutorials/footils/pddrums/drumcenter-02.pd @@ -0,0 +1,48 @@ +#N canvas 236 304 646 364 10; +#X obj 66 77 noise~; +#X obj 123 77 line~; +#X obj 66 131 *~; +#X obj 58 253 dac~; +#X obj 66 226 *~ 0; +#X obj 99 212 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8 -262144 +-1 -1 7000 1; +#N canvas 0 0 450 300 graph1 0; +#X array noise 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 102 graph; +#N canvas 0 0 450 300 graph1 0; +#X array line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 19 graph; +#N canvas 0 0 450 300 graph1 0; +#X array noise_and_line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 186 graph; +#X obj 186 130 tabwrite~ noise; +#X obj 208 107 tabwrite~ line; +#X obj 145 184 tabwrite~ noise_and_line; +#X msg 59 295 \; line resize \$1 \; noise resize \$1 \; noise_and_line +resize \$1; +#X msg 59 274 5000; +#X msg 123 49 1 \, 0 50; +#X obj 247 11 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1 +-1; +#X obj 66 167 lop~ 400; +#X floatatom 117 145 5 0 0; +#X connect 0 0 2 0; +#X connect 0 0 9 0; +#X connect 1 0 2 1; +#X connect 1 0 10 0; +#X connect 2 0 16 0; +#X connect 4 0 3 0; +#X connect 4 0 3 1; +#X connect 5 0 4 1; +#X connect 13 0 12 0; +#X connect 14 0 1 0; +#X connect 15 0 14 0; +#X connect 15 0 10 0; +#X connect 15 0 11 0; +#X connect 15 0 9 0; +#X connect 16 0 4 0; +#X connect 16 0 11 0; +#X connect 17 0 16 1; diff --git a/doc/tutorials/footils/pddrums/drumcenter-02.png b/doc/tutorials/footils/pddrums/drumcenter-02.png new file mode 100644 index 00000000..0812d81d Binary files /dev/null and b/doc/tutorials/footils/pddrums/drumcenter-02.png differ diff --git a/doc/tutorials/footils/pddrums/drumcenter-03.pd b/doc/tutorials/footils/pddrums/drumcenter-03.pd new file mode 100644 index 00000000..96fc679c --- /dev/null +++ b/doc/tutorials/footils/pddrums/drumcenter-03.pd @@ -0,0 +1,65 @@ +#N canvas 236 304 646 364 10; +#X obj 66 77 noise~; +#X obj 157 80 line~; +#X obj 66 143 *~; +#X obj 57 293 dac~; +#X obj 65 266 *~ 0; +#X obj 98 252 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8 -262144 +-1 -1 9100 1; +#N canvas 0 0 450 300 graph1 0; +#X array noise 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 102 graph; +#N canvas 0 0 450 300 graph1 0; +#X array line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 19 graph; +#X msg 157 52 1 \, 0 50; +#X obj 247 11 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1 +-1; +#X obj 66 167 lop~ 400; +#X floatatom 193 138 5 0 0; +#X obj 247 32 s \$0-trigger; +#N canvas 0 0 615 324 I_dont_need_to_see_this_now 0; +#X obj 113 88 tabwrite~ noise; +#X obj 226 88 tabwrite~ line; +#X obj 334 89 tabwrite~ noise_and_line; +#X obj 18 38 r \$0-trigger; +#X msg 230 181 \; line resize \$1 \; noise resize \$1 \; noise_and_line +resize \$1; +#X msg 230 160 5000; +#X obj 114 36 inlet~; +#X obj 226 35 inlet~; +#X obj 333 47 inlet~; +#X connect 3 0 1 0; +#X connect 3 0 0 0; +#X connect 3 0 2 0; +#X connect 5 0 4 0; +#X connect 6 0 0 0; +#X connect 7 0 1 0; +#X connect 8 0 2 0; +#X restore 44 210 pd I_dont_need_to_see_this_now; +#N canvas 0 0 450 300 graph1 0; +#X array noise_and_line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 186 graph; +#X obj 148 103 *~; +#X obj 146 126 *~; +#X connect 0 0 2 0; +#X connect 0 0 13 0; +#X connect 1 0 15 0; +#X connect 1 0 15 1; +#X connect 2 0 10 0; +#X connect 4 0 3 0; +#X connect 4 0 3 1; +#X connect 5 0 4 1; +#X connect 8 0 1 0; +#X connect 9 0 12 0; +#X connect 9 0 8 0; +#X connect 10 0 4 0; +#X connect 10 0 13 2; +#X connect 11 0 10 1; +#X connect 15 0 16 0; +#X connect 15 0 16 1; +#X connect 16 0 2 1; +#X connect 16 0 13 1; diff --git a/doc/tutorials/footils/pddrums/drumcenter-03.png b/doc/tutorials/footils/pddrums/drumcenter-03.png new file mode 100644 index 00000000..361b361b Binary files /dev/null and b/doc/tutorials/footils/pddrums/drumcenter-03.png differ diff --git a/doc/tutorials/footils/pddrums/drumcenter-04.pd b/doc/tutorials/footils/pddrums/drumcenter-04.pd new file mode 100644 index 00000000..b46ff951 --- /dev/null +++ b/doc/tutorials/footils/pddrums/drumcenter-04.pd @@ -0,0 +1,72 @@ +#N canvas 236 304 646 364 10; +#X obj 186 107 line~; +#X obj 66 143 *~; +#X obj 59 306 dac~; +#X obj 67 279 *~ 0; +#X obj 100 265 hsl 128 15 0 1 0 0 empty empty Volume_0-1 -2 -6 0 8 +-262144 -1 -1 5000 1; +#N canvas 0 0 450 300 graph1 0; +#X array osc 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 383 188 graph; +#N canvas 0 0 450 300 graph1 0; +#X array line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 381 19 graph; +#X msg 186 83 1 \, 0 50; +#X obj 247 11 bng 15 250 50 0 empty empty empty 0 -6 0 8 -241291 -1 +-1; +#X obj 247 32 s \$0-trigger; +#N canvas 0 0 615 324 I_dont_need_to_see_this_now 0; +#X obj 226 88 tabwrite~ line; +#X obj 18 38 r \$0-trigger; +#X msg 230 160 5000; +#X obj 114 36 inlet~; +#X obj 226 35 inlet~; +#X obj 333 47 inlet~; +#X obj 334 89 tabwrite~ osc_and_line; +#X obj 113 88 tabwrite~ osc; +#X msg 230 181 \; line resize \$1 \; frequency resize \$1 \; osc resize +\$1 \; osc_and_line resize \$1; +#X obj 506 37 inlet~; +#X obj 506 90 tabwrite~ frequency; +#X connect 1 0 0 0; +#X connect 1 0 6 0; +#X connect 1 0 7 0; +#X connect 1 0 10 0; +#X connect 2 0 8 0; +#X connect 3 0 7 0; +#X connect 4 0 0 0; +#X connect 5 0 6 0; +#X connect 9 0 10 0; +#X restore 33 200 pd I_dont_need_to_see_this_now; +#N canvas 0 0 450 300 graph1 0; +#X array osc_and_line 5000 float 0; +#X coords 0 1 4999 -1 200 80 1; +#X restore 383 272 graph; +#X obj 66 112 osc~; +#X obj 66 74 line~; +#N canvas 0 0 450 300 graph1 0; +#X array frequency 5000 float 0; +#X coords 0 220 4999 1 200 80 1; +#X restore 381 103 graph; +#X msg 66 51 220 \, 50 20; +#X msg 115 76 0.5; +#X connect 0 0 1 1; +#X connect 0 0 10 1; +#X connect 1 0 10 2; +#X connect 1 0 3 0; +#X connect 3 0 2 0; +#X connect 3 0 2 1; +#X connect 4 0 3 1; +#X connect 7 0 0 0; +#X connect 8 0 9 0; +#X connect 8 0 7 0; +#X connect 8 0 15 0; +#X connect 8 0 16 0; +#X connect 12 0 1 0; +#X connect 12 0 10 0; +#X connect 13 0 12 0; +#X connect 13 0 10 3; +#X connect 15 0 13 0; +#X connect 16 0 12 1; diff --git a/doc/tutorials/footils/pddrums/drumcenter-04.png b/doc/tutorials/footils/pddrums/drumcenter-04.png new file mode 100644 index 00000000..9643bdc9 Binary files /dev/null and b/doc/tutorials/footils/pddrums/drumcenter-04.png differ diff --git a/doc/tutorials/footils/pddrums/fastline.pd b/doc/tutorials/footils/pddrums/fastline.pd new file mode 100644 index 00000000..6cf909a2 --- /dev/null +++ b/doc/tutorials/footils/pddrums/fastline.pd @@ -0,0 +1,47 @@ +#N canvas 15 38 859 491 10; +#N canvas 0 0 450 300 graph1 0; +#X array line 441 float 0; +#X coords 0 1 440 -1 200 140 1; +#X restore 319 322 graph; +#X obj 151 306 line~; +#X obj 100 352 tabwrite~ line; +#X obj 186 217 t b; +#X msg 151 186 1 2.1542; +#X floatatom 216 122 5 0 0 0 - - -; +#X msg 151 158 set 1 \$1; +#X obj 100 107 t b; +#X obj 472 56 loadbang; +#X obj 216 90 / 44.1; +#X obj 364 73 samplerate~; +#X text 268 121 msecs; +#X text 315 270 See how the [delay]ed peak always lands on a blocksize +boundary?; +#X msg 186 270 0 2; +#X obj 363 96 / 1000; +#X msg 100 158 bang; +#X obj 186 246 del 1; +#X msg 472 79 \; line resize 441 \; line xticks 0 64 8 \; line xlabel +1.1 0 64 128 192 256 320 384 \; pd dsp 1; +#X obj 216 68 nbx 5 16 -1e+37 1e+37 0 0 empty empty Samples 0 -8 1 +10 -260818 -1 -1 95 256; +#X text 72 31 If we set Samples to small (< 64) \, line~ generates +no output anymore; +#X connect 1 0 2 0; +#X connect 3 0 16 0; +#X connect 4 0 1 0; +#X connect 4 0 3 0; +#X connect 5 0 6 0; +#X connect 5 0 16 1; +#X connect 6 0 4 0; +#X connect 7 0 15 0; +#X connect 8 0 17 0; +#X connect 8 0 10 0; +#X connect 9 0 5 0; +#X connect 9 0 7 0; +#X connect 10 0 14 0; +#X connect 13 0 1 0; +#X connect 14 0 9 1; +#X connect 15 0 4 0; +#X connect 15 0 2 0; +#X connect 16 0 13 0; +#X connect 18 0 9 0; diff --git a/doc/tutorials/footils/pddrums/fastline.png b/doc/tutorials/footils/pddrums/fastline.png new file mode 100644 index 00000000..346f52ed Binary files /dev/null and b/doc/tutorials/footils/pddrums/fastline.png differ diff --git a/doc/tutorials/footils/pddrums/pddrums.html b/doc/tutorials/footils/pddrums/pddrums.html index 9d87077e..9b167106 100644 --- a/doc/tutorials/footils/pddrums/pddrums.html +++ b/doc/tutorials/footils/pddrums/pddrums.html @@ -1,6 +1,6 @@ - + - + @@ -76,12 +76,15 @@ version of angriff is this: A nearly empty patch with a noise~ object inside, saved under the name "angriff-01.pd".

angriff-01.png

-

angriff-01.pd, an unusable first version.

+

angriff-01.pd, an unusable first version.

Even this can be used as an object. Just create a new, empty patch (with "Ctrl-n"), put an object in it and call it "angriff-01", i.e. the name of our first drum patch without the .pd-suffix.

-

Using the unusable angriff-01.pd in another patch.

+
+

using_angriff-1.png

+

Using the unusable angriff-01.pd in another patch. using_angriff-1.pd

+

PD searches for something that matches the object "angriff-01" in several places: in the list of builtin objects like "noise~", in external libraries or in its path for abstractions. If angriff-01.pd @@ -107,7 +110,7 @@ builtin envelope generator in PD is line~. drumcenter-01.pd show the noise, the envelope and both multiplied together.

drumcenter-01.png

-

Enveloped noise, drumcenter-01.pd

+

Enveloped noise, drumcenter-01.pd

If you listen to this patch, it already sounds a bit like a snare, doesn't it? To make this sound a bit more variable we can use filtered @@ -116,7 +119,7 @@ both, so lets use them. Her's the noise filtered with the lop~ filter at a cutoff frequency of 400 Hertz:

drumcenter-02.png

-

Lowpass filtered and enveloped noise, drumcenter-02.pd

+

Lowpass filtered and enveloped noise, drumcenter-02.pd

Now our patch is beginning to get a bit crammed and chaotic, so let's replace some chords with "send" and "receive" pairs, abbreviated "s" and "r". @@ -132,7 +135,7 @@ are a full part of the surrounding patch. The special objects

drumcenter-03.png

-

Cleaning up in the house, drumcenter-03.pd

+

Cleaning up in the house, drumcenter-03.pd

@@ -145,7 +148,7 @@ simulate this behaviour, we use PD's [osc~ frequency envelope as show in drumcenter-04.pd:

drumcenter-04.png

-

Percussive oscillator, drumcenter-04.pd

+

Percussive oscillator, drumcenter-04.pd

The right inlet of [osc~] is used here to set the start phase of the oscillator. If we wouldn't set it, it would be different everytime we @@ -172,7 +175,7 @@ around 1.45 msecs at a sampling rate of 44100 Hertz. A bit too long for the short attack times used in drum synths.

fastline.png

-

Two line~ segments started with delay, fastline.pd

+

Two line~ segments started with delay, fastline.pd

This problem isn't trivial at all and it appears everywhere, one wants to contol messages in PD quicker than the signal blocksize allows, for @@ -186,6 +189,11 @@ floating-point number which specifies the delay in ms after which, counting from the current tick, the trigger should go off." We will now use the T3 break point envelope generator [t3_bpe] to generate faster envelopes.

+
+

t3-fastline.png

+

Two line~ segments started with delay, t3-fastline.pd

+
+

to be continued...

diff --git a/doc/tutorials/footils/pddrums/pddrums.txt b/doc/tutorials/footils/pddrums/pddrums.txt index 07d6a0b8..c4ccb39e 100644 --- a/doc/tutorials/footils/pddrums/pddrums.txt +++ b/doc/tutorials/footils/pddrums/pddrums.txt @@ -4,12 +4,13 @@ Building Drums in PD :Autor: Frank Barknecht :Contact: fbar@footils.org + :Abstract: This quicktoot describes how PD can be used to build a simple drum synthesizer with graphical controls and a step sequencer. -.. contents:: +.. contents:: Small is beautiful @@ -58,13 +59,19 @@ inside, saved under the name "angriff-01.pd". .. figure:: angriff-01.png - angriff-01.pd, an unusable first version. + angriff-01.pd_, an unusable first version. + +.. _angriff-01.pd: angriff-01.pd Even this can be used as an object. Just create a new, empty patch (with "Ctrl-n"), put an object in it and call it "angriff-01", i.e. the name of our first drum patch without the .pd-suffix. -Using the unusable angriff-01.pd in another patch. +.. figure:: using_angriff-1.png + + Using the unusable angriff-01.pd in another patch. using_angriff-1.pd_ + +.. _using_angriff-1.pd: using_angriff-1.pd PD searches for something that matches the object "angriff-01" in several places: in the list of builtin objects like "noise~", in @@ -93,7 +100,9 @@ noise, the envelope and both multiplied together. .. figure:: drumcenter-01.png - Enveloped noise, drumcenter-01.pd + Enveloped noise, drumcenter-01.pd_ + +.. _drumcenter-01.pd: drumcenter-01.pd If you listen to this patch, it already sounds a bit like a snare, doesn't it? To make this sound a bit more variable we can use filtered @@ -103,7 +112,9 @@ at a cutoff frequency of 400 Hertz: .. figure:: drumcenter-02.png - Lowpass filtered and enveloped noise, drumcenter-02.pd + Lowpass filtered and enveloped noise, drumcenter-02.pd_ + +.. _drumcenter-02.pd: drumcenter-02.pd Now our patch is beginning to get a bit crammed and chaotic, so let's replace some chords with "send" and "receive" pairs, abbreviated "s" and "r". @@ -120,7 +131,10 @@ the surroundig patch and the subpatch. They work with abstractions as well. .. figure:: drumcenter-03.png - Cleaning up in the house, drumcenter-03.pd + Cleaning up in the house, drumcenter-03.pd_ + +.. _drumcenter-03.pd: drumcenter-03.pd + Let It Swing ------------------ @@ -134,7 +148,9 @@ frequency envelope as show in drumcenter-04.pd: .. figure:: drumcenter-04.png - Percussive oscillator, drumcenter-04.pd + Percussive oscillator, drumcenter-04.pd_ + +.. _drumcenter-04.pd: drumcenter-04.pd The right inlet of ``[osc~]`` is used here to set the start phase of the oscillator. If we wouldn't set it, it would be different everytime we @@ -163,7 +179,9 @@ for the short attack times used in drum synths. .. figure:: fastline.png - Two line~ segments started with delay, fastline.pd + Two line~ segments started with delay, fastline.pd_ + +.. _fastline.pd: fastline.pd This problem isn't trivial at all and it appears everywhere, one wants to contol messages in PD quicker than the signal blocksize allows, for @@ -178,3 +196,10 @@ counting from the current tick, the trigger should go off." We will now use the T3 break point envelope generator ``[t3_bpe]`` to generate faster envelopes. +.. figure:: t3-fastline.png + + Two line~ segments started with delay, t3-fastline.pd_ + +.. _t3-fastline.pd: t3-fastline.pd + +*to be continued...* diff --git a/doc/tutorials/footils/pddrums/t3-fastline.pd b/doc/tutorials/footils/pddrums/t3-fastline.pd new file mode 100644 index 00000000..e1c209b7 --- /dev/null +++ b/doc/tutorials/footils/pddrums/t3-fastline.pd @@ -0,0 +1,49 @@ +#N canvas 193 381 819 529 10; +#X obj 191 291 t3_bpe; +#X obj 191 192 t b b; +#X obj 191 348 t3_line~ 0; +#X obj 191 252 f 0; +#X obj 244 128 t b f; +#X obj 107 417 tabwrite~ line; +#N canvas 0 0 450 300 graph1 0; +#X array line 441 float 0; +#X coords 0 1 440 -1 200 140 1; +#X restore 457 270 graph; +#X msg 472 79 \; line resize 441 \; line xticks 0 64 8 \; line xlabel +1.1 0 64 128 192 256 320 384 \; pd dsp 1; +#X obj 244 105 / 44.1; +#X msg 191 149 bang; +#X obj 472 49 loadbang; +#X floatatom 112 189 5 0 0 0 - - -; +#X obj 112 207 / 44.1; +#X text 104 165 pre-delay; +#X text 86 8 T3-envelopes; +#X floatatom 274 152 5 0 0 0 - - -; +#X text 324 151 msec; +#X text 59 31 With Time-Tagged Triggers exact positioning is possible +even between block boundaries.; +#X msg 244 204 set \$1 \$2 \$3 \$4; +#X msg 244 246 1 1.85941 0 2; +#X obj 244 84 nbx 5 16 -1e+37 1e+37 0 0 empty empty Samples 0 -8 1 +10 -260818 -1 -1 82 256; +#X obj 244 176 pack 1 0.5 0 2; +#X connect 0 0 2 0; +#X connect 0 1 2 1; +#X connect 1 0 3 0; +#X connect 1 0 5 0; +#X connect 1 1 19 0; +#X connect 2 0 5 0; +#X connect 3 0 0 0; +#X connect 4 0 9 0; +#X connect 4 0 21 0; +#X connect 4 1 15 0; +#X connect 8 0 4 0; +#X connect 9 0 1 0; +#X connect 10 0 7 0; +#X connect 11 0 12 0; +#X connect 12 0 3 1; +#X connect 15 0 21 1; +#X connect 18 0 19 0; +#X connect 19 0 0 0; +#X connect 20 0 8 0; +#X connect 21 0 18 0; diff --git a/doc/tutorials/footils/pddrums/t3-fastline.png b/doc/tutorials/footils/pddrums/t3-fastline.png new file mode 100644 index 00000000..7833cc2a Binary files /dev/null and b/doc/tutorials/footils/pddrums/t3-fastline.png differ diff --git a/doc/tutorials/footils/pddrums/using_angriff-1.pd b/doc/tutorials/footils/pddrums/using_angriff-1.pd new file mode 100644 index 00000000..7aafbd63 --- /dev/null +++ b/doc/tutorials/footils/pddrums/using_angriff-1.pd @@ -0,0 +1,2 @@ +#N canvas 270 233 450 300 10; +#X obj 187 140 angriff-01; diff --git a/doc/tutorials/footils/pddrums/using_angriff-1.png b/doc/tutorials/footils/pddrums/using_angriff-1.png new file mode 100644 index 00000000..bbe04cc1 Binary files /dev/null and b/doc/tutorials/footils/pddrums/using_angriff-1.png differ -- cgit v1.2.1