From 533a75a9f57f73711e7e3c5afef0ce83f632ca4c Mon Sep 17 00:00:00 2001 From: Cyrille Henry Date: Fri, 2 Nov 2012 20:48:39 +0000 Subject: more examples... svn path=/trunk/externals/share_mem/; revision=16522 --- examples/4.table_fifo.pd | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 examples/4.table_fifo.pd (limited to 'examples/4.table_fifo.pd') diff --git a/examples/4.table_fifo.pd b/examples/4.table_fifo.pd new file mode 100644 index 0000000..5298a14 --- /dev/null +++ b/examples/4.table_fifo.pd @@ -0,0 +1,48 @@ +#N canvas 229 287 614 675 10; +#X declare -path ..; +#N canvas 0 22 450 300 (subpatch) 0; +#X array data 100 float 2; +#X coords 0 1 99 -1 200 140 1 0 0; +#X restore 372 333 graph; +#X text 30 23 Basic sharing of memory data between two pd instances +; +#X msg 44 306 pd~ stop; +#X obj 512 20 loadbang; +#X msg 512 41 \; pd dsp 1; +#X text 29 260 launch subprocess; +#X obj 39 52 declare -path ..; +#X obj 54 473 t f f; +#X obj 81 498 ==; +#X obj 81 518 sel 1; +#X obj 81 540 print erreur de syncro; +#X obj 27 453 sel 0; +#X text 30 81 in order to share quicklly updated table \, in a syncronised +way \, we need a data fifo; +#X text 30 113 only the index of the wrinting position is passed throw +stdout of the pd~ \, in order to keep data syncronisation; +#X text 134 509 thanks to the fifo \, there are no more syncronisation +problem; +#X text 30 165 Round trip fifo is set to 50 blocs (72ms at 44.1KHz) +; +#X text 30 182 metro is set to 5ms \, so maximum jitter can be 72/5 += 25 bang; +#X text 28 208 So \, lets use a memory size of 2500; +#X obj 27 434 shmem 1004 2500; +#X msg 27 413 memdump \$1 data; +#X msg 27 279 pd~ start 4.table_fifo-subprocess.pd; +#X obj 27 374 route syncro; +#X obj 27 394 * 100; +#X obj 27 353 pd~ -ninsig 0 -noutsig 0 -fifo 50; +#X connect 2 0 23 0; +#X connect 3 0 4 0; +#X connect 7 0 8 1; +#X connect 7 1 8 0; +#X connect 8 0 9 0; +#X connect 9 0 10 0; +#X connect 11 1 7 0; +#X connect 18 0 11 0; +#X connect 19 0 18 0; +#X connect 20 0 23 0; +#X connect 21 0 22 0; +#X connect 22 0 19 0; +#X connect 23 0 21 0; -- cgit v1.2.1