tpf-client-link.pd 20 KB
Newer Older
1
#N canvas 79 441 1303 489 10;
Roman Haefeli's avatar
Roman Haefeli committed
2
#X obj 529 71 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
3
-1;
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#N canvas 205 438 442 403 detect.link.peer 0;
#X obj 12 143 text search \$1.mylinks 1;
#X obj 12 118 f;
#X obj 12 163 sel -1;
#X msg 12 227 0;
#X msg 45 230 1;
#X obj 45 343 s \$0.link;
#X obj 119 255 s \$0.peer;
#X obj 45 184 t b a;
#X obj 119 212 text get \$1.mylinks;
#X msg 119 232 \$1;
#X obj 45 292 t a a;
#X obj 17 201 r \$0.reset;
#X obj 39 118 r \$0.linkID;
#X obj 72 314 outlet;
#X obj 45 264 change -1;
#X obj 12 78 sel 1;
#X obj 224 84 sel 0;
#X obj 224 104 s \$0.reset;
#X obj 12 42 t a a;
24
#X obj 12 22 r \$1.link.connect;
25
#X connect 0 0 2 0;
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 2 1 7 0;
#X connect 3 0 14 0;
#X connect 4 0 14 0;
#X connect 7 0 4 0;
#X connect 7 1 8 0;
#X connect 8 0 9 0;
#X connect 9 0 6 0;
#X connect 10 0 5 0;
#X connect 10 1 13 0;
#X connect 11 0 3 0;
#X connect 12 0 1 1;
#X connect 14 0 10 0;
40
41
#X connect 15 0 1 0;
#X connect 16 0 17 0;
42
43
44
#X connect 18 0 15 0;
#X connect 18 1 16 0;
#X connect 19 0 18 0;
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#X restore 16 84 pd detect.link.peer;
#N canvas 247 142 450 300 get.peer.data 0;
#X obj 21 38 sel 1;
#X obj 21 58 f;
#X obj 53 59 r \$0.peer;
#X obj 21 90 text search \$1.clients 0;
#X obj 21 110 sel -1;
#X msg 21 242 peer data access failed;
#X obj 21 262 s \$0.error;
#X obj 54 131 text get \$1.clients;
#X obj 54 151 unpack f s f s;
#X obj 135 173 s \$0.peer.ip;
#X obj 108 196 s \$0.peer.master;
#X obj 81 217 s \$0.peer.name;
#X obj 21 18 inlet;
Roman Haefeli's avatar
Roman Haefeli committed
60
#X connect 0 0 1 0;
61
62
#X connect 1 0 3 0;
#X connect 2 0 1 1;
Roman Haefeli's avatar
Roman Haefeli committed
63
64
#X connect 3 0 4 0;
#X connect 4 0 5 0;
65
#X connect 4 1 7 0;
66
#X connect 5 0 6 0;
67
68
69
70
71
72
#X connect 7 0 8 0;
#X connect 8 1 11 0;
#X connect 8 2 10 0;
#X connect 8 3 9 0;
#X connect 12 0 0 0;
#X restore 16 104 pd get.peer.data;
73
#N canvas 277 523 937 517 gui.code 1;
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#X obj 11 164 s \$0.client.label;
#X msg 11 145 label \$1;
#X obj 11 22 r \$0.peer.name;
#X obj 11 42 list append;
#X obj 91 41 r \$0.peer.ip;
#X obj 91 61 list prepend;
#X obj 179 28 loadbang;
#X obj 179 48 32;
#X obj 179 68 makefilename %c;
#X msg 91 80 symbol \$1(\$2);
#X msg 11 84 symbol \$1\$2;
#X obj 744 19 r \$0.reset;
#X obj 811 18 r \$0.link;
#X obj 811 38 sel 0;
#X obj 744 60 s \$0.display.reset;
#X obj 84 107 r \$0.display.reset;
#X msg 84 127 symbol empty;
#X obj 196 249 s \$0.glitch.label;
#X obj 227 269 s \$0.ooo.label;
#X obj 201 160 r \$0.display.reset;
#X msg 201 180 label empty;
#X obj 334 18 r \$0.jacktrip.stats;
#X obj 334 38 route dropped_count;
#X obj 334 60 makefilename %4d;
#X msg 334 80 label \$1;
#X obj 334 100 s \$0.dropped.label;
#X obj 173 228 s \$0.dropped.label;
#X msg 514 178 0;
#X obj 464 18 r \$0.jacktrip.stats;
#X obj 464 60 makefilename %4d;
#X msg 464 80 label \$1;
#X obj 594 18 r \$0.jacktrip.stats;
#X obj 594 60 makefilename %4d;
#X msg 594 80 label \$1;
#X obj 464 38 route glitch_count;
#X obj 464 100 s \$0.glitch.label;
#X obj 594 38 route ooo_count;
#X obj 594 100 s \$0.ooo.label;
Roman Haefeli's avatar
Roman Haefeli committed
112
113
114
#X obj 591 210 r \$0.from.jacktrip;
#X obj 591 230 route STATISTICS;
#X obj 591 250 s \$0.jacktrip.stats;
Roman Haefeli's avatar
Roman Haefeli committed
115
116
117
118
119
120
121
#X obj 360 183 r \$0.from.jacktrip;
#X obj 360 203 route STATUS;
#X obj 360 223 route inchannels;
#X obj 360 243 makefilename %4d;
#X msg 360 263 label \$1;
#X obj 360 283 s \$0.channels.label;
#X obj 240 289 s \$0.channels.label;
122
#N canvas 653 155 837 719 tx.button 0;
Roman Haefeli's avatar
Roman Haefeli committed
123
124
125
#X obj 47 389 s \$0.tx.switch.r;
#X msg 47 360 color \$1 \$2 \$3;
#X msg 47 308 0 0 0;
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#X text 599 47 0 = reset;
#X obj 183 189 sel 1;
#X msg 183 210 1;
#X msg 212 210 0;
#X obj 158 238 spigot;
#X obj 158 163 r \$0.blink.clock;
#X obj 158 259 sel 0 1;
#X msg 322 210 0;
#X obj 268 238 spigot;
#X obj 268 163 r \$0.blink.clock;
#X obj 268 259 sel 0 1;
#X msg 293 210 1;
#X obj 293 189 sel 2;
#X text 600 125 4 = aborted;
Roman Haefeli's avatar
Roman Haefeli committed
140
#X obj 47 60 r \$0.udp.link.status;
141
#X obj 242 41 r \$0.display.reset;
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
#X text 599 67 1 = waiting for peer (stun);
#X text 599 87 2 = waiting for user (stun);
#X text 601 108 3 = connected (stun);
#X text 600 146 5 = waiting for peer (server);
#X text 601 165 6 = waiting for user (server);
#X text 601 186 7 = connected (server);
#X obj 47 88 t a a a a a;
#X obj 47 136 select 0 3 4 7;
#X msg 226 314 224 224 224;
#X msg 95 310 128 0 255;
#X msg 308 316 0 0 255;
#X msg 442 210 0;
#X obj 388 238 spigot;
#X obj 388 163 r \$0.blink.clock;
#X obj 388 259 sel 0 1;
#X msg 413 210 1;
#X msg 545 210 0;
#X obj 491 238 spigot;
#X obj 491 163 r \$0.blink.clock;
#X obj 491 259 sel 0 1;
#X msg 516 210 1;
#X obj 413 189 sel 5;
#X obj 516 189 sel 6;
#X floatatom 256 82 5 0 0 0 - - -, f 5;
#X msg 155 310 0 255 0;
#X msg 367 316 255 255 0;
#X obj 43 443 r \$0.tx.switch.s;
#X obj 71 466 r \$0.udp.link.status;
#X obj 43 466 f;
#X obj 43 489 sel 0;
#X obj 43 637 del 300;
#X msg 81 612 stop;
#X obj 43 522 f;
#X obj 128 528 + 1;
#X obj 43 544 t a a;
#X obj 43 568 sel 0 1;
#X obj 62 590 t b b b;
#X msg 147 565 0;
#X obj 43 658 t b b;
#X obj 112 660 s \$0.initiate.stun;
#X obj 43 687 s \$0.initiate.server;
Roman Haefeli's avatar
Roman Haefeli committed
183
184
#X connect 1 0 0 0;
#X connect 2 0 1 0;
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
#X connect 4 0 5 0;
#X connect 4 1 6 0;
#X connect 5 0 7 1;
#X connect 6 0 7 1;
#X connect 7 0 9 0;
#X connect 8 0 7 0;
#X connect 9 0 2 0;
#X connect 9 1 28 0;
#X connect 10 0 11 1;
#X connect 11 0 13 0;
#X connect 12 0 11 0;
#X connect 13 0 2 0;
#X connect 13 1 43 0;
#X connect 14 0 11 1;
#X connect 15 0 14 0;
#X connect 15 1 10 0;
#X connect 17 0 25 0;
Roman Haefeli's avatar
Roman Haefeli committed
202
#X connect 18 0 2 0;
203
204
205
206
207
#X connect 25 0 26 0;
#X connect 25 1 4 0;
#X connect 25 2 15 0;
#X connect 25 3 40 0;
#X connect 25 4 41 0;
208
#X connect 26 0 2 0;
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
#X connect 26 1 28 0;
#X connect 26 2 27 0;
#X connect 26 3 29 0;
#X connect 27 0 1 0;
#X connect 28 0 1 0;
#X connect 29 0 1 0;
#X connect 30 0 31 1;
#X connect 31 0 33 0;
#X connect 32 0 31 0;
#X connect 33 0 2 0;
#X connect 33 1 29 0;
#X connect 34 0 31 1;
#X connect 35 0 36 1;
#X connect 36 0 38 0;
#X connect 37 0 36 0;
#X connect 38 0 2 0;
#X connect 38 1 44 0;
#X connect 39 0 36 1;
#X connect 40 0 34 0;
#X connect 40 1 30 0;
#X connect 41 0 39 0;
#X connect 41 1 35 0;
#X connect 42 0 25 0;
#X connect 43 0 1 0;
#X connect 44 0 1 0;
#X connect 45 0 47 0;
#X connect 46 0 47 1;
#X connect 47 0 48 0;
#X connect 48 0 51 0;
#X connect 49 0 57 0;
#X connect 50 0 49 0;
#X connect 51 0 53 0;
#X connect 52 0 51 1;
#X connect 53 0 54 0;
#X connect 53 1 52 0;
#X connect 54 0 49 0;
#X connect 54 1 55 0;
#X connect 55 0 58 0;
#X connect 55 1 50 0;
#X connect 55 2 56 0;
#X connect 56 0 51 1;
#X connect 57 0 59 0;
#X connect 57 1 56 0;
Roman Haefeli's avatar
Roman Haefeli committed
252
253
254
255
256
257
#X restore 40 338 pd tx.button;
#X obj 805 138 metro 500;
#X obj 805 159 == 0;
#X obj 805 180 t a a;
#X obj 805 110 loadbang;
#X obj 805 204 s \$0.blink.clock;
258
259
260
261
262
#X obj 514 127 r \$0.udp.link.status;
#X obj 514 148 sel 3;
#X obj 446 334 r \$0.from.jacktrip;
#X obj 446 354 route STATUS;
#X obj 446 375 route receiving;
263
#N canvas 625 406 491 361 rx.button 0;
264
265
266
267
#X obj 16 14 r \$0.from.jacktrip;
#X obj 16 34 route STATUS;
#X obj 16 55 route receiving;
#X obj 16 76 sel 0 1;
268
269
270
271
272
273
274
275
276
277
#X msg 113 194 0 0 255;
#X obj 16 269 s \$0.rx.switch.r;
#X msg 16 246 color \$1 \$2 \$3;
#X obj 187 143 r \$0.display.reset;
#X msg 187 192 0 0 0;
#X obj 205 165 loadbang;
#X obj 31 103 r \$0.udp.link.status;
#X obj 16 128 f;
#X obj 16 155 sel 0;
#X obj 86 140 sel 0;
278
#X msg 16 190 224 224 224;
279
280
281
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
282
#X connect 3 0 11 0;
283
#X connect 3 1 4 0;
284
285
286
287
288
289
290
291
292
293
294
#X connect 4 0 6 0;
#X connect 6 0 5 0;
#X connect 7 0 8 0;
#X connect 8 0 6 0;
#X connect 9 0 8 0;
#X connect 10 0 11 1;
#X connect 10 0 13 0;
#X connect 11 0 12 0;
#X connect 12 1 14 0;
#X connect 13 0 8 0;
#X connect 14 0 6 0;
295
#X restore 44 386 pd rx.button;
296
297
298
299
300
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 10 0;
#X connect 4 0 5 0;
#X connect 5 0 9 0;
301
#X connect 6 0 7 0;
302
303
304
305
#X connect 7 0 8 0;
#X connect 8 0 5 1;
#X connect 9 0 3 1;
#X connect 10 0 1 0;
306
#X connect 11 0 14 0;
307
#X connect 12 0 13 0;
308
#X connect 13 0 14 0;
309
#X connect 15 0 16 0;
310
311
312
313
314
315
316
#X connect 16 0 1 0;
#X connect 19 0 20 0;
#X connect 20 0 17 0;
#X connect 20 0 18 0;
#X connect 20 0 26 0;
#X connect 20 0 47 0;
#X connect 21 0 22 0;
317
#X connect 22 0 23 0;
318
#X connect 23 0 24 0;
319
#X connect 24 0 25 0;
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
#X connect 27 0 23 0;
#X connect 27 0 29 0;
#X connect 27 0 32 0;
#X connect 27 0 44 0;
#X connect 28 0 34 0;
#X connect 29 0 30 0;
#X connect 30 0 35 0;
#X connect 31 0 36 0;
#X connect 32 0 33 0;
#X connect 33 0 37 0;
#X connect 34 0 29 0;
#X connect 36 0 32 0;
#X connect 38 0 39 0;
#X connect 39 0 40 0;
#X connect 41 0 42 0;
#X connect 42 0 43 0;
Roman Haefeli's avatar
Roman Haefeli committed
336
337
#X connect 43 0 44 0;
#X connect 44 0 45 0;
338
#X connect 45 0 46 0;
Roman Haefeli's avatar
Roman Haefeli committed
339
340
#X connect 49 0 50 0;
#X connect 50 0 51 0;
341
342
343
#X connect 51 0 53 0;
#X connect 51 1 50 1;
#X connect 52 0 49 0;
Roman Haefeli's avatar
Roman Haefeli committed
344
#X connect 54 0 55 0;
345
346
347
#X connect 55 0 27 0;
#X connect 56 0 57 0;
#X connect 57 0 58 0;
348
#X restore 16 184 pd gui.code;
Roman Haefeli's avatar
Roman Haefeli committed
349
350
#X obj 529 110 s \$0.reset;
#X obj 540 89 r \$1.reset;
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
#N canvas 178 181 450 300 persistent.linkID 0;
#X obj 26 82 sel -1;
#X obj 59 104 list prepend 0;
#X obj 59 124 route 0 1;
#X obj 59 146 t a a b;
#X msg 168 146 1;
#X obj 178 169 loadbang;
#X obj 178 209 + 1;
#X obj 109 236 list prepend;
#X obj 26 14 r \$1.assign.mylink;
#X obj 109 257 s \$1.assign.mylink;
#X obj 234 23 loadbang;
#X msg 234 67 -1;
#X msg 292 65 0;
#X obj 26 41 route \$2;
#X obj 178 189 f \$2;
#X obj 292 25 r \$0.reset;
#X obj 59 213 s \$0.linkID;
#X connect 0 1 1 0;
#X connect 1 0 2 0;
371
#X connect 2 0 3 0;
372
373
374
375
376
377
378
379
380
#X connect 2 1 7 0;
#X connect 3 0 16 0;
#X connect 3 1 0 1;
#X connect 3 2 4 0;
#X connect 4 0 1 1;
#X connect 5 0 14 0;
#X connect 6 0 7 1;
#X connect 7 0 9 0;
#X connect 8 0 13 0;
381
#X connect 10 0 11 0;
382
383
384
385
386
387
388
389
#X connect 11 0 0 1;
#X connect 11 0 16 0;
#X connect 12 0 1 1;
#X connect 13 0 0 0;
#X connect 14 0 6 0;
#X connect 15 0 12 0;
#X connect 15 0 11 0;
#X restore 16 64 pd persistent.linkID;
390
#X obj 20 20 cnv 32 953 32 empty empty empty 8 16 0 20 -262144 -262144
391
392
393
0;
#X obj 55 20 cnv 32 311 32 empty \$0.client.label empty 8 16 0 20 -1
-262144 0;
394
#X obj 477 20 cnv 32 70 32 empty \$0.dropped.label empty 8 16 0 20
395
-1 -262144 0;
396
#X obj 550 20 cnv 32 70 32 empty \$0.glitch.label empty 8 16 0 20 -1
397
-262144 0;
398
#X obj 623 20 cnv 32 70 32 empty \$0.ooo.label empty 8 16 0 20 -1 -262144
399
0;
400
401
402
#X obj 15 284 jacktrip . . . . . . . . . . . . . .;
#X obj 228 262 r \$0.to.jacktrip;
#X obj 228 304 s \$0.from.jacktrip;
Roman Haefeli's avatar
Roman Haefeli committed
403
404
405
406
407
408
409
#X obj 297 111 s \$0.to.jacktrip;
#X msg 297 90 status;
#X obj 297 135 r \$0.from.jacktrip;
#X obj 297 155 route STATUS;
#X obj 297 176 print STATUS;
#X msg 353 88 start;
#X msg 404 97 stop;
410
#N canvas 148 299 855 665 jacktrip.start.stop 0;
Roman Haefeli's avatar
Roman Haefeli committed
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
#X obj 107 136 r \$0.peer.port;
#X obj 25 157 pack f f;
#X obj 107 157 r \$0.bind.port;
#X obj 107 177 r \$0.peer.ip;
#X obj 25 177 list prepend;
#X obj 25 375 s \$0.to.jacktrip;
#X obj 315 257 s \$0.to.jacktrip;
#X obj 315 131 r \$0.link;
#X obj 315 153 sel 0;
#X msg 315 238 stop;
#X obj 533 129 r \$0.from.jacktrip;
#X obj 533 149 route STATUS;
#X obj 315 194 f;
#X obj 25 136 f;
#X obj 315 216 sel 1;
#X obj 111 202 r \$0.linkID;
#X obj 111 222 + 4464;
#X obj 25 233 list append;
429
430
431
432
433
434
#X obj 428 30 r \$1.queue;
#X obj 324 33 r \$1.channels;
#X obj 496 29 r \$1.blocksize;
#X msg 324 53 outchannels \$1;
#X msg 428 50 queue \$1;
#X obj 324 83 s \$0.to.jacktrip;
Roman Haefeli's avatar
Roman Haefeli committed
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
#X msg 25 324 start;
#X msg 496 49 blocksize \$1;
#X obj 25 20 r \$0.udp.link.status;
#X msg 72 325 server \$1 \, peerport \$2 \, bindport \$3;
#X obj 533 268 s \$0.udp.link.status;
#X obj 25 41 sel 3;
#X obj 533 215 sel 0;
#X msg 533 240 4;
#X obj 25 283 t b a;
#X text 67 283 peer ip \, peer port \, bind port \, server port;
#X obj 352 301 r \$0.tx.switch.s;
#X obj 380 324 r \$0.udp.link.status;
#X obj 352 324 f;
#X obj 576 541 s \$0.to.jacktrip;
#X msg 576 522 stop;
450
451
#X obj 549 608 s \$0.udp.link.status;
#X msg 549 586 0;
Roman Haefeli's avatar
Roman Haefeli committed
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
#X obj 549 500 t b b;
#X obj 352 371 t b b;
#X obj 352 586 s \$1.send;
#X obj 367 497 r \$0.peer;
#X obj 352 519 f;
#X obj 397 517 r \$0.linkID;
#X obj 352 540 pack f f;
#X obj 594 381 r \$0.linkID;
#X msg 594 401 set /\$1;
#X obj 575 315 r \$1.receive;
#X obj 575 422 routeOSC /__;
#X obj 575 339 routeOSC /*;
#X msg 352 562 /\$1/tpf/requeststop/\$2;
#X obj 575 359 routeOSC /tpf/requeststop;
#X obj 352 347 sel 1 3 4;
467
468
#X obj 552 189 tgl 20 0 empty empty empty 17 7 0 10 -204786 -1 -1 0
1;
469
#X obj 549 565 del 0;
470
471
#X obj 533 169 route connected;
#X connect 0 0 13 1;
Roman Haefeli's avatar
Roman Haefeli committed
472
#X connect 1 0 4 0;
Roman Haefeli's avatar
Roman Haefeli committed
473
#X connect 2 0 1 1;
Roman Haefeli's avatar
Roman Haefeli committed
474
#X connect 3 0 4 1;
475
#X connect 4 0 17 0;
Roman Haefeli's avatar
Roman Haefeli committed
476
#X connect 7 0 8 0;
477
#X connect 8 0 12 0;
Roman Haefeli's avatar
Roman Haefeli committed
478
479
#X connect 9 0 6 0;
#X connect 10 0 11 0;
480
481
482
483
484
485
486
487
488
489
#X connect 11 0 58 0;
#X connect 12 0 14 0;
#X connect 13 0 1 0;
#X connect 14 0 9 0;
#X connect 15 0 16 0;
#X connect 16 0 17 1;
#X connect 17 0 32 0;
#X connect 18 0 22 0;
#X connect 19 0 21 0;
#X connect 20 0 25 0;
Roman Haefeli's avatar
Roman Haefeli committed
490
#X connect 21 0 23 0;
491
492
493
494
495
496
497
498
499
500
501
502
503
504
#X connect 22 0 23 0;
#X connect 24 0 5 0;
#X connect 25 0 23 0;
#X connect 26 0 29 0;
#X connect 27 0 5 0;
#X connect 29 0 13 0;
#X connect 30 0 31 0;
#X connect 31 0 28 0;
#X connect 32 0 24 0;
#X connect 32 1 27 0;
#X connect 34 0 36 0;
#X connect 35 0 36 1;
#X connect 36 0 55 0;
#X connect 38 0 37 0;
Roman Haefeli's avatar
Roman Haefeli committed
505
#X connect 40 0 39 0;
506
507
508
509
510
511
#X connect 41 0 57 0;
#X connect 41 1 38 0;
#X connect 42 0 45 0;
#X connect 42 1 41 0;
#X connect 44 0 45 1;
#X connect 45 0 47 0;
Roman Haefeli's avatar
Roman Haefeli committed
512
#X connect 46 0 47 1;
513
514
515
516
517
#X connect 47 0 53 0;
#X connect 48 0 49 0;
#X connect 49 0 51 0;
#X connect 50 0 52 0;
#X connect 51 0 41 0;
Roman Haefeli's avatar
Roman Haefeli committed
518
519
#X connect 52 0 54 0;
#X connect 53 0 43 0;
520
521
522
523
524
525
526
527
#X connect 54 0 51 0;
#X connect 55 0 42 0;
#X connect 55 1 42 0;
#X connect 55 2 42 0;
#X connect 57 0 40 0;
#X connect 58 0 12 1;
#X connect 58 0 30 0;
#X connect 58 0 56 0;
528
#X restore 16 164 pd jacktrip.start.stop;
529
530
#X obj 404 20 cnv 32 70 32 empty \$0.channels.label empty 8 16 0 20
-1 -262144 0;
531
#X obj 16 234 adc~ 1 2 3 4 5 6 7 8;
Roman Haefeli's avatar
Roman Haefeli committed
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
#N canvas 178 237 307 328 set.out.channels 0;
#X obj 31 25 loadbang;
#X msg 31 45 8;
#X obj 48 87 until;
#X obj 48 107 f;
#X obj 48 127 + 1;
#X obj 48 147 t a a;
#N canvas 0 43 327 184 msgbox 0;
#X obj 42 21 inlet;
#X msg 42 41;
#X obj 42 61 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X restore 31 256 pd msgbox;
#X msg 31 229 bang \, set;
#X msg 125 204 add2 set;
#X obj 100 121 f \$2;
#X obj 100 141 * 8;
#X obj 48 167 +;
#X msg 48 190 add2 \$1;
#X obj 31 65 t b a b b;
#X obj 31 276 outlet;
#X connect 0 0 1 0;
#X connect 1 0 13 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 11 0;
#X connect 5 1 3 1;
#X connect 6 0 14 0;
#X connect 7 0 6 0;
#X connect 8 0 6 0;
#X connect 9 0 10 0;
#X connect 10 0 11 1;
#X connect 11 0 12 0;
#X connect 12 0 6 0;
#X connect 13 0 7 0;
#X connect 13 1 2 0;
#X connect 13 2 9 0;
#X connect 13 3 8 0;
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
#X restore 384 234 pd set.out.channels;
#X obj 696 20 tpf-client-outchannel \$0 \$2 0;
#X obj 433 416 dac~ 1 2 3 4 5 6 7 8;
#X obj 433 253 r~ \$0.channel.0;
#X obj 449 273 r~ \$0.channel.1;
#X obj 466 293 r~ \$0.channel.2;
#X obj 483 313 r~ \$0.channel.3;
#X obj 499 333 r~ \$0.channel.4;
#X obj 516 353 r~ \$0.channel.5;
#X obj 533 373 r~ \$0.channel.6;
#X obj 550 393 r~ \$0.channel.7;
#X obj 15 464 s~ \$0.channel.0;
#X obj 41 444 s~ \$0.channel.1;
#X obj 68 424 s~ \$0.channel.2;
#X obj 94 404 s~ \$0.channel.3;
#X obj 121 384 s~ \$0.channel.4;
#X obj 148 364 s~ \$0.channel.5;
#X obj 174 344 s~ \$0.channel.6;
#X obj 201 324 s~ \$0.channel.7;
#X obj 731 20 tpf-client-outchannel \$0 \$2 1;
#X obj 766 20 tpf-client-outchannel \$0 \$2 2;
#X obj 801 20 tpf-client-outchannel \$0 \$2 3;
#X obj 836 20 tpf-client-outchannel \$0 \$2 4;
#X obj 871 20 tpf-client-outchannel \$0 \$2 5;
#X obj 906 20 tpf-client-outchannel \$0 \$2 6;
#X obj 941 20 tpf-client-outchannel \$0 \$2 7;
598
#X obj 20 20 tpf-client-button32x32 \$0.tx.switch.s \$0.tx.switch.r
Roman Haefeli's avatar
Roman Haefeli committed
599
;
600
#X obj 369 20 tpf-client-button32x32 \$0.rx.switch.s \$0.rx.switch.r
Roman Haefeli's avatar
Roman Haefeli committed
601
602
603
604
605
;
#X obj 828 140 loadbang;
#X obj 828 214 s \$0.udp.link.status;
#X msg 828 191 0;
#X obj 836 162 r \$0.reset;
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
#N canvas 606 101 604 759 negotiate.token 0;
#X restore 16 144 pd negotiate.token;
#N canvas 606 101 604 759 negotiate.port 1;
#X obj 10 34 r \$1.receive;
#X obj 10 78 routeOSC /tpf/setpeerport;
#X obj 10 112 routeOSC /__;
#X obj 147 21 r \$0.linkID;
#X msg 147 41 set /\$1;
#X obj 37 155 s \$0.peer.port;
#X obj 264 17 r \$1.receive;
#X obj 264 84 routeOSC /__;
#X obj 264 61 routeOSC /tpf/requestpeerport;
#X obj 9 690 s \$1.send;
#X obj 64 509 r \$0.peer;
#X obj 49 531 f;
#X obj 94 529 r \$0.linkID;
#X obj 49 552 pack f f;
#X obj 238 568 random 28232;
#X obj 238 588 + 32768;
#X obj 238 608 s \$0.bind.port;
#X obj 49 583 list append;
#X obj 112 562 r \$0.bind.port;
#X obj 264 108 b;
#X msg 49 653 /\$1/tpf/setpeerport/\$2 \$3;
#X obj 9 608 list append;
#X msg 9 630 /\$1/tpf/requestpeerport/\$2;
#X obj 10 58 routeOSC /*;
#X obj 264 41 routeOSC /*;
#N canvas 750 196 301 279 random.seed 0;
#X obj 35 24 loadbang;
#X obj 34 96 realtime;
#X obj 35 66 t b b b;
#X obj 121 128 until;
#X obj 121 148 234.235;
#X obj 121 168 pow 9.2348;
#X obj 34 116 * 1239.29;
#X obj 34 136 int;
#X obj 34 156 mod 9877;
#X obj 34 197 outlet;
#X msg 121 105 143726;
#X msg 34 177 seed \$1;
#X connect 0 0 2 0;
#X connect 1 0 6 0;
#X connect 2 0 1 1;
#X connect 2 1 10 0;
#X connect 2 2 1 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 11 0;
#X connect 10 0 3 0;
#X connect 11 0 9 0;
#X restore 238 536 pd random.seed;
#X obj 9 332 r \$0.tx.switch.s;
#X obj 37 355 r \$0.udp.link.status;
#X obj 36 403 r \$0.link;
#X obj 9 355 f;
#X obj 9 403 f;
#X obj 9 425 sel 1;
#X msg 111 425 1;
#X obj 111 444 s \$0.udp.link.status;
#X obj 289 141 r \$0.udp.link.status;
#X obj 291 189 r \$0.link;
#X obj 264 141 f;
#X obj 264 164 sel 0 4;
#X obj 264 189 f;
#X obj 264 211 sel 1;
#X obj 264 254 s \$0.udp.link.status;
#X msg 264 233 2;
#X obj 295 323 r \$0.tx.switch.s;
#X obj 320 346 r \$0.udp.link.status;
#X obj 322 394 r \$0.link;
#X obj 295 346 f;
#X obj 295 394 f;
#X obj 295 416 sel 1;
#X obj 295 369 sel 2;
#X obj 10 132 t b a;
#X obj 35 183 r \$0.udp.link.status;
#X obj 37 231 r \$0.link;
#X obj 10 183 f;
#X obj 10 231 f;
#X obj 10 253 sel 1;
#X obj 10 206 sel 1;
#X obj 10 296 s \$0.udp.link.status;
#X msg 10 274 3;
#X obj 9 378 sel 0;
#X obj 295 437 t b b;
#X msg 295 484 3;
#X obj 295 504 s \$0.udp.link.status;
#X obj 295 463 del 0;
#X obj 9 447 t b b b;
#X obj 49 486 t b b;
#X obj 111 403 del 0;
#X connect 0 0 23 0;
#X connect 1 0 2 0;
#X connect 2 0 49 0;
#X connect 3 0 4 0;
#X connect 4 0 2 0;
#X connect 4 0 7 0;
#X connect 6 0 24 0;
#X connect 7 0 19 0;
#X connect 8 0 7 0;
#X connect 10 0 11 1;
#X connect 11 0 13 0;
#X connect 12 0 13 1;
#X connect 13 0 17 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 17 0 21 1;
#X connect 17 0 20 0;
#X connect 18 0 17 1;
#X connect 19 0 36 0;
#X connect 20 0 9 0;
#X connect 21 0 22 0;
#X connect 22 0 9 0;
#X connect 23 0 1 0;
#X connect 24 0 8 0;
#X connect 25 0 14 0;
#X connect 26 0 29 0;
#X connect 27 0 29 1;
#X connect 28 0 30 1;
#X connect 29 0 58 0;
#X connect 30 0 31 0;
#X connect 31 0 63 0;
#X connect 32 0 33 0;
#X connect 34 0 36 1;
#X connect 35 0 38 1;
#X connect 36 0 37 0;
#X connect 37 0 38 0;
#X connect 37 1 38 0;
#X connect 38 0 39 0;
#X connect 39 0 41 0;
#X connect 41 0 40 0;
#X connect 42 0 45 0;
#X connect 43 0 45 1;
#X connect 44 0 46 1;
#X connect 45 0 48 0;
#X connect 46 0 47 0;
#X connect 47 0 59 0;
#X connect 48 0 46 0;
#X connect 49 0 52 0;
#X connect 49 1 5 0;
#X connect 50 0 52 1;
#X connect 51 0 53 1;
#X connect 52 0 55 0;
#X connect 53 0 54 0;
#X connect 54 0 57 0;
#X connect 55 0 53 0;
#X connect 57 0 56 0;
#X connect 58 0 30 0;
#X connect 59 0 62 0;
#X connect 59 1 64 0;
#X connect 60 0 61 0;
#X connect 62 0 60 0;
#X connect 63 0 21 0;
#X connect 63 1 64 0;
#X connect 63 2 65 0;
#X connect 64 0 11 0;
#X connect 64 1 14 0;
#X connect 65 0 32 0;
#X restore 16 124 pd negotiate.port;
768
769
770
#X connect 0 0 4 0;
#X connect 1 0 2 0;
#X connect 5 0 4 0;
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
#X connect 12 0 36 0;
#X connect 12 1 37 0;
#X connect 12 2 38 0;
#X connect 12 3 39 0;
#X connect 12 4 40 0;
#X connect 12 5 41 0;
#X connect 12 6 42 0;
#X connect 12 7 43 0;
#X connect 12 8 14 0;
#X connect 13 0 12 8;
#X connect 16 0 15 0;
#X connect 18 0 19 0;
#X connect 20 0 15 0;
#X connect 21 0 15 0;
#X connect 24 0 12 0;
#X connect 24 1 12 1;
#X connect 24 2 12 2;
#X connect 24 3 12 3;
#X connect 24 4 12 4;
#X connect 24 5 12 5;
#X connect 24 6 12 6;
#X connect 24 7 12 7;
#X connect 25 0 27 0;
#X connect 28 0 27 0;
#X connect 29 0 27 1;
#X connect 30 0 27 2;
#X connect 31 0 27 3;
#X connect 32 0 27 4;
#X connect 33 0 27 5;
#X connect 34 0 27 6;
#X connect 35 0 27 7;
#X connect 53 0 55 0;
#X connect 55 0 54 0;
Roman Haefeli's avatar
Roman Haefeli committed
804
#X connect 56 0 55 0;
805
#X coords 0 -1 1 1 953 32 2 20 20;