#N canvas 80 80 1100 820 12;
#X obj 10 10 cnv 15 1080 60 empty empty PD<->SC_BRIDGE 18 22 0 16 -261681 -1 0;
#X text 30 30 sound_algo control panel - OSC vers SuperCollider;
#X text 30 48 status:;
#X obj 90 48 cnv 15 200 16 empty empty CONNECTED_to_SC 4 8 0 10 -257985 -34 0;
#X text 320 30 PORT cible:;
#X floatatom 410 30 6 1024 65535 0 - port-target -;
#X obj 490 26 bng 22 250 50 0 reconnect-bang empty RECONNECT 30 8 0 10 -204786 -1 -1;
#X obj 620 26 bng 22 250 50 0 dsp-toggle empty DSP_ON_OFF 30 8 0 10 -1109 -1 -1;
#X text 770 30 SC->PD on :57121;
#X text 770 50 PD->SC default :57122;
#X obj 10 80 cnv 15 1080 80 empty empty TRANSPORT 12 14 0 14 -228856 -1 0;
#X obj 30 110 bng 36 250 50 0 empty empty PLAY 0 -10 0 10 -257985 -1 -1;
#X obj 90 110 bng 36 250 50 0 empty empty STOP 0 -10 0 10 -1109 -1 -1;
#X obj 150 110 bng 36 250 50 0 empty empty CHOKE 0 -10 0 10 -262144 -1 -1;
#X obj 210 110 bng 36 250 50 0 empty empty PANIC 0 -10 0 10 -1109 -1 -1;
#X msg 30 150 \; osc-out send /play;
#X msg 90 150 \; osc-out send /stop;
#X msg 150 150 \; osc-out send /choke;
#X msg 210 150 \; osc-out send /stop \; osc-out send /choke;
#X obj 10 170 cnv 15 1080 80 empty empty TRICKS_LIVE 12 14 0 14 -228856 -1 0;
#X obj 30 200 bng 28 250 50 0 empty empty DROP 0 -8 0 10 -1109 -1 -1;
#X obj 80 200 bng 28 250 50 0 empty empty BREAKDOWN 0 -8 0 10 -228856 -1 -1;
#X obj 130 200 bng 28 250 50 0 empty empty BUILDUP 0 -8 0 10 -204786 -1 -1;
#X obj 180 200 bng 28 250 50 0 empty empty FREEZE 0 -8 0 10 -257985 -1 -1;
#X obj 230 200 bng 28 250 50 0 empty empty GLITCH 0 -8 0 10 -1109 -1 -1;
#X obj 280 200 bng 28 250 50 0 empty empty STUTTER 0 -8 0 10 -228856 -1 -1;
#X obj 330 200 bng 28 250 50 0 empty empty TAPESTOP 0 -8 0 10 -1109 -1 -1;
#X obj 380 200 bng 28 250 50 0 empty empty HANDS_UP 0 -8 0 10 -204786 -1 -1;
#X obj 430 200 bng 28 250 50 0 empty empty JUMPCUT 0 -8 0 10 -228856 -1 -1;
#X obj 480 200 bng 28 250 50 0 empty empty TAPEREV 0 -8 0 10 -228856 -1 -1;
#X msg 30 230 \; osc-out send /drop;
#X msg 80 230 \; osc-out send /breakdown;
#X msg 130 230 \; osc-out send /buildup;
#X msg 180 230 \; osc-out send /freeze;
#X msg 230 230 \; osc-out send /glitch;
#X msg 280 230 \; osc-out send /stutter 8 1;
#X msg 330 230 \; osc-out send /tapeStop;
#X msg 380 230 \; osc-out send /handsUp;
#X msg 430 230 \; osc-out send /jumpCut;
#X msg 480 230 \; osc-out send /tapeReverse;
#X obj 10 260 cnv 15 1080 170 empty empty MIXER_8_VOIES_+_MASTER 12 14 0 14 -228856 -1 0;
#X obj 40 290 vsl 18 110 0 1 0 0 empty empty kick 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 100 290 vsl 18 110 0 1 0 0 empty empty hat 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 160 290 vsl 18 110 0 1 0 0 empty empty snare 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 220 290 vsl 18 110 0 1 0 0 empty empty clap 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 280 290 vsl 18 110 0 1 0 0 empty empty perc 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 340 290 vsl 18 110 0 1 0 0 empty empty acid 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 400 290 vsl 18 110 0 1 0 0 empty empty melody 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 460 290 vsl 18 110 0 1 0 0 empty empty harmony 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 540 290 vsl 18 110 0 2 0 0 empty empty MASTER 0 -8 0 10 -260818 -1 -1 0 1;
#X msg 40 410 \; osc-out send /vol/kick \$1;
#X msg 100 410 \; osc-out send /vol/hat \$1;
#X msg 160 410 \; osc-out send /vol/snare \$1;
#X msg 220 410 \; osc-out send /vol/clap \$1;
#X msg 280 410 \; osc-out send /vol/perc \$1;
#X msg 340 410 \; osc-out send /vol/acid \$1;
#X msg 400 410 \; osc-out send /vol/melody \$1;
#X msg 460 410 \; osc-out send /vol/harmony \$1;
#X msg 540 410 \; osc-out send /vol/master \$1;
#X obj 10 440 cnv 15 530 130 empty empty TWEAKS 12 14 0 14 -228856 -1 0;
#X obj 30 470 hsl 160 18 100 12000 1 0 empty empty melodyCutoff 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 30 495 hsl 160 18 100 8000 1 0 empty empty acidCutoff 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 30 520 hsl 160 18 0 1 0 0 empty empty melodyRq 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 30 545 hsl 160 18 0 1 0 0 empty empty acidRq 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 280 470 hsl 160 18 0.5 5 0 0 empty empty melodyDrive 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 280 495 hsl 160 18 60 200 1 0 empty empty bpm 0 -8 0 10 -260818 -1 -1 0 1;
#X msg 200 470 \; osc-out send /tweak/melodyCutoff \$1;
#X msg 200 495 \; osc-out send /tweak/acidCutoff \$1;
#X msg 200 520 \; osc-out send /tweak/melodyRq \$1;
#X msg 200 545 \; osc-out send /tweak/acidRq \$1;
#X msg 450 470 \; osc-out send /tweak/melodyDrive \$1;
#X msg 450 495 \; osc-out send /tweak/bpm \$1;
#X obj 550 440 cnv 15 540 130 empty empty FX_BUS 12 14 0 14 -228856 -1 0;
#X obj 570 470 tgl 22 0 empty empty REV_FREEZE 0 -8 0 10 -257985 -1 -1 0 1;
#X msg 600 510 \; osc-out send /fx/freeze \$1;
#X obj 670 470 hsl 130 16 0 1 0 0 empty empty reverbMix 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 670 490 hsl 130 16 0 1 0 0 empty empty delayMix 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 670 510 hsl 130 16 0 1 0 0 empty empty chorusMix 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 670 530 hsl 130 16 0 1 0 0 empty empty shimmerMix 0 -8 0 10 -204786 -1 -1 0 1;
#X msg 810 470 \; osc-out send /fx/setMix reverb \$1;
#X msg 810 490 \; osc-out send /fx/setMix delay \$1;
#X msg 810 510 \; osc-out send /fx/setMix chorus \$1;
#X msg 810 530 \; osc-out send /fx/setMix shimmer \$1;
#X obj 970 470 hradio 16 1 0 10 empty empty fx_preset 0 -8 0 10 -204786 -1 0;
#X text 970 455 fx preset:;
#X text 970 490 dry/dub/spc/trn/dub/ret/ind/drm/cos/drn;
#X obj 970 510 select 0 1 2 3 4 5 6 7 8 9;
#X msg 970 530 \; osc-out send /fx/preset dry;
#X msg 970 545 \; osc-out send /fx/preset dub;
#X msg 970 560 \; osc-out send /fx/preset space;
#X msg 1000 530 \; osc-out send /fx/preset trance;
#X msg 1000 545 \; osc-out send /fx/preset dubstep;
#X msg 1000 560 \; osc-out send /fx/preset retro;
#X msg 1030 530 \; osc-out send /fx/preset industrial;
#X msg 1030 545 \; osc-out send /fx/preset dream;
#X msg 1030 560 \; osc-out send /fx/preset cosmic;
#X msg 1060 530 \; osc-out send /fx/preset drone;
#X obj 10 580 cnv 15 530 90 empty empty VCF_MASTER 12 14 0 14 -228856 -1 0;
#X text 30 590 type:;
#X text 150 590 moog ms20 ladder formant comb hpf bpf notch;
#X obj 30 605 hradio 14 1 0 8 empty empty vcf_type 0 -8 0 10 -204786 -1 0;
#X obj 30 635 hsl 200 16 50 15000 1 0 empty empty vcf_freq 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 250 635 hsl 130 16 0.05 1.5 0 0 empty empty vcf_q 0 -8 0 10 -204786 -1 -1 0 1;
#X obj 410 605 bng 26 250 50 0 empty empty VCF_OFF 0 -8 0 10 -1109 -1 -1;
#X obj 470 605 bng 22 250 50 0 empty empty VCF_ON 0 -8 0 10 -204786 -1 -1;
#X msg 30 660 \; osc-out send /vcf/setFreq \$1;
#X msg 250 660 \; osc-out send /vcf/setQ \$1;
#X msg 410 635 \; osc-out send /vcf/off;
#X msg 470 635 \; osc-out send /vcf/on moog 800 0.4;
#X obj 550 580 cnv 15 540 90 empty empty MELODIES_+_JUMP 12 14 0 14 -228856 -1 0;
#X obj 570 605 bng 22 250 50 0 empty empty rand_long 0 -8 0 10 -204786 -1 -1;
#X obj 620 605 bng 22 250 50 0 empty empty rand_xlong 0 -8 0 10 -204786 -1 -1;
#X obj 670 605 bng 22 250 50 0 empty empty rand_epic 0 -8 0 10 -204786 -1 -1;
#X msg 570 635 \; osc-out send /melody/random/long;
#X msg 620 635 \; osc-out send /melody/random/xlong;
#X msg 670 635 \; osc-out send /melody/random/epic;
#X text 740 590 acid dub trn det dnb ori syn;
#X obj 740 605 hradio 14 1 0 7 empty empty melody_genre 0 -8 0 10 -204786 -1 0;
#X obj 740 635 select 0 1 2 3 4 5 6;
#X msg 740 655 \; osc-out send /melody/genre acid;
#X msg 770 655 \; osc-out send /melody/genre dub;
#X msg 800 655 \; osc-out send /melody/genre trance;
#X msg 830 655 \; osc-out send /melody/genre detroit;
#X msg 860 655 \; osc-out send /melody/genre dnb;
#X msg 890 655 \; osc-out send /melody/genre oriental;
#X msg 920 655 \; osc-out send /melody/genre synthwave;
#X obj 970 605 bng 20 250 50 0 empty empty Aint 0 -8 0 9 -228856 -1 -1;
#X obj 1000 605 bng 20 250 50 0 empty empty Adrp 0 -8 0 9 -228856 -1 -1;
#X obj 1030 605 bng 20 250 50 0 empty empty Bdub 0 -8 0 9 -228856 -1 -1;
#X obj 1060 605 bng 20 250 50 0 empty empty Chyp 0 -8 0 9 -228856 -1 -1;
#X obj 970 635 bng 20 250 50 0 empty empty Edrp 0 -8 0 9 -228856 -1 -1;
#X obj 1000 635 bng 20 250 50 0 empty empty Fdrp 0 -8 0 9 -228856 -1 -1;
#X obj 1030 635 bng 20 250 50 0 empty empty Wdub 0 -8 0 9 -228856 -1 -1;
#X msg 970 660 \; osc-out send /jump A intro;
#X msg 1000 660 \; osc-out send /jump A drop;
#X msg 1030 660 \; osc-out send /jump B dub;
#X msg 1060 660 \; osc-out send /jump C hyp;
#X msg 970 680 \; osc-out send /jump E drop;
#X msg 1000 680 \; osc-out send /jump F drop;
#X msg 1030 680 \; osc-out send /jump W dub;
#X obj 10 680 cnv 15 1080 60 empty empty SCENES 12 14 0 14 -228856 -1 0;
#X text 30 705 SCENES presets (load):;
#X obj 220 705 bng 22 250 50 0 empty empty verseA 0 -8 0 10 -228856 -1 -1;
#X obj 280 705 bng 22 250 50 0 empty empty breakdown 0 -8 0 10 -228856 -1 -1;
#X obj 360 705 bng 22 250 50 0 empty empty drop 0 -8 0 10 -228856 -1 -1;
#X obj 420 705 bng 22 250 50 0 empty empty favorite 0 -8 0 10 -228856 -1 -1;
#X msg 220 730 \; osc-out send /scene/load verseA;
#X msg 280 730 \; osc-out send /scene/load breakdown;
#X msg 360 730 \; osc-out send /scene/load drop;
#X msg 420 730 \; osc-out send /scene/load favorite;
#X text 520 705 SAVE/LOAD 'live':;
#X obj 670 705 bng 22 250 50 0 empty empty save_live 0 -8 0 10 -204786 -1 -1;
#X obj 720 705 bng 22 250 50 0 empty empty load_live 0 -8 0 10 -204786 -1 -1;
#X msg 670 730 \; osc-out send /scene/save live;
#X msg 720 730 \; osc-out send /scene/load live;
#X obj 10 750 cnv 15 1080 22 empty empty SC->PD_status 4 8 0 10 -228856 -1 0;
#X text 30 752 SC->;
#X text 80 752 status:;
#X obj 130 752 r sc-status;
#X floatatom 175 752 4 0 0 0 - - -;
#X text 220 752 cpu:;
#X obj 260 752 r sc-cpu;
#X floatatom 305 752 5 0 0 0 - - -;
#X text 360 752 synths:;
#X obj 410 752 r sc-synths;
#X floatatom 455 752 4 0 0 0 - - -;
#N canvas 100 100 760 460 osc 0;
#X text 20 10 sub-patch OSC: netsend (PD->SC) + netreceive (SC->PD);
#X obj 20 60 r osc-out;
#X obj 20 90 netsend -u -b;
#X obj 20 120 print net-status;
#X text 200 60 <- recoit toutes les commandes des widgets;
#X text 200 90 -> envoie OSC vers SC sur le port cible;
#X obj 20 170 loadbang;
#X msg 20 200 connect localhost 57122;
#X obj 20 230 t a;
#X text 200 200 connexion auto au load (port 57122);
#X obj 200 170 r reconnect-bang;
#X obj 200 200 r port-target;
#X obj 200 230 list prepend connect localhost;
#X obj 200 260 list trim;
#X text 400 200 modif port via la number-box du header;
#X obj 20 290 r dsp-toggle;
#X obj 20 320 t b b;
#X msg 20 350 \; pd dsp 1;
#X msg 100 350 \; pd dsp 0;
#X text 200 320 alterne DSP on/off via [\; pd dsp ...];
#X obj 500 60 netreceive -u 57121;
#X obj 500 90 oscparse;
#X obj 500 120 route /sc/status /sc/cpu /sc/synths /sc/hello /sc/bpm;
#X obj 500 160 s sc-status;
#X obj 560 160 s sc-cpu;
#X obj 620 160 s sc-synths;
#X obj 500 200 print SC-hello;
#X obj 560 200 print SC-bpm;
#X obj 500 240 print SC-other;
#X text 500 30 reception OSC depuis SC sur :57121;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 2 0;
#X connect 10 0 12 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 13 0 8 0;
#X connect 15 0 16 0;
#X connect 16 0 17 0;
#X connect 16 1 18 0;
#X connect 20 0 21 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 22 1 24 0;
#X connect 22 2 25 0;
#X connect 22 3 26 0;
#X connect 22 4 27 0;
#X connect 22 5 28 0;
#X restore 10 775 pd osc;
#X obj 200 775 loadbang;
#X msg 320 775 PD bridge loaded -- check connection;
#X obj 320 795 print bridge;
#X text 480 775 Cote SC: Cmd+Entree sur SETUP de pd/bridge.scd \, Cmd+/ pour DSP;
#X text 480 795 [pd osc] sub-patch contains netsend/netreceive plumbing;
#X connect 11 0 15 0;
#X connect 12 0 16 0;
#X connect 13 0 17 0;
#X connect 14 0 18 0;
#X connect 20 0 30 0;
#X connect 21 0 31 0;
#X connect 22 0 32 0;
#X connect 23 0 33 0;
#X connect 24 0 34 0;
#X connect 25 0 35 0;
#X connect 26 0 36 0;
#X connect 27 0 37 0;
#X connect 28 0 38 0;
#X connect 29 0 39 0;
#X connect 41 0 50 0;
#X connect 42 0 51 0;
#X connect 43 0 52 0;
#X connect 44 0 53 0;
#X connect 45 0 54 0;
#X connect 46 0 55 0;
#X connect 47 0 56 0;
#X connect 48 0 57 0;
#X connect 49 0 58 0;
#X connect 60 0 66 0;
#X connect 61 0 67 0;
#X connect 62 0 68 0;
#X connect 63 0 69 0;
#X connect 64 0 70 0;
#X connect 65 0 71 0;
#X connect 73 0 74 0;
#X connect 75 0 79 0;
#X connect 76 0 80 0;
#X connect 77 0 81 0;
#X connect 78 0 82 0;
#X connect 83 0 86 0;
#X connect 86 0 87 0;
#X connect 86 1 88 0;
#X connect 86 2 89 0;
#X connect 86 3 90 0;
#X connect 86 4 91 0;
#X connect 86 5 92 0;
#X connect 86 6 93 0;
#X connect 86 7 94 0;
#X connect 86 8 95 0;
#X connect 86 9 96 0;
#X connect 101 0 105 0;
#X connect 102 0 106 0;
#X connect 103 0 107 0;
#X connect 104 0 108 0;
#X connect 110 0 113 0;
#X connect 111 0 114 0;
#X connect 112 0 115 0;
#X connect 117 0 118 0;
#X connect 118 0 119 0;
#X connect 118 1 120 0;
#X connect 118 2 121 0;
#X connect 118 3 122 0;
#X connect 118 4 123 0;
#X connect 118 5 124 0;
#X connect 118 6 125 0;
#X connect 126 0 133 0;
#X connect 127 0 134 0;
#X connect 128 0 135 0;
#X connect 129 0 136 0;
#X connect 130 0 137 0;
#X connect 131 0 138 0;
#X connect 132 0 139 0;
#X connect 142 0 146 0;
#X connect 143 0 147 0;
#X connect 144 0 148 0;
#X connect 145 0 149 0;
#X connect 151 0 153 0;
#X connect 152 0 154 0;
#X connect 158 0 159 0;
#X connect 161 0 162 0;
#X connect 164 0 165 0;
#X connect 167 0 168 0;
#X connect 168 0 169 0;
