aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sfruit/anysoundfiler-help.pd23
-rw-r--r--sfruit/anysoundfiler.pd150
-rw-r--r--sfruit/hid-index_keys.pd17
-rw-r--r--sfruit/list-grow.pd18
4 files changed, 199 insertions, 9 deletions
diff --git a/sfruit/anysoundfiler-help.pd b/sfruit/anysoundfiler-help.pd
new file mode 100644
index 0000000..b661935
--- /dev/null
+++ b/sfruit/anysoundfiler-help.pd
@@ -0,0 +1,23 @@
+#N canvas 284 196 450 300 10;
+#X obj 161 81 anysoundfiler;
+#X floatatom 161 110 10 0 0 0 - - -;
+#X obj 161 13 openpanel;
+#X obj 161 35 list append \$0;
+#X obj 137 14 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#N canvas 0 22 450 300 tables 0;
+#X restore 326 104 pd tables;
+#X msg 161 57 read -resize \$1 \$2-test-ch1 \$2-test-ch2;
+#N canvas 0 22 450 300 (subpatch) 0;
+#X array \$0-test-ch1 7497 float 2;
+#X coords 0 1 7497 -1 200 140 1;
+#X restore 23 146 graph;
+#N canvas 0 22 450 300 (subpatch) 0;
+#X array \$0-test-ch2 7497 float 2;
+#X coords 0 1 7497 -1 200 140 1;
+#X restore 233 146 graph;
+#X connect 0 0 1 0;
+#X connect 2 0 3 0;
+#X connect 3 0 6 0;
+#X connect 4 0 2 0;
+#X connect 6 0 0 0;
diff --git a/sfruit/anysoundfiler.pd b/sfruit/anysoundfiler.pd
new file mode 100644
index 0000000..d9fd96c
--- /dev/null
+++ b/sfruit/anysoundfiler.pd
@@ -0,0 +1,150 @@
+#N canvas 444 45 864 638 10;
+#X obj 68 55 inlet;
+#X obj 313 37 loadbang;
+#X text 63 34 filename;
+#X msg 68 299 open \$1;
+#X msg 530 542 0;
+#X msg 407 441 1;
+#X obj 407 485 print starting;
+#X obj 373 340 select 1;
+#X msg 390 514 play;
+#X obj 373 240 route ready bang samplerate length;
+#X msg 691 515 resize \$1;
+#X obj 691 409 *;
+#X obj 373 362 t b b b b;
+#X obj 691 364 f;
+#X obj 691 299 t b b;
+#X obj 549 514 outlet;
+#X obj 718 387 f;
+#X obj 549 488 f;
+#X obj 68 81 route read;
+#X obj 68 107 route -resize;
+#X obj 68 221 unpack s s s;
+#X obj 102 267 s \$0-table1;
+#X obj 137 245 s \$0-table2;
+#X msg 50 481 set \$1;
+#X obj 20 521 tabwrite~;
+#X obj 691 542 s;
+#X obj 691 566 s;
+#X obj 722 542 r \$0-table1;
+#X obj 722 566 r \$0-table2;
+#X obj 50 459 r \$0-table1;
+#X msg 200 481 set \$1;
+#X obj 200 459 r \$0-table2;
+#X obj 179 520 tabwrite~;
+#X msg 569 434 stop;
+#X obj 108 549 r \$0-start_writing;
+#X obj 373 570 s \$0-start_writing;
+#X obj 407 463 s \$0-switch;
+#X obj 92 335 r \$0-readanysf;
+#X obj 390 537 s \$0-readanysf;
+#X obj 530 370 t b b b;
+#X obj 230 63 switch~;
+#X obj 230 37 r \$0-switch;
+#X obj 313 110 s \$0-switch;
+#X obj 177 407 s \$0-readanysf-status;
+#X obj 373 197 r \$0-readanysf-status;
+#X obj 691 261 r \$0-calc_size;
+#X obj 424 393 s \$0-calc_size;
+#X obj 530 569 s \$0-switch;
+#X obj 569 455 s \$0-readanysf;
+#N canvas 659 448 474 281 checksize 0;
+#X obj 58 15 inlet;
+#X obj 58 229 outlet;
+#X obj 58 74 > 4e+06;
+#X obj 58 104 sel 0 1;
+#X obj 58 43 t a a;
+#X obj 58 145 f;
+#X msg 86 146 4e+06;
+#X msg 151 147 anysoundfiler_read: truncated to 4e+06 elements;
+#X obj 86 125 t b b;
+#X obj 151 173 print error;
+#X connect 0 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 5 0;
+#X connect 3 1 8 0;
+#X connect 4 0 2 0;
+#X connect 4 1 5 1;
+#X connect 5 0 1 0;
+#X connect 6 0 1 0;
+#X connect 7 0 9 0;
+#X connect 8 0 6 0;
+#X connect 8 1 7 0;
+#X restore 691 438 pd checksize;
+#X obj 473 285 s \$0-srate;
+#X obj 523 264 s \$0-length_in_secs;
+#X obj 731 327 r \$0-srate;
+#X obj 733 363 r \$0-length_in_secs;
+#X obj 68 387 readanysf~ 2 24 64;
+#X msg 313 84 set 64 1 64 \, 0;
+#X text 320 59 <--- upsampled by factor of 64 \, then switched off
+;
+#X obj 143 138 t a b;
+#X obj 68 139 t a b;
+#X msg 95 164 1;
+#X msg 170 164 0;
+#X obj 135 194 s \$0-resize?;
+#X obj 724 460 r \$0-resize?;
+#X obj 691 483 spigot;
+#X obj 579 409 print stopping;
+#X connect 0 0 18 0;
+#X connect 1 0 55 0;
+#X connect 3 0 54 0;
+#X connect 4 0 47 0;
+#X connect 5 0 36 0;
+#X connect 7 0 12 0;
+#X connect 8 0 38 0;
+#X connect 9 0 7 0;
+#X connect 9 1 39 0;
+#X connect 9 2 50 0;
+#X connect 9 3 51 0;
+#X connect 10 0 25 0;
+#X connect 10 0 26 0;
+#X connect 11 0 49 0;
+#X connect 12 0 35 0;
+#X connect 12 1 8 0;
+#X connect 12 2 5 0;
+#X connect 12 3 46 0;
+#X connect 13 0 11 0;
+#X connect 14 0 13 0;
+#X connect 14 1 16 0;
+#X connect 16 0 11 1;
+#X connect 17 0 15 0;
+#X connect 18 0 19 0;
+#X connect 19 0 58 0;
+#X connect 19 1 57 0;
+#X connect 20 0 3 0;
+#X connect 20 1 21 0;
+#X connect 20 2 22 0;
+#X connect 23 0 24 0;
+#X connect 27 0 25 1;
+#X connect 28 0 26 1;
+#X connect 29 0 23 0;
+#X connect 30 0 32 0;
+#X connect 31 0 30 0;
+#X connect 33 0 48 0;
+#X connect 34 0 32 0;
+#X connect 34 0 24 0;
+#X connect 37 0 54 0;
+#X connect 39 0 4 0;
+#X connect 39 1 17 0;
+#X connect 39 2 33 0;
+#X connect 41 0 40 0;
+#X connect 44 0 9 0;
+#X connect 45 0 14 0;
+#X connect 49 0 17 1;
+#X connect 49 0 63 0;
+#X connect 52 0 13 1;
+#X connect 53 0 16 1;
+#X connect 54 0 24 0;
+#X connect 54 1 32 0;
+#X connect 54 2 43 0;
+#X connect 55 0 42 0;
+#X connect 57 0 20 0;
+#X connect 57 1 60 0;
+#X connect 58 0 20 0;
+#X connect 58 1 59 0;
+#X connect 59 0 61 0;
+#X connect 60 0 61 0;
+#X connect 62 0 63 1;
+#X connect 63 0 10 0;
diff --git a/sfruit/hid-index_keys.pd b/sfruit/hid-index_keys.pd
new file mode 100644
index 0000000..59d7920
--- /dev/null
+++ b/sfruit/hid-index_keys.pd
@@ -0,0 +1,17 @@
+#N canvas 817 442 450 300 10;
+#X obj 52 249 outlet;
+#X obj 103 117 loadbang;
+#X obj 52 165 list-find;
+#X obj 52 90 list split 1;
+#X obj 52 220 list append;
+#X obj 141 52 inlet;
+#X obj 103 138 dollarg;
+#X obj 52 53 inlet;
+#X connect 1 0 6 0;
+#X connect 2 0 4 0;
+#X connect 3 0 2 0;
+#X connect 3 1 4 1;
+#X connect 4 0 0 0;
+#X connect 5 0 2 1;
+#X connect 6 0 2 1;
+#X connect 7 0 3 0;
diff --git a/sfruit/list-grow.pd b/sfruit/list-grow.pd
index 8777492..a747dbd 100644
--- a/sfruit/list-grow.pd
+++ b/sfruit/list-grow.pd
@@ -1,20 +1,20 @@
-#N canvas 62 84 450 300 10;
+#N canvas 62 84 447 353 10;
#X obj 80 40 inlet;
-#X obj 248 208 outlet;
+#X obj 248 258 outlet;
#X obj 248 39 inlet;
#X obj 248 114 list prepend;
-#X obj 248 177 spigot;
+#X obj 248 227 spigot;
#X obj 80 77 route clear;
-#X msg 182 142 1;
-#X msg 143 142 0;
-#X obj 362 67 == 0;
+#X msg 194 152 1;
+#X msg 160 152 0;
+#X obj 392 127 == 0;
#X obj 317 63 t a;
#X obj 317 92 spigot 1;
-#X obj 286 39 t b;
-#X text 43 225 this is an attempt at avoiding unnecessary list copies
+#X obj 266 69 t b;
+#X text 43 285 this is an attempt at avoiding unnecessary list copies
a la mathieu's fast list-drip (but i don't actually remember if that
was the mechanism for speed : )) oh well \, hopefully it's fast;
-#X obj 143 118 t b b b b;
+#X obj 143 128 t b b b b;
#X connect 0 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;