1
#N canvas 53 232 936 654 12;
2
#N canvas 0 0 450 300 graph1 0;
3
#X array table19 44103 float 0;
4
#X coords 0 1.02 44100 -1.02 200 130 1;
5
#X restore 680 8 graph;
7
#X floatatom 99 51 0 0 0 0 - - -;
8
#X text 146 50 <-- frequency (Hz.);
9
#X floatatom 129 106 0 0 0 0 - - -;
14
#X text 164 106 <-- chunk size (100ths of a second);
15
#X obj 591 369 adc~ 1;
16
#X obj 591 395 hip~ 5;
18
#N canvas 0 0 450 300 graph2 0;
19
#X array graph19 44100 float 0;
20
#X coords 0 44100 44100 0 200 130 1;
21
#X restore 681 196 graph;
25
#X floatatom 123 205 0 0 0 0 - - -;
26
#X obj 123 252 pack 0 100;
28
#X text 34 474 In this patch we can loop in any "window" of the input
29
sample. The "read point" (0-100) gives the starting point of the window
30
and "chunk" is its size (both in 100ths of a second.) Try \, for example
31
\, frequency 4 \, sharpness 10 \, chunk size 25 \, and vary the read
32
point from -25 to 100 \, listening to the result.;
33
#X text 242 281 <-- graph table index;
34
#X text 684 337 ----- 1 second ------;
35
#X obj 595 490 loadbang;
36
#X text 631 514 v-- re-read the original sample;
37
#X obj 605 559 soundfiler;
38
#X text 678 147 ---- 44103 samples ---;
39
#X obj 591 455 tabwrite~ table19;
40
#X msg 605 535 read ../sound/voice.wav table19;
41
#X text 688 628 updated for Pd version 0.37;
42
#X msg 595 585 \; graph19 ylabel 48000 0 44100;
47
#X text 157 206 <-- read point (100ths of a second);
48
#X obj 41 406 output~;
49
#X text 651 422 <-- record;
50
#X text 36 13 ENVELOPING THE LOOPING SAMPLER;
51
#X text 37 574 You should hear some doppler shift as you change the
52
read point. To see why \, click on "graph table index" and quickly
53
start changing the read point--- you should see entertaining pictures
54
in "table-index". The next patch shows how to prevent this if you wish
56
#X obj 100 336 tabread4~ table19;
57
#X obj 194 307 tabwrite~ graph19;