Commit 943f7442 authored by Roman Haefeli's avatar Roman Haefeli
Browse files

jacktrip: refactor encoding of audio data

parent 883a558f
#N canvas 317 178 481 519 10;
#X obj 23 268 +~;
#X obj 23 240 lrshift~ -1;
#X text 107 240 MSB;
#X obj 24 23 inlet~ pad;
#X obj 240 178 switch~;
#X obj 23 471 tabwrite~ \$1.encbuffer;
#X obj 101 358 r \$1.blocksize;
#X obj 101 381 * 2;
#X msg 59 435 start \$1;
#X obj 59 409 f;
#X obj 240 102 r \$1.out.channels;
#X obj 59 326 r \$1.clock;
#X obj 240 126 > \$2;
#X obj 101 404 * \$2;
#X obj 23 85 netpd-sig-to-16bit~;
#X connect 0 0 5 0;
#X connect 1 0 0 0;
#X connect 3 0 14 0;
#X connect 6 0 7 0;
#X connect 7 0 13 0;
#X connect 8 0 5 0;
#X connect 9 0 8 0;
#X connect 10 0 12 0;
#X connect 11 0 9 0;
#X connect 12 0 4 0;
#X connect 13 0 9 1;
#X connect 14 0 1 0;
#X connect 14 1 0 1;
#N canvas 380 106 1119 618 10;
#N canvas 470 191 1119 618 10;
#X declare -path 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;
......@@ -694,8 +591,6 @@ to continuous stream;
#X connect 34 0 4 0;
#X restore 11 51 pd calculate.metrics;
#X obj 14 151 inlet~;
#X msg 138 372 blocksize \$1;
#X obj 53 396 netpd-tabdump16 \$0.inbuffer;
#X obj 609 50 netpd-tabwrite16 \$0.recvbuffer;
#N canvas 251 343 359 309 gui.stuff 0;
#X obj 20 208 t b a;
......@@ -728,39 +623,52 @@ to continuous stream;
#X restore 11 120 pd gui.stuff;
#X obj 271 3 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#N canvas 0 106 835 214 reblocked_input 0;
#X obj 17 22 inlet~;
#X obj 618 83 block~;
#X msg 618 57 set \$1 1 1;
#N canvas 478 240 564 423 reblocked_input 0;
#X obj 11 164 bang~;
#X obj 11 190 outlet;
#X obj 618 21 r \$0.blocksize;
#X obj 17 115 tabsend~ \$0.inbuffer.0;
#X obj 67 22 inlet~;
#X obj 117 22 inlet~;
#X obj 167 22 inlet~;
#X obj 67 95 tabsend~ \$0.inbuffer.1;
#X obj 118 75 tabsend~ \$0.inbuffer.2;
#X obj 167 55 tabsend~ \$0.inbuffer.3;
#X obj 277 22 inlet~;
#X obj 327 22 inlet~;
#X obj 377 22 inlet~;
#X obj 427 22 inlet~;
#X obj 277 115 tabsend~ \$0.inbuffer.4;
#X obj 327 95 tabsend~ \$0.inbuffer.5;
#X obj 378 75 tabsend~ \$0.inbuffer.6;
#X obj 427 55 tabsend~ \$0.inbuffer.7;
#X connect 0 0 6 0;
#X connect 2 0 1 0;
#X obj 386 52 r \$0.blocksize;
#X obj 386 75 * 2;
#X msg 386 103 set \$1 1 2;
#X obj 360 165 switch~;
#X obj 110 16 inlet~ pad;
#X obj 110 40 jacktrip-encode-channel \$0 0;
#X obj 11 213 mod 2;
#X obj 11 189 f;
#X obj 11 236 + 1;
#X obj 360 26 r \$0.connected;
#X obj 120 66 inlet~ pad;
#X obj 130 116 inlet~ pad;
#X obj 140 166 inlet~ pad;
#X obj 150 216 inlet~ pad;
#X obj 160 266 inlet~ pad;
#X obj 170 316 inlet~ pad;
#X obj 180 366 inlet~ pad;
#X obj 120 90 jacktrip-encode-channel \$0 1;
#X obj 130 140 jacktrip-encode-channel \$0 2;
#X obj 140 190 jacktrip-encode-channel \$0 3;
#X obj 150 240 jacktrip-encode-channel \$0 4;
#X obj 160 290 jacktrip-encode-channel \$0 5;
#X obj 170 340 jacktrip-encode-channel \$0 6;
#X obj 180 390 jacktrip-encode-channel \$0 7;
#X obj 11 305 outlet;
#X obj 11 259 t b a;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 5 0 2 0;
#X connect 7 0 10 0;
#X connect 8 0 11 0;
#X connect 9 0 12 0;
#X connect 13 0 17 0;
#X connect 14 0 18 0;
#X connect 15 0 19 0;
#X connect 16 0 20 0;
#X connect 5 0 6 0;
#X connect 7 0 9 0;
#X connect 8 0 7 0;
#X connect 9 0 26 0;
#X connect 10 0 4 0;
#X connect 11 0 18 0;
#X connect 12 0 19 0;
#X connect 13 0 20 0;
#X connect 14 0 21 0;
#X connect 15 0 22 0;
#X connect 16 0 23 0;
#X connect 17 0 24 0;
#X connect 26 0 25 0;
#X connect 26 1 8 1;
#X restore 14 204 pd reblocked_input _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _;
#X obj 65 151 inlet~;
......@@ -770,7 +678,6 @@ _ _ _ _ _ _;
#X obj 269 151 inlet~;
#X obj 320 151 inlet~;
#X obj 371 151 inlet~;
#X obj 138 351 r \$0.blocksize;
#N canvas 278 110 507 284 manage.buffers 0;
#X obj 15 11 r \$0.blocksize;
#X msg 15 35 resize \$1;
......@@ -823,52 +730,6 @@ _ _ _ _ _ _;
#X connect 23 0 24 0;
#X connect 24 0 13 0;
#X restore 11 71 pd manage.buffers;
#X obj 238 248 table \$0.inbuffer.0 128;
#X obj 238 268 table \$0.inbuffer.1 128;
#X obj 238 288 table \$0.inbuffer.2 128;
#X obj 238 308 table \$0.inbuffer.3 128;
#X obj 238 328 table \$0.inbuffer.4 128;
#X obj 238 348 table \$0.inbuffer.5 128;
#X obj 238 368 table \$0.inbuffer.6 128;
#X obj 238 388 table \$0.inbuffer.7 128;
#N canvas 0 50 336 248 iterate.channels 0;
#X obj 41 63 f;
#X obj 56 41 r \$0.out.channels;
#X obj 41 104 until;
#X obj 41 124 f;
#X obj 41 144 t a a;
#X obj 85 132 + 1;
#X obj 41 83 t a b;
#X msg 84 107 0;
#X obj 41 12 inlet;
#X obj 41 168 outlet;
#X connect 0 0 6 0;
#X connect 1 0 0 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 9 0;
#X connect 4 1 5 0;
#X connect 5 0 3 1;
#X connect 6 0 2 0;
#X connect 6 1 7 0;
#X connect 7 0 3 1;
#X connect 8 0 0 0;
#X restore 53 283 pd iterate.channels;
#N canvas 0 50 375 265 msg.box 0;
#X obj 17 14 inlet;
#X obj 17 75 outlet;
#X msg 17 42;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 33 483 pd msg.box;
#X obj 14 239 spigot 0;
#X obj 53 307 list prepend \$0;
#X msg 53 330 set \$1.inbuffer.\$2 \, bang;
#X obj 53 421 list prepend add2;
#X obj 53 441 list trim;
#X msg 33 461 bang \, set;
#X obj 14 259 t b b b;
#X obj 14 538 s \$0.clock;
#X obj 678 421 table \$0.recvbuffer 256;
#X obj 565 124 mod;
#X obj 584 206 array get \$0.recvbuffer;
......@@ -1436,7 +1297,7 @@ _ _ _ _ _;
#X restore 514 96 pd peerport;
#X obj 65 56 route start stop outchannels blocksize queue server;
#X obj 393 56 route portoffset bindport peerport status;
#N canvas 619 43 416 280 outchannels 0;
#N canvas 619 106 416 280 outchannels 0;
#X obj 34 35 inlet;
#X obj 34 151 f;
#X obj 34 190 change -1;
......@@ -1664,7 +1525,7 @@ _ _ _ _ _;
#X connect 13 0 10 0;
#X connect 14 0 10 0;
#X restore 912 272 pd status_and_errors;
#N canvas 958 209 454 490 update_queuestate 1;
#N canvas 958 209 454 490 update_queuestate 0;
#X obj 13 15 inlet;
#X obj 86 339 outlet;
#X obj 13 70 tabread \$0.queuestate;
......@@ -1796,7 +1657,6 @@ _ _ _ _ _;
#X obj 416 306 r \$0.skip;
#X obj 283 541 s \$0.connected;
#X obj 603 293 r \$0.connected;
#X obj 73 240 r \$0.connected;
#X msg 214 44 \; \$1.out.channels 2 \; \$1.port.offset 0 \; \$1.bitres
16 \; \$1.blocksize 128 \; \$1.queue 4 \; \$1.server telematic.zhdk.ch
;
......@@ -1830,7 +1690,7 @@ _ _ _ _ _;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 14 0 11 1;
#X restore 9 95 pd token;
#X restore 11 95 pd token;
#X obj 11 11 declare -path iemnet;
#X obj 678 442 table \$0.queuebuffer 6.5536e+06;
#X text 874 441 4096 * 8 * 200;
......@@ -1838,78 +1698,185 @@ _ _ _ _ _;
#X obj 883 134 s \$0.DEBUG;
#X obj 883 101 tgl 20 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 239 248 table \$0.encbuffer 32768;
#X text 292 271 8 * 4096 * 2;
#X text 227 283 max channels * max blocksize * 16bit;
#X obj 14 227 s \$0.clock;
#X obj 14 261 r \$0.clock;
#X obj 14 447 array get \$0.encbuffer;
#X obj 14 401 t b a;
#X msg 14 424 0;
#X obj 14 510 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 0 2 87 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 481 pd prepend_header;
#X obj 45 325 r \$0.out.channels;
#X obj 46 352 r \$0.blocksize;
#X obj 14 324 f;
#X obj 14 352 *;
#X obj 14 377 * 2;
#X connect 0 0 2 0;
#X connect 0 2 65 0;
#X connect 1 0 0 0;
#X connect 3 0 4 0;
#X connect 4 0 90 0;
#X connect 6 0 80 0;
#X connect 6 1 12 0;
#X connect 9 0 15 0;
#X connect 10 0 11 0;
#X connect 11 0 38 0;
#X connect 14 0 4 0;
#X connect 15 0 35 0;
#X connect 16 0 15 1;
#X connect 17 0 15 2;
#X connect 18 0 15 3;
#X connect 19 0 15 4;
#X connect 20 0 15 5;
#X connect 21 0 15 6;
#X connect 22 0 15 7;
#X connect 23 0 10 0;
#X connect 33 0 36 0;
#X connect 34 0 5 0;
#X connect 35 0 41 0;
#X connect 36 0 37 0;
#X connect 37 0 11 0;
#X connect 38 0 39 0;
#X connect 39 0 34 0;
#X connect 40 0 34 0;
#X connect 41 0 42 0;
#X connect 41 1 40 0;
#X connect 41 2 33 0;
#X connect 44 0 78 0;
#X connect 45 0 49 0;
#X connect 46 0 49 1;
#X connect 47 0 46 1;
#X connect 48 1 45 0;
#X connect 48 2 46 0;
#X connect 49 0 50 0;
#X connect 51 0 12 0;
#X connect 52 0 51 0;
#X connect 53 0 56 0;
#X connect 54 0 55 0;
#X connect 55 0 59 0;
#X connect 56 0 55 1;
#X connect 57 0 58 0;
#X connect 58 0 55 1;
#X connect 58 0 59 1;
#X connect 59 0 64 0;
#X connect 60 0 79 0;
#X connect 60 1 61 0;
#X connect 61 0 59 1;
#X connect 62 0 65 0;
#X connect 63 0 62 1;
#X connect 64 0 60 0;
#X connect 65 0 66 0;
#X connect 65 1 67 0;
#X connect 65 2 68 0;
#X connect 65 3 69 0;
#X connect 65 4 70 0;
#X connect 65 5 71 0;
#X connect 65 6 72 0;
#X connect 65 7 73 0;
#X connect 74 0 75 0;
#X connect 77 0 76 0;
#X connect 78 0 48 0;
#X connect 79 0 62 0;
#X connect 80 0 53 0;
#X connect 80 1 44 0;
#X connect 80 2 81 0;
#X connect 84 0 44 1;
#X connect 85 0 64 1;
#X connect 86 0 59 0;
#X connect 88 0 57 0;
#X connect 89 0 35 1;
#X connect 97 0 96 0;
#X connect 4 0 67 0;
#X connect 5 0 58 0;
#X connect 5 1 9 0;
#X connect 8 0 12 0;
#X connect 11 0 4 0;
#X connect 12 0 78 0;
#X connect 13 0 12 1;
#X connect 14 0 12 2;
#X connect 15 0 12 3;
#X connect 16 0 12 4;
#X connect 17 0 12 5;
#X connect 18 0 12 6;
#X connect 19 0 12 7;
#X connect 22 0 56 0;
#X connect 23 0 27 0;
#X connect 24 0 27 1;
#X connect 25 0 24 1;
#X connect 26 1 23 0;
#X connect 26 2 24 0;
#X connect 27 0 28 0;
#X connect 29 0 9 0;
#X connect 30 0 29 0;
#X connect 31 0 34 0;
#X connect 32 0 33 0;
#X connect 33 0 37 0;
#X connect 34 0 33 1;
#X connect 35 0 36 0;
#X connect 36 0 33 1;
#X connect 36 0 37 1;
#X connect 37 0 42 0;
#X connect 38 0 57 0;
#X connect 38 1 39 0;
#X connect 39 0 37 1;
#X connect 40 0 43 0;
#X connect 41 0 40 1;
#X connect 42 0 38 0;
#X connect 43 0 44 0;
#X connect 43 1 45 0;
#X connect 43 2 46 0;
#X connect 43 3 47 0;
#X connect 43 4 48 0;
#X connect 43 5 49 0;
#X connect 43 6 50 0;
#X connect 43 7 51 0;
#X connect 52 0 53 0;
#X connect 55 0 54 0;
#X connect 56 0 26 0;
#X connect 57 0 40 0;
#X connect 58 0 31 0;
#X connect 58 1 22 0;
#X connect 58 2 59 0;
#X connect 62 0 22 1;
#X connect 63 0 42 1;
#X connect 64 0 37 0;
#X connect 66 0 35 0;
#X connect 74 0 73 0;
#X connect 79 0 87 0;
#X connect 80 0 84 0;
#X connect 81 0 82 0;
#X connect 81 1 80 1;
#X connect 82 0 80 0;
#X connect 84 0 83 0;
#X connect 85 0 87 1;
#X connect 86 0 88 1;
#X connect 87 0 88 0;
#X connect 88 0 89 0;
#X connect 89 0 81 0;
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment