aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Christoph Steiner <eighthave@users.sourceforge.net>2010-11-19 17:13:24 +0000
committerHans-Christoph Steiner <eighthave@users.sourceforge.net>2010-11-19 17:13:24 +0000
commitc7064fe5b84431c2d59cae614d94e908eb48c39c (patch)
tree7511cf9ba0eedb89ecac7b98a8ab4b0e77793ea5
parent0c4131cc98c5a6a81bc50d2436c7630a8611b56c (diff)
created object to stretch out a soundfile based on start frame and end frame
svn path=/trunk/externals/framesync/; revision=14446
-rw-r--r--tabstretcher~-help.pd34
-rw-r--r--tabstretcher~.pd71
2 files changed, 105 insertions, 0 deletions
diff --git a/tabstretcher~-help.pd b/tabstretcher~-help.pd
new file mode 100644
index 0000000..f71baf6
--- /dev/null
+++ b/tabstretcher~-help.pd
@@ -0,0 +1,34 @@
+#N canvas 228 173 595 379 10;
+#X text 212 227 frame;
+#X text 71 265 audio out;
+#X text 25 20 Plays a sound file til it ends \, synced up to the frame
+clock. Should stay in sync when randomly accessing different frame
+numbers.;
+#X text 96 216 array;
+#X text 96 227 name;
+#X text 211 216 start;
+#X obj 377 279 soundfiler;
+#X obj 377 232 symbol \$0-array;
+#N canvas 0 22 450 300 (subpatch) 0;
+#X array \$0-array 20756 float 2;
+#X coords 0 1 20756 -1 200 140 1;
+#X restore 376 50 graph;
+#X obj 94 113 frameclock 400;
+#X obj 76 322 output~;
+#X msg 108 82 78;
+#X msg 77 82 55;
+#X text 134 80 <-- try jumping to a frame;
+#X obj 377 211 loadbang;
+#X obj 436 214 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X obj 95 243 tabstretcher~ \$0-array 10 44;
+#X msg 377 254 read ../../sound/voice.wav \$1;
+#X text 176 316 arguments: arrayname startframe# endframe#;
+#X connect 7 0 17 0;
+#X connect 11 0 9 0;
+#X connect 12 0 9 0;
+#X connect 14 0 7 0;
+#X connect 15 0 7 0;
+#X connect 16 0 10 0;
+#X connect 16 0 10 1;
+#X connect 17 0 6 0;
diff --git a/tabstretcher~.pd b/tabstretcher~.pd
new file mode 100644
index 0000000..b743e35
--- /dev/null
+++ b/tabstretcher~.pd
@@ -0,0 +1,71 @@
+#N canvas 685 275 872 599 10;
+#X obj 301 4 inlet;
+#X obj 301 83 purepd/symbol_argument \$1;
+#X obj 213 30 loadbang;
+#X obj 504 11 inlet;
+#X obj 504 82 purepd/float_argument \$2;
+#X obj 89 300 moses;
+#X obj 116 336 moses;
+#X obj 260 119 fps_ms;
+#X obj 22 38 receive framesync/frameclock;
+#X text 19 21 current frame #;
+#X text 342 3 array to play;
+#X obj 133 119 flatspace/arraysize;
+#X obj 116 568 outlet~;
+#X obj 116 371 -;
+#X msg 301 496 set \$1;
+#X obj 116 407 *;
+#X obj 116 430 %;
+#X msg 271 32 bang;
+#X obj 22 65 trigger anything bang;
+#X obj 116 511 line~;
+#X obj 116 486 pack float float;
+#X obj 116 450 select 0;
+#X msg 82 486 0;
+#X obj 684 11 inlet;
+#X text 724 8 frame # when to stop;
+#X text 544 8 frame # when to start;
+#X obj 684 82 purepd/float_argument \$3;
+#X obj 213 50 trigger bang bang bang bang bang;
+#X obj 504 171 -;
+#X text 529 171 total frames to play;
+#X obj 425 342 /;
+#X obj 504 192 * -1;
+#X obj 116 541 tabread4~ \$1;
+#X connect 0 0 1 0;
+#X connect 1 0 11 1;
+#X connect 1 0 14 0;
+#X connect 2 0 27 0;
+#X connect 3 0 4 0;
+#X connect 4 0 5 1;
+#X connect 4 0 13 1;
+#X connect 4 0 28 0;
+#X connect 5 1 6 0;
+#X connect 6 0 13 0;
+#X connect 7 0 20 1;
+#X connect 8 0 18 0;
+#X connect 11 0 16 1;
+#X connect 11 0 30 0;
+#X connect 13 0 15 0;
+#X connect 14 0 32 0;
+#X connect 15 0 16 0;
+#X connect 16 0 21 0;
+#X connect 17 0 27 0;
+#X connect 18 0 5 0;
+#X connect 18 1 11 0;
+#X connect 19 0 32 0;
+#X connect 20 0 19 0;
+#X connect 21 0 22 0;
+#X connect 21 1 20 0;
+#X connect 22 0 19 0;
+#X connect 23 0 26 0;
+#X connect 26 0 28 1;
+#X connect 26 0 6 1;
+#X connect 27 1 7 0;
+#X connect 27 2 1 0;
+#X connect 27 3 4 0;
+#X connect 27 4 26 0;
+#X connect 28 0 31 0;
+#X connect 30 0 15 1;
+#X connect 31 0 30 1;
+#X connect 32 0 12 0;