Commit b8696dff authored by Roman Haefeli's avatar Roman Haefeli
Browse files

[wip] create version with 16 channels

parent 7152b543
#N canvas 81 1299 1094 618 10;
#X declare -stdpath iemnet;
#X obj 249 513 udpclient;
#X obj 249 482 r \$0.to.udp;
#X obj 249 565 s \$0.from.udp;
#X obj 214 4 loadbang;
#X obj 214 24 \$0;
#N canvas 0 151 285 340 sender 0;
#X obj 14 137 s \$0.to.udp;
#N canvas 0 53 398 477 prepend_header 0;
#X obj 9 12 inlet;
#X obj 9 414 outlet;
#X obj 94 13 r \$0.on.off;
#X obj 94 33 sel 0;
#X msg 94 53 0;
#X obj 9 32 t a b;
#X obj 36 83 f;
#X obj 36 102 mod 65536;
#X obj 36 122 t a a;
#X obj 111 111 + 1;
#X obj 36 142 t a a;
#X obj 81 160 >> 8;
#X obj 36 161 & 255;
#X obj 36 182 pack f f;
#X obj 9 393 list prepend;
#X obj 212 104 t a a;
#X obj 257 122 >> 8;
#X obj 212 123 & 255;
#X obj 36 202 list append 0 0;
#X obj 212 144 pack f f;
#X text 158 182 seq;
#X text 145 205 buffersize;
#X obj 36 231 list append 0;
#X text 146 231 samplingrate;
#X obj 36 261 list append 0;
#X text 136 266 bit resolution;
#X obj 36 298 list append 0;
#X text 132 301 in channels;
#X obj 36 330 list append 0;
#X text 219 363 time tag;
#X text 127 334 out channels;
#X obj 36 363 list prepend 0 0 0 0 0 0 0 0;
#X obj 296 218 r \$0.bitres;
#N canvas 394 310 404 229 samplerate 0;
#X obj 17 17 r \$0.samplerate;
#X obj 18 168 outlet;
#X obj 17 45 select 22050 32000 44100 48000 88200 96000 192000;
#X msg 17 80 0;
#X msg 58 80 1;
#X msg 100 80 2;
#X msg 141 80 3;
#X msg 183 79 4;
#X msg 224 80 5;
#X msg 266 79 6;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 2 1 4 0;
#X connect 2 2 5 0;
#X connect 2 3 6 0;
#X connect 2 4 7 0;
#X connect 2 5 8 0;
#X connect 2 6 9 0;
#X connect 3 0 1 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 0 1 0;
#X connect 7 0 1 0;
#X connect 8 0 1 0;
#X connect 9 0 1 0;
#X restore 291 170 pd samplerate;
#X obj 212 23 r \$0.blocksize;
#X obj 283 279 r \$0.out.channels;
#X connect 0 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 6 1;
#X connect 5 0 14 0;
#X connect 5 1 6 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 10 0;
#X connect 8 1 9 0;
#X connect 9 0 6 1;
#X connect 10 0 12 0;
#X connect 10 1 11 0;
#X connect 11 0 13 1;
#X connect 12 0 13 0;
#X connect 13 0 18 0;
#X connect 14 0 1 0;
#X connect 15 0 17 0;
#X connect 15 1 16 0;
#X connect 16 0 19 1;
#X connect 17 0 19 0;
#X connect 18 0 22 0;
#X connect 19 0 18 1;
#X connect 22 0 24 0;
#X connect 24 0 26 0;
#X connect 26 0 28 0;
#X connect 28 0 31 0;
#X connect 31 0 14 1;
#X connect 32 0 24 1;
#X connect 33 0 22 1;
#X connect 34 0 15 0;
#X connect 35 0 26 1;
#X connect 35 0 28 1;
#X restore 14 88 pd prepend_header;
#X obj 14 50 inlet;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X restore 33 509 pd sender;
#N canvas 520 121 607 637 receiver 0;
#X obj 14 11 r \$0.from.udp;
#X obj 14 162 list split 16;
#X obj 14 304 unpack f f;
#X obj 71 325 << 8;
#X obj 14 339 +;
#X msg 14 279 \$9 \$10;
#N canvas 990 217 384 614 jtter.analysis 0;
#X obj 10 11 inlet;
#X obj 145 17 r \$0.on.off;
#X obj 10 31 t a a;
#X obj 37 63 spigot;
#X msg 112 70 0;
#X obj 56 187 realtime;
#X obj 37 83 t a b b;
#X obj 10 128 -;
#X obj 183 94 r \$0.jack.blocksize;
#X obj 183 114 t b a;
#X msg 183 134 64;
#X obj 183 154 <<;
#X obj 183 174 * 1000;
#X obj 183 244 /;
#X obj 205 196 r \$0.samplerate;
#X obj 205 216 t b a;
#X obj 10 222 *;
#X obj 10 289 -;
#X obj 10 148 t a b;
#X obj 37 360 min;
#X obj 37 380 t a a;
#X obj 10 461 max;
#X obj 10 484 t a a;
#X obj 37 400 change;
#X obj 10 505 change;
#X floatatom 10 525 10 0 0 0 - - -;
#X obj 10 339 t a a;
#X obj 133 288 r \$0.on.off;
#X obj 133 308 sel 1;
#X msg 133 328 1000;
#X msg 170 328 -10000;
#X obj 10 250 pack f f;
#X msg 10 270 \$2 \$1;
#X obj 10 309 -;
#X obj 10 438 -;
#X connect 0 0 2 0;
#X connect 1 0 3 1;
#X connect 2 0 7 0;
#X connect 2 1 3 0;
#X connect 3 0 6 0;
#X connect 4 0 3 1;
#X connect 5 0 31 1;
#X connect 6 0 7 1;
#X connect 6 1 5 0;
#X connect 6 2 4 0;
#X connect 7 0 18 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 9 1 11 1;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 13 0 16 1;
#X connect 14 0 15 0;
#X connect 15 0 13 0;
#X connect 15 1 13 1;
#X connect 16 0 31 0;
#X connect 17 0 33 0;
#X connect 18 0 16 0;
#X connect 18 1 5 1;
#X connect 19 0 20 0;
#X connect 20 0 23 0;
#X connect 20 1 19 1;
#X connect 21 0 22 0;
#X connect 22 0 24 0;
#X connect 22 1 21 1;
#X connect 23 0 34 1;
#X connect 24 0 25 0;
#X connect 26 0 34 0;
#X connect 26 1 19 0;
#X connect 27 0 28 0;
#X connect 28 0 29 0;
#X connect 28 0 30 0;
#X connect 29 0 19 1;
#X connect 30 0 21 1;
#X connect 31 0 32 0;
#X connect 32 0 17 0;
#X connect 33 0 26 0;
#X connect 34 0 21 0;
#X restore 423 430 pd jtter.analysis;
#X obj 14 406 t a a a a a;
#X obj 51 260 outlet;
#X obj 14 535 outlet;
#X obj 14 64 spigot;
#N canvas 0 50 450 300 check_payload_length 0;
#X obj 82 65 list length;
#X obj 55 17 inlet;
#X obj 55 37 t a a;
#X msg 109 194 wrong payload size \$1;
#X obj 109 214 s \$0.error;
#X obj 55 280 outlet;
#X obj 177 80 *;
#X obj 192 40 r \$0.blocksize;
#X obj 82 108 ==;
#X obj 82 128 t a a;
#X obj 109 152 sel 0;
#X obj 109 172 f;
#X obj 82 85 t a a;
#X obj 82 234 change -1;
#X obj 82 254 outlet;
#X obj 177 23 r \$0.in.channels;
#X obj 232 77 r \$0.bitres;
#X obj 232 97 >> 3;
#X obj 232 117 t b a;
#X obj 192 60 t b a;
#X obj 177 100 *;
#X connect 0 0 12 0;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 2 1 0 0;
#X connect 3 0 4 0;
#X connect 6 0 20 0;
#X connect 7 0 19 0;
#X connect 8 0 9 0;
#X connect 9 0 13 0;
#X connect 9 1 10 0;
#X connect 10 0 11 0;
#X connect 11 0 3 0;
#X connect 12 0 8 0;
#X connect 12 1 11 1;
#X connect 13 0 14 0;
#X connect 15 0 6 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 18 0 20 0;
#X connect 18 1 20 1;
#X connect 19 0 6 0;
#X connect 19 1 6 1;
#X connect 20 0 8 1;
#X restore 51 183 pd check_payload_length;
#N canvas 398 50 408 408 validate_params 0;
#X obj 11 12 inlet;
#X obj 11 363 outlet;
#X msg 98 293 1;
#N canvas 697 197 362 296 buffersize 0;
#X obj 7 20 inlet;
#X msg 17 239 0;
#X obj 17 259 outlet;
#X msg 7 42 \$11 \$12;
#X obj 7 62 unpack f f;
#X obj 64 83 << 8;
#X obj 7 108 |;
#X obj 115 102 r \$0.blocksize;
#X obj 7 154 sel;
#X obj 70 208 pack f f;
#X obj 22 177 t a b;
#X msg 70 229 blocksize mismatch: received \$1 configured \$2;
#X obj 70 249 s \$0.error;
#X connect 0 0 3 0;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X connect 4 0 6 0;
#X connect 4 1 5 0;
#X connect 5 0 6 1;
#X connect 6 0 8 0;
#X connect 7 0 8 1;
#X connect 7 0 9 1;
#X connect 8 1 10 0;
#X connect 9 0 11 0;
#X connect 10 0 9 0;
#X connect 10 1 1 0;
#X connect 11 0 12 0;
#X restore 83 139 pd buffersize;
#N canvas 697 197 438 371 samplerate 0;
#X obj 7 20 inlet;
#X msg 49 258 0;
#X obj 49 282 outlet;
#X msg 7 46 \$13;
#X obj 7 69 sel 0 1 2 3 4 5 6;
#X msg 7 98 22050;
#X msg 46 98 32000;
#X msg 85 98 44100;
#X msg 124 98 48000;
#X msg 163 98 88200;
#X msg 202 98 96000;
#X msg 241 98 192000;
#X obj 7 142 t a;
#X obj 159 139 r \$0.samplerate;
#X obj 7 172 sel;
#X obj 22 195 t a b;
#X obj 114 227 pack f f;
#X msg 114 247 samplerate mismatch: received \$1 configured \$2;
#X obj 114 281 s \$0.error;
#X connect 0 0 3 0;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 4 1 6 0;
#X connect 4 2 7 0;
#X connect 4 3 8 0;
#X connect 4 4 9 0;
#X connect 4 5 10 0;
#X connect 4 6 11 0;
#X connect 5 0 12 0;
#X connect 6 0 12 0;
#X connect 7 0 12 0;
#X connect 8 0 12 0;
#X connect 9 0 12 0;
#X connect 10 0 12 0;
#X connect 11 0 12 0;
#X connect 12 0 14 0;
#X connect 13 0 14 1;
#X connect 13 0 16 1;
#X connect 14 1 15 0;
#X connect 15 0 16 0;
#X connect 15 1 1 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X restore 69 162 pd samplerate;
#N canvas 697 197 387 311 bitres 0;
#X obj 7 20 inlet;
#X msg 49 239 0;
#X obj 49 263 outlet;
#X msg 7 63 \$14;
#X obj 7 139 sel;
#X obj 142 77 r \$0.bitres;
#X obj 22 165 t a b;
#X obj 97 196 pack f f;
#X msg 97 219 bitrate mismatch: received \$1 (configured \$2);
#X obj 97 257 s \$0.error;
#X connect 0 0 3 0;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X connect 4 1 6 0;
#X connect 5 0 4 1;
#X connect 5 0 7 1;
#X connect 6 0 7 0;
#X connect 6 1 1 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X restore 54 184 pd bitres;
#N canvas 1060 205 402 258 inchannels 0;
#X obj 7 20 inlet;
#X msg 46 193 0;
#X obj 46 213 outlet;
#X msg 7 59 \$15;
#X obj 73 172 s \$0.error;
#X msg 73 146 inchannels mismatch: received \$1 (max 8);
#X obj 7 100 moses 9;
#X obj 46 124 t b a;
#X obj 135 211 outlet;
#X connect 0 0 3 0;
#X connect 1 0 2 0;
#X connect 3 0 6 0;
#X connect 5 0 4 0;
#X connect 6 0 8 0;
#X connect 6 1 7 0;
#X connect 7 0 1 0;
#X connect 7 1 5 0;
#X restore 40 205 pd inchannels;
#N canvas 697 197 412 298 outchannels 0;
#X obj 7 20 inlet;
#X msg 49 234 0;
#X obj 49 254 outlet;
#X obj 7 106 sel;
#X obj 148 67 r \$0.out.channels;
#X obj 22 135 t a b;
#X obj 103 166 pack f f;
#X obj 103 214 s \$0.error;
#X msg 7 59 \$16;
#X msg 103 188 outchannels mismatch: received \$1 (configured \$2)
;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 3 1 5 0;
#X connect 4 0 3 1;
#X connect 4 0 6 1;
#X connect 5 0 6 0;
#X connect 5 1 1 0;
#X connect 6 0 9 0;
#X connect 8 0 3 0;
#X connect 9 0 7 0;
#X restore 25 225 pd outchannels;
#X obj 11 318 f;
#X obj 11 56 t b a a a a a b;
#X obj 173 262 change -1;
#X obj 173 282 s \$0.in.channels;
#X obj 236 171 r \$0.connected;
#X obj 236 191 sel 0;
#X msg 236 211 set -1;
#X connect 0 0 9 0;
#X connect 2 0 8 1;
#X connect 3 0 8 1;
#X connect 4 0 8 1;
#X connect 5 0 8 1;
#X connect 6 0 8 1;
#X connect 6 1 10 0;
#X connect 8 0 1 0;
#X connect 9 0 8 0;
#X connect 9 2 6 0;
#X connect 9 3 5 0;
#X connect 9 4 4 0;
#X connect 9 5 3 0;
#X connect 9 6 2 0;
#X connect 10 0 11 0;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 14 0 10 0;
#X restore 41 126 pd validate_params;
#N canvas 270 132 710 558 continuous_sequence 0;
#X obj 244 181 moses 64;
#X obj 289 202 moses 192;
#X msg 289 247 0;
#X msg 340 248 1;
#X obj 289 280 change;
#X obj 289 300 sel 1;
#X obj 289 320 f;
#X obj 289 340 + 1;
#X obj 289 360 t a a;
#X msg 457 264 0;
#X obj 289 390 * 256;
#X obj 118 284 moses 128;
#X obj 118 433 +;
#X obj 169 383 +;
#X obj 211 317 sel 0;
#X obj 211 346 f;
#X obj 118 468 t a;
#X obj 118 129 t a a;
#X obj 272 82 loadbang;
#X msg 272 102 65536;
#X obj 272 130 t a a a a;
#X obj 289 157 * 0.25;
#X obj 340 180 * 0.75;
#X obj 169 258 * 0.5;
#X obj 118 16 inlet;
#X obj 118 504 outlet;
#X obj 430 195 sel 1;
#X obj 430 215 t b b;
#X msg 430 241 -1;
#X text 248 19 converts incoming number stream that wraps at 65536
to continuous stream;
#X obj 289 454 mod;
#X obj 329 469 << 24;
#X obj 329 428 loadbang;
#X msg 329 448 1;
#X obj 430 175 r \$0.connected;
#X connect 0 1 1 0;
#X connect 1 0 2 0;
#X connect 1 1 3 0;
#X connect 2 0 4 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 4 0 14 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 10 0;
#X connect 8 1 6 1;
#X connect 9 0 8 0;
#X connect 9 0 15 0;
#X connect 10 0 30 0;
#X connect 11 0 12 0;
#X connect 11 1 13 0;
#X connect 12 0 16 0;
#X connect 13 0 16 0;
#X connect 14 0 15 0;
#X connect 15 0 13 1;
#X connect 16 0 25 0;
#X connect 17 0 11 0;
#X connect 17 1 0 0;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 20 0 23 0;
#X connect 20 1 21 0;
#X connect 20 2 22 0;
#X connect 20 3 10 1;
#X connect 21 0 0 1;
#X connect 22 0 1 1;
#X connect 23 0 11 1;
#X connect 24 0 17 0;
#X connect 26 0 27 0;
#X connect 27 0 28 0;
#X connect 27 1 9 0;
#X connect 28 0 4 0;
#X connect 30 0 15 1;
#X connect 30 0 12 1;
#X connect 31 0 30 1;
#X connect 32 0 33 0;
#X connect 33 0 31 0;
#X connect 34 0 26 0;
#X restore 14 374 pd continuous_sequence;
#N canvas 511 315 365 277 offset_compensation 0;
#X obj 121 148 spigot 1;
#X obj 121 168 t a b;
#X msg 187 156 0;
#X msg 166 123 1;
#X obj 94 129 t a a;
#X obj 94 188 -;
#X obj 94 30 inlet;
#X obj 94 232 outlet;
#X obj 166 92 sel 1;
#X obj 94 76 spigot;
#X obj 139 51 t a a;
#X obj 139 31 r \$0.connected;
#X connect 0 0 1 0;
#X connect 1 0 5 1;
#X connect 1 1 2 0;
#X connect 2 0 0 1;
#X connect 3 0 0 1;
#X connect 4 0 5 0;
#X connect 4 1 0 0;
#X connect 5 0 7 0;
#X connect 6 0 9 0;
#X connect 8 0 3 0;
#X connect 9 0 4 0;
#X connect 10 0 9 1;
#X connect 10 1 8 0;
#X connect 11 0 10 0;
#X restore 14 501 pd offset_compensation;
#N canvas 0 50 450 300 out_of_order_counter 0;
#X obj 30 59 t a a;
#X obj 31 87 -;
#X obj 31 113 < 0;
#X obj 31 133 sel 1;
#X obj 31 179 f;
#X obj 31 199 + 1;
#X obj 112 118 sel 1;
#X msg 112 137 0;
#X obj 31 249 s \$0.outoforder;
#X msg 80 100 -1;
#X obj 30 36 inlet;
#X obj 112 97 r \$0.connected;
#X connect 0 0 1 1;
#X connect 0 1 1 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 4 1;
#X connect 5 0 8 0;
#X connect 6 0 7 0;
#X connect 6 0 9 0;
#X connect 7 0 4 1;
#X connect 7 0 8 0;
#X connect 9 0 1 1;
#X connect 10 0 0 0;
#X connect 11 0 6 0;
#X restore 61 448 pd out_of_order_counter;
#X obj 47 32 r \$0.on.off;
#X obj 14 84 t a a;
#X obj 41 105 list split 16;
#X obj 51 243 spigot;
#X obj 14 223 spigot;
#X obj 186 202 &&;
#X connect 0 0 10 0;
#X connect 1 0 20 0;
#X connect 1 1 11 0;
#X connect 2 0 4 0;
#X connect 2 1 3 0;
#X connect 3 0 4 1;
#X connect 4 0 13 0;
#X connect 5 0 2 0;
#X connect 7 0 14 0;
#X connect 7 3 15 0;
#X connect 7 4 6 0;
#X connect 10 0 17 0;
#X connect 11 0 19 0;
#X connect 11 1 21 0;
#X connect 12 0 21 1;
#X connect 13 0 7 0;
#X connect 14 0 9 0;
#X connect 16 0 10 1;
#X connect 17 0 1 0;
#X connect 17 1 18 0;
#X connect 18 0 12 0;
#X connect 19 0 8 0;
#X connect 20 0 5 0;
#X connect 21 0 19 1;
#X connect 21 0 20 1;
#X restore 546 22 pd receiver;
#N canvas 635 297 590 390 connection 0;
#X msg 119 228 disconnect;
#X obj 13 303 s \$0.to.udp;
#X obj 13 8 r \$0.on.off;
#X obj 13 31 sel 1 0;
#X obj 103 112 r \$0.bind.port;
#X obj 99 46 r \$0.peer.port;
#X obj 13 102 list prepend;
#X obj 99 82 r \$0.server;
#X msg 13 169 connect \$1 \$2 \$3;
#X obj 13 132 list append;
#X obj 13 75 f;
#X obj 329 127 s \$0.token.enable;
#X obj 370 83 s \$0.token.symbol;
#X connect 0 0 1 0;
#X connect 2 0 3 0;
#X connect 3 0 10 0;
#X connect 3 1 0 0;
#X connect 4 0 9 1;
#X connect 5 0 10 1;
#X connect 6 0 9 0;
#X connect 7 0 6 1;
#X connect 8 0 1 0;
#X connect 9 0 8 0;
#X connect 10 0 6 0;
#X restore 11 31 pd connection;
#N canvas 220 524 587 355 calculate.metrics 0;
#X obj 14 14 loadbang;
#X obj 14 34 samplerate~;
#X obj 14 54 s \$0.samplerate;
#X obj 410 214 r \$0.payload.length;
#X obj 410 234 + 16;
#X obj 410 254 s \$0.udp.packet.size;
#X obj 264 47 r \$0.samplerate;
#X obj 195 70 list prepend;
#X obj 195 90 /;
#X obj 230 96 r \$0.udp.packet.size;
#X obj 195 191 *;
#X obj 230 156 t b a;
#X obj 195 279 s \$0.bandwidth;
#X obj 230 116 + 20;
#X text 266 124 12 Bytes: IP HEADER;
#X text 266 138 8 Bytes: UDP HEADER;
#X obj 13 193 r \$0.on.off;
#X obj 13 260 f;
#X obj 49 259 + 1;
#X obj 13 281 s \$0.seconds;
#X obj 103 218 sel 1;
#X msg 103 238 0;
#X obj 13 233 metro 1000;
#X obj 13 213 t a a;
#X obj 195 209 * 8;
#X obj 195 232 / 1000;
#X obj 195 252 / 1000;
#X obj 431 38 r \$0.bitres;
#X obj 431 58 >> 3;
#X obj 412 113 *;
#X obj 431 78 t b a;
#X obj 412 153 *;
#X obj 444 130 t b a;
#X obj 412 176 s \$0.payload.length;
#X obj 412 16 r \$0.blocksize;
#X obj 445 110 r \$0.out.channels;
#X text 285 280 in Mbit/second;
#X obj 195 23 r \$0.blocksize;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 6 0 7 1;
#X connect 7 0 8 0;
#X connect 8 0 10 0;
#X connect 9 0 13 0;
#X connect 10 0 24 0;
#X connect 11 0 10 0;
#X connect 11 1 10 1;
#X connect 13 0 11 0;
#X connect 16 0 23 0;
#X connect 17 0 18 0;
#X connect 17 0 19 0;
#X connect 18 0 17 1;
#X connect 20 0 21 0;
#X connect 21 0 17 1;
#X connect 22 0 17 0;
#X connect 23 0 22 0;