aboutsummaryrefslogtreecommitdiff
path: root/pd/doc/3.audio.examples/27.PART4.samplers.pd
diff options
context:
space:
mode:
Diffstat (limited to 'pd/doc/3.audio.examples/27.PART4.samplers.pd')
-rw-r--r--pd/doc/3.audio.examples/27.PART4.samplers.pd111
1 files changed, 111 insertions, 0 deletions
diff --git a/pd/doc/3.audio.examples/27.PART4.samplers.pd b/pd/doc/3.audio.examples/27.PART4.samplers.pd
new file mode 100644
index 00000000..e7aee0cd
--- /dev/null
+++ b/pd/doc/3.audio.examples/27.PART4.samplers.pd
@@ -0,0 +1,111 @@
+#N canvas 11 3 930 640 12;
+#X msg 306 14 \; pd dsp 1;
+#X msg 391 14 \; pd dsp 0;
+#X text 327 45 ON;
+#X text 408 45 OFF;
+#X floatatom 75 275 0 0 0;
+#N canvas 159 26 495 266 output 0;
+#X obj 338 160 t b;
+#X obj 338 110 f;
+#X obj 338 60 inlet;
+#X text 344 29 mute;
+#X obj 338 185 f;
+#X msg 425 178 0;
+#X msg 338 85 bang;
+#X obj 338 135 moses 1;
+#X obj 425 153 t b f;
+#X obj 397 117 moses 1;
+#X obj 83 148 dbtorms;
+#X obj 397 92 r master-lvl;
+#X obj 83 42 r master-lvl;
+#X obj 338 210 s master-lvl;
+#X obj 22 181 inlet~;
+#X obj 199 41 inlet;
+#X text 199 18 level;
+#X obj 199 100 s master-lvl;
+#X msg 96 65 set \$1;
+#X obj 96 89 outlet;
+#X msg 214 64 \; pd dsp 1;
+#X obj 83 194 line~;
+#X obj 22 212 *~;
+#X obj 22 241 dac~;
+#X obj 83 171 pack 0 50;
+#X text 20 158 audio;
+#X text 93 110 show level;
+#X connect 0 0 4 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 4 0 13 0;
+#X connect 5 0 13 0;
+#X connect 6 0 1 0;
+#X connect 7 0 0 0;
+#X connect 7 1 8 0;
+#X connect 8 0 5 0;
+#X connect 9 1 4 1;
+#X connect 10 0 24 0;
+#X connect 11 0 1 1;
+#X connect 11 0 9 0;
+#X connect 12 0 10 0;
+#X connect 12 0 18 0;
+#X connect 14 0 22 0;
+#X connect 15 0 17 0;
+#X connect 15 0 20 0;
+#X connect 18 0 19 0;
+#X connect 21 0 22 1;
+#X connect 22 0 23 0;
+#X connect 22 0 23 1;
+#X connect 24 0 21 0;
+#X restore 46 303 pd output;
+#X msg 114 273 MUTE;
+#X text 148 272 <-- output amplitude;
+#X obj 46 239 hip~ 5;
+#X text 102 240 high pass filter to cut DC;
+#X graph graph1 0 -1.02 44103 1.02 594 172 794 42;
+#X array sample-table 44104 float 0;
+#X pop;
+#X obj 46 207 tabread4~ sample-table;
+#X obj 46 172 line~;
+#X obj 46 123 * 441;
+#X floatatom 46 69 0 0 0;
+#X obj 46 147 pack 0 100;
+#X text 102 13 SCRATCH MACHINE;
+#X text 81 70 <-- read point in 100ths of a second;
+#X text 103 123 convert to SAMPLES (441 samples in 0.01 sec);
+#X obj 414 257 loadbang;
+#X text 248 195 read from the table;
+#X text 239 213 (the input is the index in samples);
+#X text 23 516 For more on reading and writing soundfiles to tables
+\, setting their lengths \, etc \, see "arrays" in the "control examples"
+series.;
+#X text 20 385 This patch introduces the "tabread4~" object \, which
+reads audio samples out of a floating-point array \, often called a
+"sample table." The input is the index of the sample to read \, counting
+from zero. The output is calculated using 4-point cubic interpolation
+\, which is adequate for most purposes. Because of the interpolation
+scheme \, tabread4~'s input cannot be less than one or greater than
+the table length minus two.;
+#X text 22 565 Fanatics take note: if you want really high-fidelity
+sampling \, use a high-quality resampling program to up-sample your
+soundfile to 88200 to drastically reduce interpolation error.;
+#X text 600 195 (one second plus three extra;
+#X text 602 214 for 4-point interpolation);
+#X text 407 330 message to read a soundfile into the table (automatically
+sent when you load this patch by the "loadbang" object.);
+#X text 93 172 convert smoothly to audio signal;
+#X text 93 84 (range is 0-100.) YOU ONLY HEAR OUTPUT;
+#X text 94 100 WHEN THIS IS 0-100 AND ACTIVELY CHANGING.;
+#X text 605 611 updated for Pd version 0.33;
+#X text 593 173 --- 44103 samples ---;
+#X msg 414 281 read ../sound/voice.wav sample-table;
+#X obj 414 306 soundfiler;
+#X connect 4 0 5 1;
+#X connect 5 0 4 0;
+#X connect 6 0 5 2;
+#X connect 8 0 5 0;
+#X connect 11 0 8 0;
+#X connect 12 0 11 0;
+#X connect 13 0 15 0;
+#X connect 14 0 13 0;
+#X connect 15 0 12 0;
+#X connect 19 0 33 0;
+#X connect 33 0 34 0;