From c89cfa407af8c8a456749fc8c61175b97d2ef385 Mon Sep 17 00:00:00 2001 From: Luke Iannini Date: Tue, 26 May 2009 12:10:22 +0000 Subject: anysoundfiler v1 svn path=/trunk/abstractions/sfruit/; revision=11512 --- sfruit/anysoundfiler-help.pd | 23 +++++++ sfruit/anysoundfiler.pd | 150 +++++++++++++++++++++++++++++++++++++++++++ sfruit/hid-index_keys.pd | 17 +++++ sfruit/list-grow.pd | 18 +++--- 4 files changed, 199 insertions(+), 9 deletions(-) create mode 100644 sfruit/anysoundfiler-help.pd create mode 100644 sfruit/anysoundfiler.pd create mode 100644 sfruit/hid-index_keys.pd 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; -- cgit v1.2.1