#N canvas 869 213 477 356 10; #X declare -lib mrpeach; #N canvas 575 573 503 335 matrix16 0; #X obj 62 17 routeOSC /push1 /push2 /push3 /push4 /push5 /push6 /push7 /push8 /push9 /push10 /push11 /push12 /push13 /push14 /push15 /push16 ; #X obj 59 -5 r matrix; #N canvas 1250 477 419 423 effectselect 0; #X msg -43 197 symbol effect1; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push1 empty empty 17 7 0 10 -86277 -258113 -260097 1 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X msg 143 -2 send /1/label50 Distortion; #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X obj 21 -34 r \$0-offpush1; #X obj -28 108 s \$0-offpush5; #X obj -27 132 s \$0-offpush9; #X obj -27 157 s \$0-offpush13; #X msg 145 25 send /currenteffect Distortion; #X msg 143 51 send /parameter1 Pre-Gain; #X msg 145 81 send /parameter2 Post-Gain; #X msg 147 110 send /parameter3 Clipping; #X msg 149 140 send /parameter4 Volume; #X msg 149 169 send /parameter5 None; #X connect 0 0 5 0; #X connect 1 1 0 0; #X connect 1 1 7 0; #X connect 1 1 14 0; #X connect 1 1 15 0; #X connect 1 1 16 0; #X connect 1 1 17 0; #X connect 1 1 18 0; #X connect 1 1 19 0; #X connect 1 1 9 0; #X connect 2 0 4 0; #X connect 3 0 1 0; #X connect 4 1 3 0; #X connect 7 0 8 0; #X connect 9 0 11 0; #X connect 9 0 12 0; #X connect 9 0 13 0; #X connect 10 0 3 0; #X connect 14 0 8 0; #X connect 15 0 8 0; #X connect 16 0 8 0; #X connect 17 0 8 0; #X connect 18 0 8 0; #X connect 19 0 8 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 101 101 pd effectselect; #N canvas 595 367 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push5 empty empty 17 7 0 10 -86277 -258113 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg 143 -2 send /1/label50 TubeWarmth; #X obj 21 -31 r \$0-offpush5; #X msg -2 92 0; #X obj -17 142 s \$0-offpush9; #X obj -17 167 s \$0-offpush13; #X obj -18 118 s \$0-offpush1; #X msg -43 197 symbol effect5; #X msg 145 25 send /currenteffect TubeWarmth; #X msg 143 51 send /parameter1 Drive; #X msg 146 81 send /parameter2 Tape/Tube; #X msg 147 110 send /parameter3 None; #X msg 149 140 send /parameter4 None; #X msg 149 169 send /parameter5 None; #X connect 0 1 13 0; #X connect 0 1 7 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 9 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 6 0; #X connect 8 0 2 0; #X connect 9 0 10 0; #X connect 9 0 11 0; #X connect 9 0 12 0; #X connect 13 0 4 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 101 125 pd effectselect; #N canvas 47 370 430 300 effectselect 0; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push9 empty empty 17 7 0 10 -86277 -258113 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X obj -28 108 s \$0-offpush5; #X obj -27 157 s \$0-offpush13; #X obj -27 132 s \$0-offpush1; #X msg 143 -2 send /1/label50 Violin; #X obj 21 -34 r \$0-offpush9; #X msg -43 197 symbol effect9; #X msg 145 25 send /currenteffect Violin; #X msg 143 51 send /parameter1 Sensitivity; #X msg 145 81 send /parameter2 Attack; #X msg 147 110 send /parameter3 None; #X msg 149 140 send /parameter4 None; #X msg 149 169 send /parameter5 None; #X connect 0 1 13 0; #X connect 0 1 11 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 17 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 8 0; #X connect 7 0 9 0; #X connect 7 0 10 0; #X connect 11 0 6 0; #X connect 12 0 2 0; #X connect 13 0 4 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 101 149 pd effectselect; #N canvas 250 377 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push13 empty empty 17 7 0 10 -86277 -258113 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -2 92 0; #X obj -17 142 s \$0-offpush9; #X obj -18 118 s \$0-offpush1; #X obj 21 -31 r \$0-offpush13; #X obj -17 168 s \$0-offpush5; #X msg 143 -2 send /1/label50 RingMod; #X msg -43 197 symbol effect13; #X msg 145 25 send /currenteffect RingMod; #X msg 143 51 send /parameter1 LFO_Freq; #X msg 145 81 send /parameter2 Lower_Lim; #X msg 147 110 send /parameter3 Upper_Lim; #X msg 149 140 send /parameter4 Dry/Wet; #X msg 149 169 send /parameter5 None; #X connect 0 1 13 0; #X connect 0 1 12 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 8 0; #X connect 7 0 9 0; #X connect 7 0 11 0; #X connect 10 0 2 0; #X connect 12 0 6 0; #X connect 13 0 4 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 101 173 pd effectselect; #N canvas 765 359 430 300 effectselect 0; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push2 empty empty 17 7 0 10 -13381 -4034 -260097 1 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X obj 21 -34 r \$0-offpush2; #X obj -27 133 s \$0-offpush10; #X obj -27 157 s \$0-offpush14; #X msg -43 197 symbol effect2; #X obj -28 108 s \$0-offpush6; #X msg 143 -2 send /1/label51 Vibrato; #X msg 145 25 send /currenteffect Vibrato; #X msg 143 51 send /parameter1 Frequency; #X msg 145 81 send /parameter2 Depth; #X msg 149 109 send /parameter3 Dry_Level; #X msg 149 140 send /parameter4 Wet_Level; #X msg 149 169 send /parameter5 None; #X connect 0 1 11 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 17 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 9 0; #X connect 7 0 10 0; #X connect 7 0 12 0; #X connect 8 0 2 0; #X connect 11 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 125 101 pd effectselect; #N canvas 512 360 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push6 empty empty 17 7 0 10 -13381 -4034 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -2 92 0; #X obj 21 -31 r \$0-offpush6; #X msg -43 197 symbol effect6; #X obj -18 118 s \$0-offpush2; #X obj -17 142 s \$0-offpush10; #X obj -17 167 s \$0-offpush14; #X msg 143 -2 send /1/label51 PitchShift; #X msg 145 25 send /currenteffect PitchShift; #X msg 143 51 send /parameter1 Semitone; #X msg 145 81 send /parameter2 Rate_Shift; #X msg 147 110 send /parameter3 Dry_Level; #X msg 149 140 send /parameter4 Wet_Level; #X msg 149 169 send /parameter5 None; #X connect 0 1 9 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 8 0 2 0; #X connect 9 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 125 125 pd effectselect; #N canvas 215 384 430 300 effectselect 0; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push10 empty empty 17 7 0 10 -13381 -4034 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X obj 21 -34 r \$0-offpush10; #X obj -28 108 s \$0-offpush2; #X obj -26 133 s \$0-offpush6; #X obj -27 157 s \$0-offpush14; #X msg -43 197 symbol effect10; #X msg 143 -2 send /1/label51 Phaser; #X msg 145 25 send /currenteffect Phaser; #X msg 142 51 send /parameter1 Speed; #X msg 146 80 send /parameter2 Depth; #X msg 147 110 send /parameter3 Feedback; #X msg 149 140 send /parameter4 None; #X msg 149 169 send /parameter5 None; #X connect 0 1 12 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 17 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 9 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 8 0 2 0; #X connect 12 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 125 149 pd effectselect; #N canvas 258 397 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push14 empty empty 17 7 0 10 -13381 -4034 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -2 92 0; #X obj 21 -31 r \$0-offpush14; #X msg -43 197 symbol effect14; #X obj -18 118 s \$0-offpush2; #X obj -17 142 s \$0-offpush6; #X obj -17 168 s \$0-offpush10; #X msg 143 -2 send /1/label51 Hexxciter; #X msg 145 26 send /currenteffect Hexxciter; #X msg 143 51 send /parameter1 Threshold; #X msg 145 81 send /parameter2 Speed; #X msg 147 110 send /parameter3 Attack; #X msg 149 140 send /parameter4 Sustain; #X msg 149 169 send /parameter5 Reverb; #X connect 0 1 9 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 8 0 2 0; #X connect 9 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 125 173 pd effectselect; #N canvas 400 129 430 300 effectselect 0; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push3 empty empty 17 7 0 10 -83269 -257985 -260097 1 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X obj 21 -34 r \$0-offpush3; #X msg -43 197 symbol effect3; #X obj -28 108 s \$0-offpush7; #X obj -27 132 s \$0-offpush11; #X obj -27 157 s \$0-offpush15; #X msg 143 -2 send /1/label52 Chorus; #X msg 145 25 send /currenteffect Chorus; #X msg 143 51 send /parameter1 Frequency; #X msg 145 81 send /parameter2 Depth; #X msg 147 110 send /parameter3 Delay; #X msg 149 140 send /parameter4 Contour; #X msg 149 169 send /parameter5 Phase; #X connect 0 1 9 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 17 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 8 0 2 0; #X connect 9 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 149 101 pd effectselect; #N canvas 668 373 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push7 empty empty 17 7 0 10 -83269 -257985 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -2 92 0; #X obj 21 -31 r \$0-offpush7; #X msg -43 197 symbol effect7; #X obj -18 118 s \$0-offpush3; #X obj -17 142 s \$0-offpush11; #X obj -17 167 s \$0-offpush15; #X msg 143 -2 send /1/label52 AutoWah; #X msg 145 25 send /currenteffect AutoWah; #X msg 143 51 send /parameter1 Rate; #X msg 145 81 send /parameter2 Min; #X msg 147 110 send /parameter3 Max; #X msg 149 140 send /parameter4 Q Value; #X msg 149 169 send /parameter5 None; #X connect 0 1 9 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 8 0 2 0; #X connect 9 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 149 125 pd effectselect; #N canvas 311 195 430 300 effectselect 0; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push11 empty empty 17 7 0 10 -83269 -257985 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X obj 21 -34 r \$0-offpush11; #X obj -28 108 s \$0-offpush3; #X obj -27 132 s \$0-offpush7; #X obj -27 157 s \$0-offpush15; #X msg -43 197 symbol effect11; #X msg 143 -2 send /1/label52 Tremolo; #X msg 145 25 send /currenteffect Tremolo; #X msg 143 51 send /parameter1 Frequency; #X msg 145 81 send /parameter2 Depth; #X msg 147 110 send /parameter3 Gain; #X msg 149 140 send /parameter4 None; #X msg 149 169 send /parameter5 None; #X connect 0 1 12 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 17 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 9 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 8 0 2 0; #X connect 12 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 149 149 pd effectselect; #N canvas 247 110 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push15 empty empty 17 7 0 10 -83269 -257985 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -2 92 0; #X obj 21 -31 r \$0-offpush15; #X msg -43 197 symbol effect15; #X obj -18 118 s \$0-offpush3; #X obj -17 142 s \$0-offpush7; #X obj -17 169 s \$0-offpush11; #X msg 143 -2 send /1/label52 Moog; #X msg 145 25 send /currenteffect Moog; #X msg 143 51 send /parameter1 Resonance; #X msg 145 81 send /parameter2 Cutoff; #X msg 147 110 send /parameter3 None; #X msg 149 140 send /parameter4 None; #X msg 149 169 send /parameter5 None; #X connect 0 1 9 0; #X connect 0 1 13 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 8 0 2 0; #X connect 9 0 4 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 149 173 pd effectselect; #N canvas 286 251 430 300 effectselect 0; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push4 empty empty 17 7 0 10 -13330 -4032 -260097 1 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X msg 143 -2 send /1/label53 Delay; #X obj 21 -34 r \$0-offpush4; #X obj -28 108 s \$0-offpush8; #X obj -27 133 s \$0-offpush12; #X obj -27 157 s \$0-offpush16; #X msg -43 197 symbol effect4; #X msg 145 25 send /currenteffect Delay; #X msg 143 51 send /parameter1 Time; #X msg 145 81 send /parameter2 Dry/Wet; #X msg 149 109 send /parameter3 None; #X msg 149 140 send /parameter4 None; #X msg 149 169 send /parameter5 None; #X connect 0 1 13 0; #X connect 0 1 8 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 17 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 8 0 6 0; #X connect 9 0 2 0; #X connect 13 0 4 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 173 101 pd effectselect; #N canvas 319 130 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push8 empty empty 17 7 0 10 -13330 -4032 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -2 92 0; #X obj 21 -31 r \$0-offpush8; #X msg 145 -2 send /1/label53 Reflector; #X msg -43 197 symbol effect8; #X obj -18 118 s \$0-offpush4; #X obj -17 142 s \$0-offpush12; #X obj -17 167 s \$0-offpush16; #X msg 145 24 send /currenteffect Reflector; #X msg 143 51 send /parameter1 Frag Length; #X msg 145 81 send /parameter2 Dry_Level; #X msg 147 110 send /parameter3 Wet_Level; #X msg 149 140 send /parameter4 None; #X msg 149 169 send /parameter5 None; #X connect 0 1 10 0; #X connect 0 1 9 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 7 0 13 0; #X connect 8 0 2 0; #X connect 9 0 6 0; #X connect 10 0 4 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 173 125 pd effectselect; #N canvas 106 115 430 300 effectselect 0; #X obj -4 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push12 empty empty 17 7 0 10 -13330 -4034 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -12 82 0; #X msg 143 -2 send /1/label53 Reverb; #X obj 21 -34 r \$0-offpush12; #X obj -28 108 s \$0-offpush4; #X obj -26 133 s \$0-offpush8; #X obj -27 157 s \$0-offpush16; #X msg -43 197 symbol effect12; #X msg 145 25 send /currenteffect Reverb; #X msg 142 51 send /parameter1 Decay; #X msg 146 80 send /parameter2 Type; #X msg 147 110 send /parameter3 Bandpass; #X msg 149 140 send /parameter4 Combpass; #X msg 149 169 send /parameter5 Allpass; #X connect 0 1 13 0; #X connect 0 1 8 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 17 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 10 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 8 0 6 0; #X connect 9 0 2 0; #X connect 13 0 4 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 173 149 pd effectselect; #N canvas 218 105 430 300 effectselect 0; #X obj 21 51 moses 1; #X obj -52 -50 inlet; #X obj 21 21 tgl 20 0 \$0-push16 empty empty 17 7 0 10 -13330 -4032 -260097 0 1; #X obj -50 -22 moses 1; #X obj -43 225 s \$0-currenteffect; #X text 78 226 send to current effect (page 2); #X obj 83 202 s \$0-udpmessage; #X msg -2 92 0; #X msg 143 -2 send /1/label53 Downstairs; #X obj 21 -31 r \$0-offpush16; #X msg -43 197 symbol effect16; #X obj -18 118 s \$0-offpush4; #X obj -17 142 s \$0-offpush8; #X obj -17 168 s \$0-offpush12; #X msg 144 26 send /currenteffect Downstairs; #X msg 143 51 send /parameter1 Speed; #X msg 145 81 send /parameter2 Depth; #X msg 147 110 send /parameter3 Feedback; #X msg 149 140 send /parameter4 Dry_Level; #X msg 148 169 send /parameter5 Wet_Level; #X connect 0 1 10 0; #X connect 0 1 8 0; #X connect 0 1 14 0; #X connect 0 1 15 0; #X connect 0 1 16 0; #X connect 0 1 18 0; #X connect 0 1 19 0; #X connect 0 1 17 0; #X connect 0 1 7 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X connect 3 1 2 0; #X connect 7 0 11 0; #X connect 7 0 12 0; #X connect 7 0 13 0; #X connect 8 0 6 0; #X connect 9 0 2 0; #X connect 10 0 4 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X coords 0 -1 1 1 22 22 2 20 20; #X restore 173 173 pd effectselect; #X text 58 206 Open these boxes to change individual effect labels ; #X msg 15 71 1; #X obj 2 31 loadbang; #X connect 0 0 2 0; #X connect 0 1 6 0; #X connect 0 2 10 0; #X connect 0 3 14 0; #X connect 0 4 3 0; #X connect 0 5 7 0; #X connect 0 6 11 0; #X connect 0 7 15 0; #X connect 0 8 4 0; #X connect 0 9 8 0; #X connect 0 10 12 0; #X connect 0 11 16 0; #X connect 0 12 5 0; #X connect 0 13 9 0; #X connect 0 14 13 0; #X connect 0 15 17 0; #X connect 1 0 0 0; #X connect 19 0 2 0; #X connect 19 0 6 0; #X connect 19 0 10 0; #X connect 19 0 14 0; #X connect 20 0 19 0; #X coords 0 -1 1 1 100 100 2 100 100; #X restore -175 76 pd matrix16; #N canvas 197 130 590 320 pageonesliders 1; #X obj -198 125 vsl 20 80 0 1 0 0 \$0-fader1 empty empty 0 -9 0 10 -86277 -258113 -1 0 1; #X obj -176 125 vsl 20 80 0 1 0 0 \$0-fader2 empty empty 0 -9 0 10 -13381 -4034 -1 0 1; #X obj -154 125 vsl 20 80 0 1 0 0 \$0-fader3 empty empty 0 -9 0 10 -83269 -257985 -1 0 1; #X obj -132 125 vsl 20 80 0 1 0 0 \$0-fader4 empty empty 0 -9 0 10 -13330 -4032 -1 0 1; #X obj -193 28 r page1; #X obj -184 227 routeOSC /toggle1 /toggle2 /toggle3 /toggle4; #X obj -186 258 s \$0-tog1; #X obj -124 255 s \$0-tog2; #X obj -54 258 s \$0-tog3; #X obj 6 257 s \$0-tog4; #X obj 82 257 s matrix; #X obj -193 63 routeOSC /fader1 /fader2 /fader3 /fader4; #N canvas 398 362 738 590 set1 0; #X obj 101 101 tgl 18 0 \$0-tog1 \$0-tog1 empty 17 7 0 10 -1 -258113 -4160 0 1; #X obj 148 226 *~; #X obj 320 220 *~; #X obj 217 140 * -1; #X obj 283 135 min 1; #X obj 218 163 + 1; #X obj 219 185 min 1; #X obj 183 218 line~; #X obj 343 193 line~; #X obj 308 162 pack 0 50; #X obj 229 213 pack 0 50; #X obj 219 98 cnv 15 110 30 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj 225 112 hsl 100 15 0 1 0 0 empty \$0-drywet Dry_Wet 30 -8 0 10 -262144 -1 -1 0 1; #X obj 310 43 loadbang; #X msg 296 69 0; #X obj 142 30 r~ cleansignal; #X obj 203 51 r \$0-fader1; #X obj 322 268 s~ \$0-column1; #X obj 151 273 throw~ \$0-set2; #X obj 240 2 r \$0-tog1; #X msg 389 133 send /1/fader1 \$1; #X obj 389 165 s \$0-udpmessage; #X obj 217 77 spigot; #X obj 257 30 moses 1; #X connect 1 0 18 0; #X connect 2 0 17 0; #X connect 3 0 5 0; #X connect 4 0 9 0; #X connect 5 0 6 0; #X connect 6 0 10 0; #X connect 7 0 1 1; #X connect 8 0 2 1; #X connect 9 0 8 0; #X connect 10 0 7 0; #X connect 12 0 3 0; #X connect 12 0 4 0; #X connect 12 0 20 0; #X connect 13 0 14 0; #X connect 14 0 12 0; #X connect 15 0 2 0; #X connect 15 0 1 0; #X connect 16 0 22 0; #X connect 19 0 22 1; #X connect 19 0 23 0; #X connect 20 0 21 0; #X connect 22 0 12 0; #X connect 23 0 12 0; #X coords 0 -1 1 1 20 20 2 100 100; #X restore -198 101 pd set1; #N canvas 373 413 672 525 set2 0; #X obj 236 267 s~ \$0-column2; #X obj 65 282 throw~ \$0-set3; #X obj 11 21 tgl 18 0 \$0-tog2 \$0-tog2 empty 17 7 0 10 -1 -4034 -4160 0 1; #X obj 63 231 *~; #X obj 235 225 *~; #X obj 132 145 * -1; #X obj 198 140 min 1; #X obj 133 168 + 1; #X obj 134 190 min 1; #X obj 98 223 line~; #X obj 258 198 line~; #X obj 223 167 pack 0 50; #X obj 144 218 pack 0 50; #X obj 134 103 cnv 15 110 30 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj 140 117 hsl 100 15 0 1 0 0 empty \$0-drywet Dry_Wet 30 -8 0 10 -262144 -1 -1 0 1; #X obj 207 42 loadbang; #X msg 211 74 0; #X obj 57 35 catch~ \$0-set2; #X obj 295 170 s \$0-udpmessage; #X msg 295 138 send /1/fader2 \$1; #X obj 121 84 spigot; #X obj 161 37 moses 1; #X obj 107 58 r \$0-fader2; #X obj 144 9 r \$0-tog2; #X connect 3 0 1 0; #X connect 4 0 0 0; #X connect 5 0 7 0; #X connect 6 0 11 0; #X connect 7 0 8 0; #X connect 8 0 12 0; #X connect 9 0 3 1; #X connect 10 0 4 1; #X connect 11 0 10 0; #X connect 12 0 9 0; #X connect 14 0 5 0; #X connect 14 0 6 0; #X connect 14 0 19 0; #X connect 15 0 16 0; #X connect 16 0 14 0; #X connect 17 0 4 0; #X connect 17 0 3 0; #X connect 19 0 18 0; #X connect 20 0 14 0; #X connect 21 0 14 0; #X connect 22 0 20 0; #X connect 23 0 20 1; #X connect 23 0 21 0; #X coords 0 -1 1 1 20 20 2 10 20; #X restore -176 101 pd set2; #N canvas 469 335 742 580 set3 0; #X obj 11 11 tgl 18 0 \$0-tog3 \$0-tog3 empty 17 7 0 10 -1 -257985 -4160 0 1; #X obj 39 224 *~; #X obj 211 218 *~; #X obj 108 138 * -1; #X obj 174 133 min 1; #X obj 109 161 + 1; #X obj 110 183 min 1; #X obj 74 216 line~; #X obj 234 191 line~; #X obj 199 160 pack 0 50; #X obj 120 211 pack 0 50; #X obj 110 96 cnv 15 110 30 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj 116 110 hsl 100 15 0 1 0 0 empty \$0-drywet Dry_Wet 30 -8 0 10 -262144 -1 -1 0 1; #X obj 183 35 loadbang; #X msg 187 67 0; #X obj 47 26 catch~ \$0-set3; #X obj 227 260 s~ \$0-column3; #X obj 42 303 throw~ \$0-set4; #X obj 268 160 s \$0-udpmessage; #X msg 268 128 send /1/fader3 \$1; #X obj 108 82 spigot; #X obj 148 35 moses 1; #X obj 131 7 r \$0-tog3; #X obj 94 56 r \$0-fader3; #X connect 1 0 17 0; #X connect 2 0 16 0; #X connect 3 0 5 0; #X connect 4 0 9 0; #X connect 5 0 6 0; #X connect 6 0 10 0; #X connect 7 0 1 1; #X connect 8 0 2 1; #X connect 9 0 8 0; #X connect 10 0 7 0; #X connect 12 0 3 0; #X connect 12 0 4 0; #X connect 12 0 19 0; #X connect 13 0 14 0; #X connect 14 0 12 0; #X connect 15 0 2 0; #X connect 15 0 1 0; #X connect 19 0 18 0; #X connect 20 0 12 0; #X connect 21 0 12 0; #X connect 22 0 20 1; #X connect 22 0 21 0; #X connect 23 0 20 0; #X coords 0 -1 1 1 20 20 2 10 10; #X restore -154 101 pd set3; #N canvas 134 533 525 450 set4 0; #X obj 11 11 tgl 18 0 \$0-tog4 \$0-tog4 empty 17 7 0 10 -1 -4032 -4160 1 1; #X obj 48 226 *~; #X obj 220 220 *~; #X obj 117 140 * -1; #X obj 183 135 min 1; #X obj 118 163 + 1; #X obj 119 185 min 1; #X obj 83 218 line~; #X obj 243 193 line~; #X obj 208 162 pack 0 50; #X obj 129 213 pack 0 50; #X obj 119 98 cnv 15 110 30 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj 125 112 hsl 100 15 0 1 0 0 empty \$0-drywet Dry_Wet 30 -8 0 10 -262144 -1 -1 0 1; #X obj 192 37 loadbang; #X msg 196 69 0; #X obj 47 18 catch~ \$0-set4; #X obj 45 267 throw~ mixer; #X obj 222 281 s~ \$0-column4; #X obj 282 170 s \$0-udpmessage; #X msg 282 138 send /1/fader4 \$1; #X obj 119 74 spigot; #X obj 156 22 moses 1; #X obj 142 -1 r \$0-tog4; #X obj 105 48 r \$0-fader4; #X connect 1 0 16 0; #X connect 2 0 17 0; #X connect 3 0 5 0; #X connect 4 0 9 0; #X connect 5 0 6 0; #X connect 6 0 10 0; #X connect 7 0 1 1; #X connect 8 0 2 1; #X connect 9 0 8 0; #X connect 10 0 7 0; #X connect 12 0 3 0; #X connect 12 0 4 0; #X connect 12 0 19 0; #X connect 13 0 14 0; #X connect 14 0 12 0; #X connect 15 0 2 0; #X connect 15 0 1 0; #X connect 19 0 18 0; #X connect 20 0 12 0; #X connect 21 0 12 0; #X connect 22 0 20 1; #X connect 22 0 21 0; #X connect 23 0 20 0; #X coords 0 -1 1 1 20 20 2 10 10; #X restore -132 101 pd set4; #X connect 4 0 11 0; #X connect 5 0 6 0; #X connect 5 1 7 0; #X connect 5 2 8 0; #X connect 5 3 9 0; #X connect 5 4 10 0; #X connect 11 0 0 0; #X connect 11 1 1 0; #X connect 11 2 2 0; #X connect 11 3 3 0; #X connect 11 4 5 0; #X coords 0 300 1 299 90 110 2 -200 100; #X restore -275 68 pd pageonesliders; #N canvas 545 524 593 477 chorusflanger 0; #X msg 189 127 control #1 \$1; #X msg 189 155 control #2 \$1; #X msg 189 183 control #3 \$1; #X msg 184 209 control #4 \$1; #X obj 287 136 hsl 128 15 0.1 5 0 0 empty empty Frequency_0_5 -2 -8 0 10 -262144 -1 -1 4924 1; #X obj 286 229 hsl 128 15 0 180 0 0 empty empty L/R_Phase_Shift_0_180 -2 -8 0 10 -262144 -1 -1 0 1; #X obj 288 168 hsl 128 15 0 100 0 0 empty empty Depth_0_100 -2 -8 0 10 -262144 -1 -1 6350 1; #X obj 287 199 hsl 128 15 0 100 0 0 empty empty Delay_0_100 -2 -8 0 10 -262144 -1 -1 6350 1; #X obj 16 21 loadbang; #X obj 118 294 plugin~ tap_chorusflanger; #X obj 286 259 hsl 128 15 20 1000 0 0 empty empty Contour_20_20000 -2 -8 0 10 -262144 -1 -1 1037 1; #X obj 287 289 hsl 128 15 -90 20 0 0 empty empty Dry_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X obj 286 323 hsl 128 15 -90 20 0 0 empty empty Wet_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X msg 187 230 control #5 \$1; #X msg 186 252 control #6 \$1; #X msg 184 275 control #7 \$1; #X obj 198 91 * 5; #X obj 251 92 * 100; #X obj 307 94 * 100; #X obj 495 133 switch~; #X obj 532 112 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 200 23 r effect3; #X obj 470 52 r \$0-push3; #X obj 105 23 r~ \$0-column3; #X obj 192 351 throw~ \$0-set4; #X msg 19 58 2; #X msg 56 59 50; #X msg 52 97 100; #X msg 17 94 0; #X obj 358 93 * 1000; #X obj 200 51 route fader1 fader2 fader3 fader4 fader5; #X obj 405 82 * 180; #X connect 0 0 9 0; #X connect 1 0 9 0; #X connect 2 0 9 0; #X connect 3 0 9 0; #X connect 4 0 0 0; #X connect 5 0 1 0; #X connect 6 0 2 0; #X connect 7 0 3 0; #X connect 8 0 25 0; #X connect 8 0 26 0; #X connect 8 0 28 0; #X connect 8 0 27 0; #X connect 9 1 24 0; #X connect 10 0 13 0; #X connect 11 0 14 0; #X connect 12 0 15 0; #X connect 13 0 9 0; #X connect 14 0 9 0; #X connect 15 0 9 0; #X connect 16 0 4 0; #X connect 17 0 6 0; #X connect 18 0 7 0; #X connect 20 0 19 0; #X connect 21 0 30 0; #X connect 22 0 20 0; #X connect 23 0 9 1; #X connect 25 0 4 0; #X connect 26 0 7 0; #X connect 26 0 6 0; #X connect 27 0 10 0; #X connect 28 0 5 0; #X connect 28 0 11 0; #X connect 28 0 12 0; #X connect 29 0 10 0; #X connect 30 0 16 0; #X connect 30 1 17 0; #X connect 30 2 18 0; #X connect 30 3 29 0; #X connect 30 4 31 0; #X connect 31 0 5 0; #X coords 0 -1 1 1 80 20 1 450 110; #X restore -35 232 pd chorusflanger; #N canvas 587 490 618 480 tremolo 0; #X obj 119 319 print INFO; #X msg 131 207 control #1 \$1; #X msg 140 231 control #2 \$1; #X msg 152 256 control #3 \$1; #X obj 317 141 hsl 128 15 0.01 20 0 0 empty empty Frequency_0_20 -2 -8 0 10 -262144 -1 -1 3170 1; #X obj 316 174 hsl 128 15 0 100 0 0 empty empty Depth_0_100 -2 -8 0 10 -262144 -1 -1 6350 1; #X obj 316 209 hsl 128 15 -70 20 0 0 empty empty Gain_-70_20 -2 -8 0 10 -262144 -1 -1 9878 1; #X obj 86 43 loadbang; #X obj 119 282 plugin~ tap_tremolo; #X obj 320 90 - 70; #X obj 226 67 * 20; #X obj 273 69 * 100; #X obj 320 66 * 90; #X obj 504 151 switch~; #X obj 537 123 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 225 32 route fader1 fader2 fader3 fader4; #X msg 87 70 5; #X msg 123 72 50; #X msg 156 72 0; #X obj 225 4 r effect11; #X obj 480 62 r \$0-push11; #X obj 170 151 r~ \$0-column3; #X obj 226 321 throw~ \$0-set4; #X connect 1 0 8 0; #X connect 2 0 8 0; #X connect 3 0 8 0; #X connect 4 0 1 0; #X connect 5 0 2 0; #X connect 6 0 3 0; #X connect 7 0 16 0; #X connect 7 0 17 0; #X connect 7 0 18 0; #X connect 8 0 0 0; #X connect 8 1 22 0; #X connect 9 0 6 0; #X connect 10 0 4 0; #X connect 11 0 5 0; #X connect 12 0 9 0; #X connect 14 0 13 0; #X connect 15 0 10 0; #X connect 15 1 11 0; #X connect 15 2 12 0; #X connect 16 0 4 0; #X connect 17 0 5 0; #X connect 18 0 6 0; #X connect 19 0 15 0; #X connect 20 0 14 0; #X connect 21 0 8 1; #X coords 0 -1 1 1 85 20 1 470 120; #X restore -21 293 pd tremolo; #N canvas 1095 189 412 521 OSCrouter 0; #X obj -258 4 unpackOSC; #X obj -258 -23 udpreceive 8000; #X text -164 72 route pages; #X text -263 45 remove page changes; #X text -159 -22 Receive from port 8000; #X obj -246 113 s page1; #X obj -198 114 s page2; #X obj -145 114 s page3; #X obj -94 115 s page4; #X text -202 199 Send on port 9000; #X obj -237 356 udpsend; #X msg -221 305 disconnect; #X obj -259 193 loadbang; #X obj -133 310 packOSC; #X text -88 192 example of how to send data to phone; #X msg -84 236 send /1/fader2 \$1; #X msg -91 212 send /1/fader1 \$1; #X msg -94 166 0; #X msg -73 258 send /1/fader3 \$1; #X msg -66 282 send /1/fader4 \$1; #X obj -182 174 delay 100; #X obj -47 312 r \$0-udpmessage; #X obj -172 403 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj -183 335 spigot; #X text -190 220 retry every 5 sec; #X obj -244 243 spigot; #X obj -258 219 metro 5000; #X obj -164 238 * -1; #X obj -156 259 + 1; #X obj -192 244 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X text -81 373 connect to 42.3 for wifi; #X text -75 393 or 1.113 for direct LAN; #X msg -252 283 connect 192.168.2.138 9000; #X obj -258 29 route /1 /2 /3 /4 /5; #X obj -193 89 routeOSC /1 /2 /3 /4; #X obj -43 117 s tunerOSC; #X connect 0 0 33 0; #X connect 1 0 0 0; #X connect 10 0 22 0; #X connect 11 0 10 0; #X connect 12 0 20 0; #X connect 12 0 26 0; #X connect 12 0 32 0; #X connect 13 0 23 0; #X connect 15 0 13 0; #X connect 16 0 13 0; #X connect 17 0 19 0; #X connect 17 0 16 0; #X connect 17 0 15 0; #X connect 17 0 18 0; #X connect 18 0 13 0; #X connect 19 0 13 0; #X connect 20 0 17 0; #X connect 21 0 13 0; #X connect 22 0 23 1; #X connect 22 0 27 0; #X connect 23 0 10 0; #X connect 25 0 32 0; #X connect 26 0 25 0; #X connect 27 0 28 0; #X connect 28 0 29 0; #X connect 29 0 25 1; #X connect 32 0 10 0; #X connect 33 5 34 0; #X connect 34 0 5 0; #X connect 34 1 6 0; #X connect 34 2 7 0; #X connect 34 3 8 0; #X connect 34 4 35 0; #X coords 0 -1 1 1 95 20 1 -250 400; #X restore 80 49 pd OSCrouter; #N canvas 459 571 565 386 delay_5s 0; #X msg 124 172 listplugins; #X obj 119 319 print INFO; #X msg 140 210 info; #X msg 159 237 control #1 \$1; #X msg 264 273 control #2 \$1; #X obj 265 140 hsl 128 15 0.25 5 0 0 empty empty Delay_(Seconds)_0_5 -2 -8 0 10 -262144 -1 -1 2005 1; #X obj 266 172 hsl 128 15 0 1 0 0 empty empty Dry/Wet_0_1 -2 -8 0 10 -262144 -1 -1 12700 1; #X obj 86 43 loadbang; #X obj 119 282 plugin~ delay_5s; #X obj 243 80 * 5; #X obj 243 52 route fader1 fader2; #X obj 431 129 switch~; #X obj 473 102 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 192 351 throw~ mixer; #X obj 410 38 r \$0-push4; #X obj 244 24 r effect4; #X obj 161 82 r~ \$0-column4; #X msg 85 78 1; #X msg 125 78 1; #X obj 433 332 tgl 15 0 \$0-effecttempo empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 416 182 * 500; #X msg 512 167 0; #X obj 415 210 metro 500; #X obj 445 235 r \$0-currenteffect; #X obj 446 257 sel effect4; #X obj 433 304 spigot; #X msg 490 281 0; #X msg 455 282 1; #X connect 0 0 8 0; #X connect 2 0 8 0; #X connect 3 0 8 0; #X connect 4 0 8 0; #X connect 5 0 3 0; #X connect 5 0 20 0; #X connect 6 0 4 0; #X connect 7 0 17 0; #X connect 7 0 18 0; #X connect 8 0 1 0; #X connect 8 1 13 0; #X connect 9 0 5 0; #X connect 10 0 9 0; #X connect 10 1 6 0; #X connect 12 0 11 0; #X connect 12 0 21 0; #X connect 12 0 22 0; #X connect 14 0 12 0; #X connect 15 0 10 0; #X connect 16 0 8 1; #X connect 17 0 5 0; #X connect 18 0 6 0; #X connect 20 0 22 1; #X connect 21 0 19 0; #X connect 22 0 25 0; #X connect 23 0 24 0; #X connect 24 0 27 0; #X connect 24 1 26 0; #X connect 25 0 19 0; #X connect 26 0 25 1; #X connect 27 0 25 1; #X coords 0 -1 1 1 90 20 1 400 100; #X restore 90 232 pd delay_5s; #N canvas 484 176 755 435 reverb 0; #X msg 200 111 control #1 \$1; #X obj 316 143 hsl 128 15 0 10000 0 0 empty decay Decay_0_10000 -2 -8 0 10 -262144 -1 -1 5715 1; #X obj 63 24 loadbang; #X msg 208 136 control #2 \$1; #X msg 206 157 control #3 \$1; #X obj 119 281 plugin~ tap_reverb; #X obj 472 41 hsl 128 15 0 1 0 0 empty empty Comb_Filters_0_1 -2 -8 0 10 -262144 -1 -1 12700 1; #X obj 469 94 hsl 128 15 0 1 0 0 empty empty Allpass_Filters_0_1 -2 -8 0 10 -262144 -1 -1 0 1; #X obj 471 143 hsl 128 15 0 1 0 0 empty empty Bandpass_Filter_0_1 -2 -8 0 10 -262144 -1 -1 0 1; #X msg 471 61 control #4 \$1; #X msg 466 113 control #5 \$1; #X msg 467 166 control #6 \$1; #X obj 472 210 hsl 128 15 0 1 0 0 empty empty Enhanced_Stereo_0_1 -2 -8 0 10 -262144 -1 -1 0 1; #X obj 474 259 hsl 128 15 0 42.1 0 0 empty empty Reverb_Type_0_42.1 -2 -8 0 10 -262144 -1 -1 6033 1; #X msg 469 229 control #7 \$1; #X msg 470 282 control #8 \$1; #X obj 170 349 throw~ mixer; #X obj 652 136 switch~; #X obj 683 113 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 249 13 r effect12; #X obj 627 55 r \$0-push12; #X obj 273 79 * 10000; #X obj 322 80 * 42.1; #X obj 144 20 r~ \$0-column4; #X msg 58 58 4500; #X msg 103 62 20; #X msg 56 103 1; #X obj 204 41 route fader1 fader2 fader3 fader4 fader5; #X connect 0 0 5 0; #X connect 1 0 0 0; #X connect 2 0 24 0; #X connect 2 0 25 0; #X connect 2 0 26 0; #X connect 3 0 5 0; #X connect 4 0 5 0; #X connect 5 1 16 0; #X connect 6 0 9 0; #X connect 7 0 10 0; #X connect 8 0 11 0; #X connect 9 0 5 0; #X connect 10 0 5 0; #X connect 11 0 5 0; #X connect 12 0 14 0; #X connect 13 0 15 0; #X connect 14 0 5 0; #X connect 15 0 5 0; #X connect 18 0 17 0; #X connect 19 0 27 0; #X connect 20 0 18 0; #X connect 21 0 1 0; #X connect 22 0 13 0; #X connect 23 0 5 1; #X connect 24 0 1 0; #X connect 25 0 13 0; #X connect 26 0 6 0; #X connect 27 0 21 0; #X connect 27 1 22 0; #X connect 27 2 8 0; #X connect 27 3 6 0; #X connect 27 4 7 0; #X coords 0 -1 1 1 80 20 1 620 110; #X restore 99 294 pd reverb; #N canvas 651 586 579 392 vibrato 0; #X msg 307 192 control #1 \$1; #X msg 308 242 control #2 \$1; #X msg 309 298 control #3 \$1; #X msg 310 351 control #4 \$1; #X obj 308 167 hsl 128 15 0 30 0 0 empty empty Frequency_0_30 -2 -8 0 10 -262144 -1 -1 2117 1; #X obj 311 221 hsl 128 15 0 20 0 0 empty empty Depth_0_20 -2 -8 0 10 -262144 -1 -1 5080 1; #X obj 312 279 hsl 128 15 -90 20 0 0 empty empty Dry_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X obj 314 328 hsl 128 15 -90 20 0 0 empty empty Wet_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X obj 86 43 loadbang; #X obj 119 282 plugin~ tap_vibrato; #X obj 214 36 route fader1 fader2 fader3 fader4; #X obj 214 8 r effect2; #X obj 266 84 * 30; #X obj 321 84 * 20; #X obj 361 85 * 110; #X obj 406 86 * 110; #X obj 490 186 switch~; #X obj 533 102 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 466 32 r \$0-push2; #X obj 173 102 r~ \$0-column2; #X obj 192 351 throw~ \$0-set3; #X msg 86 87 5; #X msg 120 89 8; #X msg 105 118 0; #X obj 362 118 - 90; #X obj 405 120 - 90; #X connect 0 0 9 0; #X connect 1 0 9 0; #X connect 2 0 9 0; #X connect 3 0 9 0; #X connect 4 0 0 0; #X connect 5 0 1 0; #X connect 6 0 2 0; #X connect 7 0 3 0; #X connect 8 0 21 0; #X connect 8 0 22 0; #X connect 8 0 23 0; #X connect 9 1 20 0; #X connect 10 0 12 0; #X connect 10 1 13 0; #X connect 10 2 14 0; #X connect 10 3 15 0; #X connect 11 0 10 0; #X connect 12 0 4 0; #X connect 13 0 5 0; #X connect 14 0 24 0; #X connect 15 0 25 0; #X connect 17 0 16 0; #X connect 18 0 17 0; #X connect 19 0 9 1; #X connect 21 0 4 0; #X connect 22 0 5 0; #X connect 23 0 6 0; #X connect 23 0 7 0; #X connect 24 0 6 0; #X connect 25 0 7 0; #X coords 0 -1 1 1 80 20 1 470 100; #X restore -132 231 pd vibrato; #N canvas 346 85 580 451 pitch 0; #X msg 136 183 control #1 \$1; #X msg 141 204 control #2 \$1; #X msg 143 231 control #3 \$1; #X msg 147 255 control #4 \$1; #X obj 271 165 hsl 128 15 -12 12 0 0 empty empty Semitone_Shift_-12_12 -2 -8 0 10 -262144 -1 -1 6350 1; #X obj 271 196 hsl 128 15 -50 100 0 0 empty empty Rate_Shift_-50_100 -2 -8 0 10 -262144 -1 -1 8467 1; #X obj 271 226 hsl 128 15 -90 20 0 0 empty empty Dry_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X obj 272 256 hsl 128 15 -90 20 0 0 empty empty Wet_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X obj 86 43 loadbang; #X obj 119 282 plugin~ tap_pitch; #X obj 210 61 route fader1 fader2 fader3 fader4; #X obj 208 91 * 24; #X obj 209 117 - 12; #X obj 255 89 * 150; #X obj 259 115 - 50; #X obj 304 88 * 110; #X obj 301 112 - 90; #X obj 353 89 * 110; #X obj 350 113 - 90; #X obj 505 143 switch~; #X obj 507 122 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 480 62 r \$0-push6; #X obj 210 33 r effect6; #X obj 154 149 r~ \$0-column2; #X obj 217 315 throw~ \$0-set3; #X msg 83 79 0; #X msg 118 79 50; #X connect 0 0 9 0; #X connect 1 0 9 0; #X connect 2 0 9 0; #X connect 3 0 9 0; #X connect 4 0 0 0; #X connect 5 0 1 0; #X connect 6 0 2 0; #X connect 7 0 3 0; #X connect 8 0 25 0; #X connect 8 0 26 0; #X connect 9 1 24 0; #X connect 10 0 11 0; #X connect 10 1 13 0; #X connect 10 2 15 0; #X connect 10 3 17 0; #X connect 11 0 12 0; #X connect 12 0 4 0; #X connect 13 0 14 0; #X connect 14 0 5 0; #X connect 15 0 16 0; #X connect 16 0 6 0; #X connect 17 0 18 0; #X connect 18 0 7 0; #X connect 20 0 19 0; #X connect 21 0 20 0; #X connect 22 0 10 0; #X connect 23 0 9 1; #X connect 25 0 4 0; #X connect 25 0 6 0; #X connect 25 0 7 0; #X connect 26 0 5 0; #X coords 0 -1 1 1 75 20 1 450 120; #X restore -127 261 pd pitch; #N canvas 558 551 664 420 reflector 0; #X msg 137 191 control #1 \$1; #X obj 263 144 hsl 128 15 20 1600 0 0 empty empty Fragment_Length_20_1600 -2 -8 0 10 -262144 -1 -1 3858 1; #X obj 265 177 hsl 128 15 -90 20 0 0 empty empty Dry_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X obj 266 210 hsl 128 15 -90 20 0 0 empty empty Wet_Level_-90_20 -2 -8 0 10 -262144 -1 -1 10391 1; #X obj 86 43 loadbang; #X obj 119 282 plugin~ tap_reflector; #X msg 144 219 control #2 \$1; #X msg 153 244 control #3 \$1; #X obj 450 175 switch~; #X obj 511 153 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 259 51 route fader1 fader2 fader3 fader4; #X obj 256 80 * 1580; #X obj 258 111 + 20; #X obj 306 81 * 110; #X obj 305 109 - 90; #X obj 352 80 * 110; #X obj 351 108 - 90; #X msg 86 75 500; #X msg 121 72 0; #X obj 159 50 r~ \$0-column4; #X obj 192 351 throw~ mixer; #X obj 425 94 r \$0-push8; #X obj 259 23 r effect8; #X connect 0 0 5 0; #X connect 1 0 0 0; #X connect 2 0 6 0; #X connect 3 0 7 0; #X connect 4 0 17 0; #X connect 4 0 18 0; #X connect 5 1 20 0; #X connect 6 0 5 0; #X connect 7 0 5 0; #X connect 9 0 8 0; #X connect 10 0 11 0; #X connect 10 1 13 0; #X connect 10 2 15 0; #X connect 11 0 12 0; #X connect 12 0 1 0; #X connect 13 0 14 0; #X connect 14 0 2 0; #X connect 15 0 16 0; #X connect 16 0 3 0; #X connect 17 0 1 0; #X connect 18 0 2 0; #X connect 18 0 3 0; #X connect 19 0 5 1; #X connect 21 0 9 0; #X connect 22 0 10 0; #X coords 0 -1 1 1 100 20 1 430 150; #X restore 82 264 pd reflector; #N canvas 731 118 730 413 sigmoid 0; #X msg 295 166 control #1 \$1; #X msg 296 216 control #2 \$1; #X obj 296 141 hsl 128 15 -90 20 0 0 empty empty Pre_Gain_-90_20 -2 -8 0 10 -262144 -1 -1 10968 1; #X obj 299 195 hsl 128 15 -90 20 0 0 empty empty Post_Gain_-90_20 -2 -8 0 10 -262144 -1 -1 10968 1; #X obj 86 45 loadbang; #X obj 119 282 plugin~ tap_sigmoid; #X obj 271 39 route fader1 fader2 fader3 fader4; #X obj 273 79 * 110; #X obj 275 101 - 90; #X obj 317 77 * 110; #X obj 319 99 - 90; #X obj 498 187 switch~; #X obj 498 152 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 227 388 throw~ \$0-set2; #X obj 180 78 r~ \$0-column1; #X msg 90 75 5; #X obj 301 315 clip~ -0.5 0.5; #X obj 304 262 hsl 128 15 1 0 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 6350 1; #X obj 454 325 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 6350 1; #X obj 368 67 - 1; #X obj 368 95 * -1; #X obj 300 352 *~; #X floatatom 398 292 5 0 0 0 - - -; #X floatatom 287 287 5 0 0 0 - - -; #X obj 384 360 * -1; #X obj 213 339 *~; #X obj 432 354 - 1; #X floatatom 380 386 5 0 0 0 - - -; #X obj 251 305 *~ 5; #X msg 86 107 0.5; #X msg 87 134 -0.5; #X obj 271 11 r effect1; #X obj 438 98 r \$0-push1; #X connect 0 0 5 0; #X connect 1 0 5 0; #X connect 2 0 0 0; #X connect 3 0 1 0; #X connect 4 0 15 0; #X connect 4 0 29 0; #X connect 4 0 30 0; #X connect 5 1 25 0; #X connect 5 1 28 0; #X connect 6 0 7 0; #X connect 6 1 9 0; #X connect 6 2 19 0; #X connect 6 3 18 0; #X connect 7 0 8 0; #X connect 8 0 2 0; #X connect 9 0 10 0; #X connect 10 0 3 0; #X connect 12 0 11 0; #X connect 14 0 5 1; #X connect 15 0 2 0; #X connect 15 0 3 0; #X connect 16 0 21 0; #X connect 17 0 22 0; #X connect 18 0 21 1; #X connect 18 0 26 0; #X connect 19 0 20 0; #X connect 19 0 23 0; #X connect 20 0 17 0; #X connect 21 0 13 0; #X connect 22 0 16 2; #X connect 23 0 16 1; #X connect 24 0 25 1; #X connect 24 0 27 0; #X connect 25 0 13 0; #X connect 26 0 24 0; #X connect 28 0 16 0; #X connect 29 0 17 0; #X connect 29 0 18 0; #X connect 30 0 16 1; #X connect 31 0 6 0; #X connect 32 0 12 0; #X coords 0 -1 1 1 85 20 1 430 150; #X restore -251 231 pd sigmoid; #N canvas 56 512 576 421 tubewarmth 0; #X msg 124 172 listplugins; #X obj 119 319 print INFO; #X msg 140 210 info; #X msg 287 100 control #1 \$1; #X msg 287 157 control #2 \$1; #X obj 288 75 hsl 128 15 0.1 10 0 0 empty empty Drive_0.1_10 -2 -8 0 10 -262144 -1 -1 6286 1; #X obj 290 136 hsl 128 15 -10 10 0 0 empty empty Tape--Tube_Blend_-10_10 -2 -8 0 10 -262144 -1 -1 6350 1; #X obj 86 43 loadbang; #X obj 119 282 plugin~ tap_tubewarmth; #X obj 232 35 route fader1 fader2 fader3 fader4; #X obj 232 7 r effect5; #X obj 467 230 switch~; #X obj 483 203 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 442 149 r \$0-push5; #X obj 231 66 * 10; #X obj 241 93 * 20; #X obj 241 114 - 10; #X obj 192 351 throw~ \$0-set2; #X obj 150 85 r~ \$0-column1; #X msg 109 73 5; #X msg 75 73 0; #X connect 0 0 8 0; #X connect 2 0 8 0; #X connect 3 0 8 0; #X connect 4 0 8 0; #X connect 5 0 3 0; #X connect 6 0 4 0; #X connect 7 0 19 0; #X connect 7 0 20 0; #X connect 8 0 1 0; #X connect 8 1 17 0; #X connect 9 0 14 0; #X connect 9 1 15 0; #X connect 10 0 9 0; #X connect 12 0 11 0; #X connect 13 0 12 0; #X connect 14 0 5 0; #X connect 15 0 16 0; #X connect 16 0 6 0; #X connect 18 0 8 1; #X connect 19 0 5 0; #X connect 20 0 6 0; #X coords 0 -1 1 1 100 20 1 400 200; #X restore -265 261 pd tubewarmth; #N canvas 365 160 845 552 phaser 0; #X obj 510 25 hsl 128 15 0 10 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 0 1; #X obj 348 132 *~ 2; #X obj 348 152 +~ 2; #X obj 387 174 *~ 2; #X obj 386 197 +~ 2; #X obj 134 106 delwrite~ phase2 100; #X obj 386 223 vd~ phase2; #X obj 387 130 wrap~; #X obj 357 75 phasor~; #X obj 386 109 +~ 0.5; #X obj 348 109 cos~; #X obj 387 150 cos~; #X obj 513 122 hsl 128 15 0 3 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 0 1; #X obj 386 246 *~ 0.8; #X obj 348 307 *~ 0.8; #X obj 542 241 hsl 128 15 -0.9 0.9 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 0 1; #X text 262 40 <-- Write to delay lines; #X text 458 220 <-- Read from delay line 2; #X text 452 284 <-- Read from delay line 1; #X obj 349 284 vd~ phase1; #X obj 135 46 delwrite~ phase1 100; #X text 420 75 <-- Low Frequency Oscillator (LFO); #X floatatom 507 49 5 0 0 0 - - -; #X floatatom 511 148 5 0 0 0 - - -; #X floatatom 539 262 5 0 0 0 - - -; #X text 650 21 <-- Speed (try 0.7); #X text 655 120 <-- Depth (try 2.4); #X text 682 241 <-- Feedback (try -0.3); #X text 453 415 comment; #X obj 90 -61 r~ \$0-column2; #X obj 457 334 throw~ \$0-set3; #X obj 350 -26 route fader1 fader2 fader3 fader4; #X obj 350 -54 r effect10; #X obj 347 -1 * 10; #X obj 397 0 * 3; #X obj 441 3 * 1.8; #X obj 441 30 - 0.9; #X obj 757 154 switch~; #X obj 767 102 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 732 73 r \$0-push10; #X connect 0 0 8 0; #X connect 0 0 22 0; #X connect 1 0 2 0; #X connect 2 0 19 0; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 6 0 13 0; #X connect 6 0 30 0; #X connect 7 0 11 0; #X connect 8 0 9 0; #X connect 8 0 10 0; #X connect 9 0 7 0; #X connect 10 0 1 0; #X connect 11 0 3 0; #X connect 12 0 1 1; #X connect 12 0 3 1; #X connect 12 0 2 1; #X connect 12 0 4 1; #X connect 12 0 23 0; #X connect 13 0 5 0; #X connect 14 0 20 0; #X connect 15 0 14 1; #X connect 15 0 13 1; #X connect 15 0 24 0; #X connect 19 0 14 0; #X connect 19 0 30 0; #X connect 29 0 5 0; #X connect 29 0 20 0; #X connect 31 0 33 0; #X connect 31 1 34 0; #X connect 31 2 35 0; #X connect 32 0 31 0; #X connect 33 0 0 0; #X connect 34 0 12 0; #X connect 35 0 36 0; #X connect 36 0 15 0; #X connect 38 0 37 0; #X connect 39 0 38 0; #X coords 0 -1 1 1 85 20 1 700 100; #X restore -137 292 pd phaser; #N canvas 48 464 638 479 autowah 0; #X obj 31 389 vcf~; #X floatatom 122 353 5 0 0 0 - - -; #X obj 122 220 vsl 15 128 0 20 0 0 empty empty empty 0 -9 0 10 -262144 -1 -1 3366 1; #X obj 97 31 +~ 1; #X obj 98 52 *~ 0.5; #X obj 97 10 osc~ 2; #X obj 199 87 hsl 128 15 700 6000 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 1198 1; #X obj 153 160 hsl 128 15 0 700 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 3629 1; #X floatatom 150 179 6 0 0 0 - - -; #X floatatom 151 121 6 0 0 0 - - -; #X obj 151 102 -; #X obj 160 62 bang; #X obj 51 186 +~ 200; #X obj 50 104 *~ 1500; #X text 148 27 <-- LFO (Low-Frequency Oscillator; #X text 332 85 <-- Maximum of the freq. range; #X text 286 157 <-- Minimum of the freq. range; #X text 159 310 <-- "Q"; #X text 70 390 <-- Voltage-Controlled band-pass filter; #X obj 102 -19 hsl 128 15 0.5 4 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 5443 1; #X obj 194 211 loadbang; #X msg 192 236 5.3; #X obj 10 -9 r~ \$0-column3; #X obj 32 426 throw~ \$0-set4; #X obj 280 2 route fader1 fader2 fader3 fader4; #X obj 240 -14 * 3.5; #X obj 232 9 + 0.5; #X obj 322 44 * 5300; #X obj 320 67 + 700; #X obj 259 47 * 700; #X obj 427 44 * 20; #X obj 280 -26 r effect7; #X obj 522 128 switch~; #X obj 567 102 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 497 47 r \$0-push7; #X msg 230 239 200; #X msg 263 243 2; #X msg 230 272 1200; #X obj 380 185 inv; #X obj 426 192 * 500; #X msg 553 196 0; #X obj 425 220 metro 500; #X obj 432 341 tgl 15 0 \$0-effecttempo empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 444 244 r \$0-currenteffect; #X obj 432 313 spigot; #X msg 489 290 0; #X msg 454 291 1; #X obj 445 266 sel effect7; #X connect 0 0 23 0; #X connect 0 1 23 0; #X connect 2 0 1 0; #X connect 2 0 0 2; #X connect 3 0 4 0; #X connect 4 0 13 0; #X connect 5 0 3 0; #X connect 6 0 10 0; #X connect 7 0 8 0; #X connect 7 0 10 1; #X connect 7 0 11 0; #X connect 7 0 12 1; #X connect 10 0 9 0; #X connect 10 0 13 1; #X connect 11 0 10 0; #X connect 12 0 0 1; #X connect 13 0 12 0; #X connect 19 0 5 0; #X connect 19 0 38 0; #X connect 20 0 21 0; #X connect 20 0 35 0; #X connect 20 0 36 0; #X connect 20 0 37 0; #X connect 21 0 2 0; #X connect 22 0 0 0; #X connect 24 0 25 0; #X connect 24 1 29 0; #X connect 24 2 27 0; #X connect 24 3 30 0; #X connect 25 0 26 0; #X connect 26 0 19 0; #X connect 27 0 28 0; #X connect 28 0 6 0; #X connect 29 0 7 0; #X connect 30 0 2 0; #X connect 31 0 24 0; #X connect 33 0 32 0; #X connect 33 0 40 0; #X connect 33 0 41 0; #X connect 34 0 33 0; #X connect 35 0 7 0; #X connect 36 0 19 0; #X connect 37 0 6 0; #X connect 38 0 39 0; #X connect 39 0 41 1; #X connect 40 0 42 0; #X connect 41 0 44 0; #X connect 43 0 47 0; #X connect 44 0 42 0; #X connect 45 0 44 1; #X connect 46 0 44 1; #X connect 47 0 46 0; #X connect 47 1 45 0; #X coords 0 -1 1 1 85 20 1 500 100; #X restore -21 261 pd autowah; #N canvas 485 359 765 566 violin 0; #X floatatom 383 254 5 0 0 0 - - -; #X obj 163 315 >; #X obj 383 119 vsl 15 128 0 100 0 0 empty empty empty 0 -9 0 10 -262144 -1 -1 5461 1; #X obj 163 359 sel 1; #X obj 163 338 change; #X obj 99 473 line~; #X obj 83 494 *~; #X obj 163 384 t b b; #X obj 163 293 env~ 256 128; #X obj 57 115 delwrite~ violin 10; #X obj 57 139 delread~ violin 10; #X obj 443 21 loadbang; #X msg 433 74 43; #X msg 228 432 0 5; #X obj 133 413 del 6; #X obj 573 216 vsl 15 128 0 600 0 0 empty empty empty 0 -9 0 10 -262144 -1 -1 6350 1; #X obj 133 433 pack 1 200; #X floatatom 574 362 5 0 0 0 - - -; #X msg 466 75 300; #X text 409 150 <-- Sensitivity; #X text 408 165 (adjust to your fingers; #X text 410 179 or to your instrument); #X text 499 263 Attack -->; #X text 259 303 <-- Measures the amplitude of; #X text 282 317 the input \, and send a bang; #X text 281 332 if it is greater than the; #X text 265 436 <-- Turn the volume all the way down; #X text 281 346 sensitivity threshold; #X text 279 361 (attack detected).; #X text 264 451 when an attack is detected \, and than ramp; #X text 264 466 slowly up again.; #X text 182 117 <-- Buffer the input; #X text 182 133 to give [env~] enough time; #X text 183 150 to detect the attack.; #X text 328 546 GuitarExtended \, Pierre Massat \, 2012; #X obj 58 53 r~ \$0-column1; #X obj 69 522 throw~ \$0-set2; #X obj 221 61 route fader1 fader2 fader3 fader4; #X obj 657 147 switch~; #X obj 667 102 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 222 99 * 100; #X obj 274 95 * 600; #X obj 635 62 r \$0-push9; #X obj 221 33 r effect9; #X connect 0 0 1 1; #X connect 1 0 4 0; #X connect 2 0 0 0; #X connect 3 0 7 0; #X connect 4 0 3 0; #X connect 5 0 6 1; #X connect 6 0 36 0; #X connect 7 0 14 0; #X connect 7 1 13 0; #X connect 8 0 1 0; #X connect 10 0 6 0; #X connect 11 0 12 0; #X connect 11 0 18 0; #X connect 12 0 2 0; #X connect 13 0 5 0; #X connect 14 0 16 0; #X connect 15 0 17 0; #X connect 16 0 5 0; #X connect 17 0 16 1; #X connect 18 0 15 0; #X connect 35 0 8 0; #X connect 35 0 9 0; #X connect 37 0 40 0; #X connect 37 1 41 0; #X connect 39 0 38 0; #X connect 40 0 2 0; #X connect 41 0 15 0; #X connect 42 0 39 0; #X connect 43 0 37 0; #X coords 0 -1 1 1 85 20 1 600 100; #X restore -249 293 pd violin; #N canvas 67 136 1095 818 hexxciter 0; #X obj -272 318 delwrite~ G09-del 5000; #X obj -99 26 env~; #X floatatom -100 51 5 0 0 0 - - -; #X obj -100 101 change; #X obj -100 124 == 1; #X floatatom -52 125 5 0 0 0 - - -; #X obj 103 182 sel 1; #X obj 358 544 rev1~; #X obj 499 15 loadbang; #X floatatom 69 104 5 0 0 0 - - -; #X obj 400 543 rev1~; #X msg 170 242 0; #X obj 103 209 t b b; #X obj -271 297 *~; #X obj -255 273 line~; #X obj -255 253 pack 0 5; #X obj -185 553 line~; #X obj -185 532 pack 0 5; #X obj -243 571 *~; #X obj -185 511 expr 1-$f1; #X obj -242 483 *~ 0.98; #X obj 360 574 *~; #X obj 606 547 line~; #X obj 604 514 pack 0 5; #X obj 605 368 vsl 15 128 0.001 1 1 0 empty empty Reverb_volume 0 -9 0 10 -262144 -1 -1 12044 1; #X obj -242 409 line~; #X obj -242 390 pack 0 5; #X obj -242 430 vd~ G09-del 60; #X obj -25 426 hsl 128 15 50 150 0 0 empty length_delay Length_of_sustain_delay -2 -8 0 10 -262144 -1 -1 0 1; #N canvas 40 60 989 692 pitchshifter 0; #X obj 125 393 *~; #X obj 248 330 line~; #X floatatom 248 148 0 0 0 0 - - -; #X obj 248 304 pack 0 200; #X obj 189 224 * 0.001; #X obj 357 400 line~; #X obj 357 375 pack 0 200; #X floatatom 357 324 0 0 0 0 - - -; #X obj 357 298 r delay; #X obj 125 419 +~; #X obj 62 445 cos~; #X obj 62 472 *~; #X obj 62 507 +~; #X obj 149 352 wrap~; #X obj 294 395 *~; #X obj 294 428 +~; #X obj 231 455 cos~; #X obj 231 482 *~; #X obj 149 325 +~ 0.5; #X obj 62 393 -~ 0.5; #X obj 62 419 *~ 0.5; #X obj 231 394 -~ 0.5; #X obj 231 427 *~ 0.5; #X text 135 128 <-- transposition; #X text 134 141 (halftones); #X text 125 198 speed; #X text 124 212 change; #X text 292 147 <--window (msec); #X text 97 287 tape head; #X obj 62 351 phasor~; #X obj 357 351 max 1.5; #X text 360 257 delay; #X text 357 275 (msec); #X text 98 300 rotation freq; #X obj 125 445 vd~ G09-del; #X obj 294 457 vd~ G09-del; #X obj 62 152 *~ 0.05776; #X obj 62 178 exp~; #X obj 62 231 -~ 1; #X obj 62 257 *~ -1; #X obj 62 294 /~; #X obj 179 264 sig~; #X obj 248 178 max 1; #X obj 62 125 line~; #X msg 248 121 100; #X obj 132 250 t b f; #X obj 88 562 outlet~; #X obj 63 55 inlet; #X obj 251 69 inlet; #X text 536 114 Based on Miller Puckette's G09.pitchshift.pd example ; #X text 536 131 (slightly adapted with signal objects for smooth transposition). ; #X connect 0 0 9 0; #X connect 1 0 0 1; #X connect 1 0 14 1; #X connect 2 0 42 0; #X connect 3 0 1 0; #X connect 4 0 45 0; #X connect 5 0 9 1; #X connect 5 0 15 1; #X connect 6 0 5 0; #X connect 7 0 30 0; #X connect 8 0 7 0; #X connect 9 0 34 0; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 12 0 46 0; #X connect 13 0 14 0; #X connect 13 0 21 0; #X connect 14 0 15 0; #X connect 15 0 35 0; #X connect 16 0 17 0; #X connect 17 0 12 1; #X connect 18 0 13 0; #X connect 19 0 20 0; #X connect 20 0 10 0; #X connect 21 0 22 0; #X connect 22 0 16 0; #X connect 29 0 0 0; #X connect 29 0 19 0; #X connect 29 0 18 0; #X connect 30 0 6 0; #X connect 34 0 11 1; #X connect 35 0 17 1; #X connect 36 0 37 0; #X connect 37 0 38 0; #X connect 38 0 39 0; #X connect 39 0 40 0; #X connect 40 0 29 0; #X connect 41 0 40 1; #X connect 42 0 4 0; #X connect 42 0 3 0; #X connect 43 0 36 0; #X connect 44 0 2 0; #X connect 45 0 40 0; #X connect 45 1 41 0; #X connect 47 0 43 0; #X connect 48 0 44 0; #X restore 110 278 pd pitchshifter; #X obj -25 354 hsl 128 15 5 50 0 0 empty empty Attack-Decay -2 -8 0 10 -262144 -1 -1 12700 1; #X floatatom -29 387 5 0 0 0 - - -; #X obj 72 63 hsl 300 15 0 15 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 0 1; #X obj 429 380 hsl 128 15 0 80 0 0 empty empty Reverb_1_-_Tail -2 -8 0 10 -262144 -1 -1 7937 1; #X obj 429 456 hsl 128 15 0 80 0 0 empty empty Reverb_2_-_Tail -2 -8 0 10 -262144 -1 -1 7937 1; #X floatatom -28 450 5 0 0 0 - - -; #X floatatom 426 404 5 0 0 0 - - -; #X floatatom 426 482 5 0 0 0 - - -; #X obj 364 469 *~ 1; #X msg 87 241 -18 9000; #X msg 200 207 set -18 \$1; #X obj 203 184 hsl 300 15 1000 9000 0 0 empty empty Speed_of_the_pitchshifter -2 -8 0 10 -262144 -1 -1 29900 1; #X obj -100 75 > 78; #X text 156 87 Adjust the threshold of the trigger; #X text 155 117 to change the minimum value in the [+ 70]; #X text 155 130 object.); #X text 153 102 (Depends on your instrument. You may want; #X text 105 103 comment; #X text -46 482 Parameters of the sustain; #X text 468 314 Parameters of the reverb; #X text 333 609 GuitarExtended \, Pierre Massat \, 2012; #X text 331 622 (Adapted from the pitchshift example by Miller Puckette. ; #X text 332 635 Original idea by Lorenzo Sutton.); #X obj 69 83 + 50; #X obj 674 155 switch~; #X obj 684 103 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj -20 628 throw~ \$0-set3; #X obj -151 -19 r~ \$0-column2; #X msg 408 299 50; #X msg 626 323 0.7; #X msg 233 148 9000; #X obj 649 74 r \$0-push14; #X obj 101 -18 r effect14; #X obj 86 39 * 15; #X obj 114 137 * 8000; #X obj 156 164 + 1000; #X obj 161 37 * 45; #X obj -16 297 + 5; #X obj 224 35 * 100; #X obj 15 382 + 50; #X obj 101 10 route fader1 fader2 fader3 fader4 fader5; #X connect 1 0 2 0; #X connect 2 0 42 0; #X connect 3 0 4 0; #X connect 3 0 5 0; #X connect 3 0 15 0; #X connect 3 0 19 0; #X connect 4 0 6 0; #X connect 6 0 12 0; #X connect 7 0 21 0; #X connect 8 0 29 1; #X connect 8 0 60 0; #X connect 8 0 58 0; #X connect 8 0 59 0; #X connect 9 0 42 1; #X connect 10 0 21 0; #X connect 11 0 29 0; #X connect 12 0 39 0; #X connect 12 1 11 0; #X connect 13 0 0 0; #X connect 14 0 13 1; #X connect 15 0 14 0; #X connect 16 0 18 1; #X connect 17 0 16 0; #X connect 18 0 0 0; #X connect 19 0 17 0; #X connect 20 0 18 0; #X connect 21 0 56 0; #X connect 22 0 21 1; #X connect 23 0 22 0; #X connect 24 0 23 0; #X connect 25 0 27 0; #X connect 26 0 25 0; #X connect 27 0 20 0; #X connect 28 0 26 0; #X connect 28 0 35 0; #X connect 29 0 38 0; #X connect 30 0 31 0; #X connect 30 0 15 1; #X connect 30 0 17 1; #X connect 32 0 53 0; #X connect 33 0 7 1; #X connect 33 0 36 0; #X connect 34 0 10 1; #X connect 34 0 37 0; #X connect 38 0 7 0; #X connect 38 0 10 0; #X connect 39 0 29 0; #X connect 40 0 39 0; #X connect 41 0 40 0; #X connect 42 0 3 0; #X connect 53 0 9 0; #X connect 55 0 54 0; #X connect 57 0 1 0; #X connect 57 0 13 0; #X connect 58 0 30 0; #X connect 58 0 28 0; #X connect 58 0 33 0; #X connect 58 0 34 0; #X connect 59 0 24 0; #X connect 60 0 41 0; #X connect 61 0 55 0; #X connect 62 0 70 0; #X connect 63 0 32 0; #X connect 64 0 65 0; #X connect 65 0 41 0; #X connect 66 0 67 0; #X connect 67 0 30 0; #X connect 68 0 69 0; #X connect 69 0 28 0; #X connect 70 0 63 0; #X connect 70 1 64 0; #X connect 70 2 66 0; #X connect 70 3 68 0; #X connect 70 4 24 0; #X coords 0 -1 1 1 100 20 1 600 100; #X restore -154 321 pd hexxciter; #X obj 78 22 import mrpeach; #N canvas 647 91 618 480 moog 0; #X obj 86 43 loadbang; #X obj 504 151 switch~; #X obj 537 123 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 225 32 route fader1 fader2 fader3 fader4; #X obj 225 4 r effect15; #X obj 480 62 r \$0-push15; #X obj 173 126 r~ \$0-column3; #X obj 226 321 throw~ \$0-set4; #X obj 190 231 moog~; #X obj 192 257 hip~ 5; #X obj 190 282 clip~ -0.5 0.5; #X obj 201 206 line~; #X obj 275 207 hsl 128 15 200 8000 0 0 empty empty cutoff -2 -8 0 10 -262144 -1 -1 0 1; #X obj 388 182 + 200; #X obj 385 154 * 7800; #X obj 291 127 * 3.5; #X obj 236 168 hsl 128 15 0 3.5 0 0 empty empty resonance -2 -8 0 10 -262144 -1 -1 0 1; #X msg 272 234 \$1 10; #X connect 2 0 1 0; #X connect 3 0 15 0; #X connect 3 1 14 0; #X connect 4 0 3 0; #X connect 5 0 2 0; #X connect 6 0 8 0; #X connect 8 0 9 0; #X connect 9 0 10 0; #X connect 10 0 7 0; #X connect 11 0 8 1; #X connect 12 0 17 0; #X connect 13 0 12 0; #X connect 14 0 13 0; #X connect 15 0 16 0; #X connect 16 0 8 2; #X connect 17 0 11 0; #X coords 0 -1 1 1 85 20 1 470 120; #X restore -21 322 pd moog; #N canvas 471 129 1137 776 RingMod 0; #X obj 68 571 *~; #X obj 107 401 osc~; #X obj 240 487 line~; #X obj 241 467 pack 0 5; #X obj 632 56 loadbang; #X obj 106 142 phasor~; #X obj 103 224 tabread4~ waveform_square; #X obj 102 247 +~ 0.5; #X msg 642 159 \; waveform_sine sinesum 2051 1 \; waveform_sine normalize 0.5 \;; #X obj 812 603 table waveform_square; #X obj 812 626 table waveform_sine; #X obj 95 505 *~; #X obj 217 513 *~; #X obj 115 480 line~; #X obj 116 460 pack 0 5; #X obj 127 438 expr 1-$f1; #X obj 358 398 tgl 45 0 empty toggle_man_lfo Manual_/_LFO 0 -5 0 10 -4034 -1 -1 0 1; #X text 683 663 Pierre Massat \, GuitarExtended \, 2012; #X obj 109 330 *~; #X obj 108 365 +~; #X obj 353 250 cnv 15 200 100 empty empty MANUAL 20 12 0 14 -4034 -66577 0; #X obj 361 297 mtof; #X obj 367 275 hsl 128 15 0 127 0 0 empty manual_freq empty -2 -8 0 10 -262144 -1 -1 5000 1; #X obj 361 320 osc~; #X obj 353 26 cnv 15 200 200 empty empty LFO 20 12 0 14 -260097 -66577 0; #X obj 429 134 hsl 100 15 0 127 0 0 empty lfo_upper Upper_limit -2 -8 0 10 -262144 -1 -1 3898 1; #X obj 427 98 hsl 100 15 0 127 0 0 empty lfo_lower Lower_limit -2 -8 0 10 -262144 -1 -1 2339 1; #X floatatom 361 129 6 0 0 0 - - -; #X floatatom 368 95 6 0 0 0 - - -; #X obj 252 135 -; #X obj 251 103 bang; #X obj 319 129 mtof; #X obj 297 106 mtof; #X obj 248 168 max 1; #X obj 296 232 min; #X obj 167 287 line~; #X obj 168 267 pack 0 5; #X obj 156 344 line~; #X obj 157 324 pack 0 5; #X obj 432 58 hsl 100 15 0 30 0 0 empty lfo_freq LFO_frequency/Man. -2 -8 0 10 -262144 -1 -1 1320 1; #X msg 360 187 set waveform_square; #X msg 360 207 set waveform_sine; #N canvas 0 0 450 300 random_manual 0; #X obj 163 115 random 120; #X obj 164 143 + 10; #X obj 162 236 s manual_freq; #X obj 162 197 line; #X obj 178 171 pack 0 0; #X floatatom 216 216 5 0 0 0 - - -; #X floatatom 268 194 5 0 0 0 - - -; #X obj 233 141 + 50; #X obj 163 91 metro 3000; #X obj 235 115 random 2950; #X obj 202 17 inlet; #X connect 0 0 1 0; #X connect 1 0 4 0; #X connect 3 0 5 0; #X connect 3 0 2 0; #X connect 4 0 3 0; #X connect 7 0 4 1; #X connect 8 0 0 0; #X connect 8 0 9 0; #X connect 9 0 6 0; #X connect 9 0 7 0; #X connect 10 0 8 0; #X restore 557 460 pd random_manual; #N canvas 0 0 607 397 random_LFO 0; #X obj 61 140 + 10; #X obj 59 194 line; #X obj 75 168 pack 0 0; #X floatatom 113 213 5 0 0 0 - - -; #X floatatom 165 191 5 0 0 0 - - -; #X obj 130 138 + 50; #X obj 132 112 random 2950; #X obj 233 113 random 120; #X obj 231 261 line; #X obj 247 235 pack 0 0; #X floatatom 285 280 5 0 0 0 - - -; #X floatatom 338 192 5 0 0 0 - - -; #X obj 303 139 + 50; #X obj 305 113 random 2950; #X obj 231 300 s lfo_lower; #X obj 60 112 random 31; #X obj 59 233 s lfo_freq; #X obj 157 18 inlet; #X obj 383 113 random 120; #X obj 384 141 + 10; #X obj 382 195 line; #X obj 398 169 pack 0 0; #X floatatom 436 214 5 0 0 0 - - -; #X floatatom 488 192 5 0 0 0 - - -; #X obj 453 139 + 50; #X obj 383 89 metro 3000; #X obj 455 113 random 2950; #X obj 382 234 s lfo_upper; #X obj 247 175 *; #X obj 233 132 + 10; #X obj 246 154 / 130; #X obj 249 210 min; #X obj 281 179 bang; #X obj 60 88 metro 2500; #X obj 233 89 metro 2400; #X connect 1 0 3 0; #X connect 1 0 16 0; #X connect 2 0 1 0; #X connect 5 0 2 1; #X connect 6 0 4 0; #X connect 6 0 5 0; #X connect 7 0 29 0; #X connect 8 0 10 0; #X connect 8 0 14 0; #X connect 9 0 8 0; #X connect 12 0 9 1; #X connect 13 0 11 0; #X connect 13 0 12 0; #X connect 15 0 0 0; #X connect 15 0 2 0; #X connect 17 0 25 0; #X connect 17 0 33 0; #X connect 17 0 34 0; #X connect 18 0 19 0; #X connect 18 0 28 1; #X connect 18 0 31 1; #X connect 18 0 32 0; #X connect 19 0 21 0; #X connect 20 0 22 0; #X connect 20 0 27 0; #X connect 21 0 20 0; #X connect 24 0 21 1; #X connect 25 0 18 0; #X connect 25 0 26 0; #X connect 26 0 23 0; #X connect 26 0 24 0; #X connect 28 0 31 0; #X connect 29 0 30 0; #X connect 30 0 28 0; #X connect 31 0 9 0; #X connect 32 0 31 0; #X connect 33 0 6 0; #X connect 33 0 15 0; #X connect 34 0 7 0; #X connect 34 0 13 0; #X restore 455 460 pd random_LFO; #X obj 456 404 tgl 40 0 empty empty Random_LFO 0 -5 0 10 -258113 -1 -1 0 1; #X obj 557 406 tgl 40 0 empty empty Random_Manual 0 -5 0 10 -4160 -1 -1 0 1; #N canvas 5 60 562 483 equal_power_crossfade 0; #X obj 33 48 inlet~; #X obj 244 58 inlet; #X obj 33 332 outlet~; #X obj 319 54 loadbang; #X msg 319 74 0.5; #X obj 49 194 expr cos($f1 * 3.14159 / 2); #X obj 244 194 expr sin($f1 * 3.14159 / 2); #X obj 244 134 clip 0 1; #N canvas 0 0 450 300 pan_core 0; #X obj 21 106 inlet~; #X obj 226 126 inlet; #X obj 80 453 *~; #X obj 144 497 outlet~; #X obj 210 452 *~; #X obj 226 428 line~; #X obj 96 428 line~; #X obj 96 127 inlet; #X obj 179 104 inlet~; #X text 244 544 comment; #X obj 96 389 pack f 5; #X obj 226 389 pack f 5; #X text 223 540 Hans-Christoph Steiner \, 2004; #X text 223 526 Adapted from [pan_core~]; #X connect 0 0 2 0; #X connect 1 0 11 0; #X connect 2 0 3 0; #X connect 4 0 3 0; #X connect 5 0 4 1; #X connect 6 0 2 1; #X connect 7 0 10 0; #X connect 8 0 4 0; #X connect 10 0 6 0; #X connect 11 0 5 0; #X restore 39 266 pd pan_core; #X text 256 437 Adapted from [equal_power_pan~] \, Hans-Christoph Steiner \, 2004; #X text 411 449 comment; #X obj 128 46 inlet~; #X connect 0 0 8 0; #X connect 1 0 7 0; #X connect 3 0 4 0; #X connect 4 0 7 0; #X connect 5 0 8 1; #X connect 6 0 8 3; #X connect 7 0 5 0; #X connect 7 0 6 0; #X connect 8 0 2 0; #X connect 11 0 8 2; #X restore 35 601 pd equal_power_crossfade; #X obj 360 518 hsl 128 25 0 1 0 0 empty crossfade Dry_---_Wet_(crossfade) -2 -8 0 10 -257985 -1 -1 6350 1; #X obj 106 162 *~ 2048; #X obj 106 179 +~ 1; #X msg 643 85 \; waveform_square sinesum 2051 1 0 0.333333 0 0.2 0 0.142857 0 0.111111 0 0.090909 0 0.076923 0 0.066666 0 0.058823 0 0.052631 0 0.047619 0 0.043478 0 0.04 0 0.037037 \; waveform_square normalize 0.5 \;; #X text 189 600 <-- Abstraction to crossfade smoothly between dry and wet.; #X text 834 335 <-- Control the patch using; #X text 852 352 these toggles and sliders.; #X text 771 27 <-- Create the LFO waveforms and; #X text 795 42 initialize a bunch of parameters.; #X obj 289 164 moses 1; #X obj 29 636 throw~ \$0-set2; #X obj 28 10 r~ \$0-column1; #X obj 386 53 * 30; #X obj 170 42 * 127; #X obj 217 39 * 127; #X obj 704 36 switch~; #X obj 667 13 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 132 -23 r effect13; #X obj 634 -26 r \$0-push13; #X obj 132 5 route fader1 fader2 fader3 fader4; #X msg 642 211 \; manual_freq 50 \; lfo_freq 4 \; lfo_upper 50 \; lfo_lower 30 \; toggle_man_lfo 0 \; crossfade 0.5 \;; #X connect 0 0 46 1; #X connect 1 0 11 0; #X connect 2 0 12 1; #X connect 3 0 2 0; #X connect 4 0 50 0; #X connect 4 0 8 0; #X connect 4 0 67 0; #X connect 5 0 48 0; #X connect 6 0 7 0; #X connect 7 0 18 0; #X connect 11 0 0 1; #X connect 12 0 0 1; #X connect 13 0 11 1; #X connect 14 0 13 0; #X connect 15 0 14 0; #X connect 16 0 3 0; #X connect 16 0 15 0; #X connect 18 0 19 0; #X connect 19 0 1 0; #X connect 21 0 23 0; #X connect 22 0 21 0; #X connect 23 0 12 0; #X connect 25 0 32 0; #X connect 26 0 31 0; #X connect 29 0 33 0; #X connect 30 0 29 0; #X connect 31 0 29 1; #X connect 31 0 30 0; #X connect 31 0 34 0; #X connect 32 0 29 0; #X connect 32 0 34 1; #X connect 33 0 28 0; #X connect 33 0 36 0; #X connect 34 0 27 0; #X connect 34 0 38 0; #X connect 35 0 18 1; #X connect 36 0 35 0; #X connect 37 0 19 1; #X connect 38 0 37 0; #X connect 39 0 5 0; #X connect 40 0 6 0; #X connect 41 0 6 0; #X connect 44 0 43 0; #X connect 45 0 42 0; #X connect 46 0 57 0; #X connect 47 0 46 2; #X connect 48 0 49 0; #X connect 49 0 6 0; #X connect 56 0 40 0; #X connect 56 1 41 0; #X connect 58 0 0 0; #X connect 58 0 46 0; #X connect 59 0 39 0; #X connect 60 0 26 0; #X connect 61 0 25 0; #X connect 63 0 62 0; #X connect 64 0 66 0; #X connect 65 0 63 0; #X connect 66 0 59 0; #X connect 66 1 60 0; #X connect 66 2 61 0; #X connect 66 3 47 0; #X coords 0 -1 1 1 85 20 1 600 10; #X restore -249 321 pd RingMod; #N canvas 188 306 921 622 DownStairs 0; #X obj 33 122 delwrite~ del1 3000; #X obj 248 432 vd~ del1; #X obj 711 127 *~; #X obj 726 107 line~; #X obj 726 88 pack 0 5; #X obj 646 -55 vsl 15 128 0.01 1 1 0 empty Effect_Vol Effect_Volume 0 -9 0 10 -260097 -1 -1 10788 1; #X obj 247 264 phasor~; #X obj 250 390 *~; #X obj 352 -28 hsl 100 15 0 1 0 0 empty Speed Speed -2 -8 0 10 -262144 -1 -1 4950 1; #X obj 351 7 hsl 100 15 0 1000 0 0 empty Depth Depth -2 -8 0 10 -262144 -1 -1 4950 1; #X obj 390 339 +~ 0.5; #X obj 390 363 wrap~; #X obj 389 399 *~; #X obj 175 123 delwrite~ del2 3000; #X obj 391 457 vd~ del2; #X obj 352 44 hsl 100 15 0 0.9 0 0 empty Feedback Feedback -2 -8 0 10 -262144 -1 -1 4950 1; #X obj 186 423 cos~; #X obj 186 450 *~; #X obj 186 371 -~ 0.5; #X obj 186 397 *~ 0.5; #X obj 470 494 cos~; #X obj 471 521 *~; #X obj 470 442 -~ 0.5; #X obj 470 468 *~ 0.5; #X obj 491 140 *~; #X obj 526 113 line~; #X obj 527 94 pack 0 5; #X obj 528 -56 vsl 15 128 0.01 1 1 0 empty Main_Vol Main_Signal_Volume 0 -9 0 10 -4034 -1 -1 10788 1; #X obj 187 492 send~ out_del1; #X obj 470 540 send~ out_del2; #X obj 603 91 receive~ out_del1; #X obj 618 111 receive~ out_del2; #X obj 61 75 receive~ out_del1; #X obj 189 73 receive~ out_del2; #X obj 147 48 line~; #X obj 148 29 pack 0 5; #X obj 189 94 *~; #X obj 61 95 *~; #X obj 248 240 line~; #X obj 249 221 pack 0 5; #X text 26 148 Write incoming signal + feedback from delays; #X text 306 262 <-- 1 phasor controls the length of two delay lines ...; #X text 440 396 <-- ... The output is squared so that the length of the; #X text 464 407 grows at an increasing speed.; #X text 524 474 <-- The signal from the phasor is also used to make an; #X text 523 492 envelope for each delay line.; #X text 437 337 <-- This shifts the phasor signal so that one delay line; #X text 441 353 starts growing when the other one is at half its cycle. ; #X obj 697 183 loadbang; #X text 694 543 GuitarExtended \, Pierre Massat \, 2012; #X obj 312 369 line~; #X obj 313 350 pack 0 5; #X obj 249 410 *~; #X obj 390 434 *~; #X msg 694 216 \; Main_Vol 0.5 \; Effect_Vol 0.5 \; Feedback 0.45 \; Speed 0.5 \; Depth 500; #X obj 173 -93 r effect16; #X obj 170 -54 route fader1 fader2 fader3 fader4; #X obj 232 -7 * 1000; #X obj 296 3 * 0.9; #X obj 837 126 switch~; #X obj 877 103 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 812 45 r \$0-push16; #X obj 62 -31 r~ \$0-column4; #X obj 593 203 throw~ mixer; #X connect 1 0 17 1; #X connect 2 0 63 0; #X connect 3 0 2 1; #X connect 4 0 3 0; #X connect 5 0 4 0; #X connect 6 0 7 0; #X connect 6 0 7 1; #X connect 6 0 10 0; #X connect 6 0 18 0; #X connect 7 0 52 0; #X connect 8 0 39 0; #X connect 9 0 51 0; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 11 0 12 1; #X connect 11 0 22 0; #X connect 12 0 53 0; #X connect 14 0 21 1; #X connect 15 0 35 0; #X connect 16 0 17 0; #X connect 17 0 28 0; #X connect 18 0 19 0; #X connect 19 0 16 0; #X connect 20 0 21 0; #X connect 21 0 29 0; #X connect 22 0 23 0; #X connect 23 0 20 0; #X connect 24 0 63 0; #X connect 25 0 24 1; #X connect 26 0 25 0; #X connect 27 0 26 0; #X connect 30 0 2 0; #X connect 31 0 2 0; #X connect 32 0 37 0; #X connect 33 0 36 0; #X connect 34 0 37 1; #X connect 34 0 36 1; #X connect 35 0 34 0; #X connect 36 0 13 0; #X connect 37 0 0 0; #X connect 38 0 6 0; #X connect 39 0 38 0; #X connect 48 0 54 0; #X connect 50 0 52 1; #X connect 50 0 53 1; #X connect 51 0 50 0; #X connect 52 0 1 0; #X connect 53 0 14 0; #X connect 55 0 56 0; #X connect 56 0 8 0; #X connect 56 1 57 0; #X connect 56 2 58 0; #X connect 56 3 27 0; #X connect 56 4 5 0; #X connect 57 0 9 0; #X connect 58 0 15 0; #X connect 60 0 59 0; #X connect 61 0 60 0; #X connect 62 0 0 0; #X connect 62 0 13 0; #X connect 62 0 24 0; #X coords 0 -1 1 1 95 20 1 800 100; #X restore 85 322 pd DownStairs; #N canvas 1024 557 558 409 page2 0; #X obj 103 104 vsl 15 100 0 1 0 0 empty fader1 empty 0 -9 0 10 -33289 -162280 -1 0 1; #X obj 119 104 vsl 15 100 0 1 0 0 empty fader2 empty 0 -9 0 10 -33289 -162280 -1 0 1; #X obj 135 104 vsl 15 100 0 1 0 0 empty fader3 empty 0 -9 0 10 -33289 -162280 -1 0 1; #X obj 151 104 vsl 15 100 0 1 0 0 empty fader4 empty 0 -9 0 10 -33289 -162280 -1 0 1; #X obj 167 104 vsl 15 100 0 1 0 0 empty fader5 empty 0 -9 0 10 -33289 -162280 -1 0 1; #X obj 186 125 tgl 20 0 empty active empty 17 7 0 10 -86277 -258113 -1 0 1; #X obj 99 26 r page2; #X obj 99 49 routeOSC /multifader; #X obj 99 72 routeOSC /1 /2 /3 /4 /5; #X obj 32 352 r \$0-currenteffect; #X msg 28 281 fader3 \$1; #X msg 43 306 fader4 \$1; #X msg 57 330 fader5 \$1; #X msg -11 232 fader1 \$1; #X msg 10 255 fader2 \$1; #X obj 8 373 s \$1; #X obj 150 377 s \$0-udpmessage; #X msg 104 224 send /2/multifader 1 \$1; #X msg 118 250 send /2/multifader 2 \$1; #X msg 136 275 send /2/multifader 3 \$1; #X msg 142 298 send /2/multifader 4 \$1; #X msg 156 323 send /2/multifader 5 \$1; #X msg 165 349 send /3/fader1 \$1; #X msg 264 224 send /2/led2 1; #X msg 273 204 send /2/led2 0.1; #X obj 242 184 sel 1; #X obj 186 163 tgl 20 0 empty \$0-effecttempo empty 17 7 0 10 -83269 -257985 -1 1 1; #X obj 329 328 pack \$1 \$2; #X obj 329 303 t b f; #X msg 304 349 send /3/xy1 \$1 \$2; #X obj 447 329 pack \$1 \$2; #X obj 447 304 t b f; #X msg 422 350 send /3/xy2 \$1 \$2; #X obj 277 73 unpack; #X obj 277 26 r page3; #X obj 328 74 unpack; #X floatatom 379 75 5 0 0 0 - - -; #X obj 277 49 routeOSC /xy1 /xy2 /fader1; #X obj 255 101 s fader1; #X obj 291 126 s fader2; #X obj 331 102 s fader3; #X obj 369 126 s fader4; #X obj 406 101 s fader5; #X obj 243 147 sel 1; #X msg 290 161 send /2/led1 0.1; #X msg 281 181 send /2/led1 1; #X connect 0 0 13 0; #X connect 0 0 17 0; #X connect 0 0 27 0; #X connect 1 0 14 0; #X connect 1 0 18 0; #X connect 1 0 28 0; #X connect 2 0 10 0; #X connect 2 0 19 0; #X connect 2 0 30 0; #X connect 3 0 11 0; #X connect 3 0 20 0; #X connect 3 0 31 0; #X connect 4 0 12 0; #X connect 4 0 21 0; #X connect 4 0 22 0; #X connect 5 0 43 0; #X connect 6 0 7 0; #X connect 7 0 8 0; #X connect 8 0 0 0; #X connect 8 1 1 0; #X connect 8 2 2 0; #X connect 8 3 3 0; #X connect 8 4 4 0; #X connect 9 0 15 1; #X connect 10 0 15 0; #X connect 11 0 15 0; #X connect 12 0 15 0; #X connect 13 0 15 0; #X connect 14 0 15 0; #X connect 17 0 16 0; #X connect 18 0 16 0; #X connect 19 0 16 0; #X connect 20 0 16 0; #X connect 21 0 16 0; #X connect 22 0 16 0; #X connect 23 0 16 0; #X connect 24 0 16 0; #X connect 25 0 23 0; #X connect 25 1 24 0; #X connect 26 0 25 0; #X connect 27 0 29 0; #X connect 28 0 27 0; #X connect 28 1 27 1; #X connect 29 0 16 0; #X connect 30 0 32 0; #X connect 31 0 30 0; #X connect 31 1 30 1; #X connect 32 0 16 0; #X connect 33 0 38 0; #X connect 33 1 39 0; #X connect 34 0 37 0; #X connect 35 0 40 0; #X connect 35 1 41 0; #X connect 36 0 42 0; #X connect 37 0 33 0; #X connect 37 1 35 0; #X connect 37 2 36 0; #X connect 43 0 45 0; #X connect 43 1 44 0; #X connect 44 0 16 0; #X connect 45 0 16 0; #X coords 0 -1 1 1 110 110 1 100 100; #X restore -72 75 pd page2; #N canvas 506 190 979 712 page4 0; #N canvas 1178 437 371 422 taptempo 0; #X obj 41 90 moses 1; #X obj 56 157 timer; #X obj 76 181 inv; #X obj 76 202 * 60000; #X obj 107 100 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 93 127 moses 1; #X obj 100 150 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 72 115 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 107 359 s \$0-udpmessage; #X msg 80 332 send /4/label2 \$1; #X obj 42 59 routeOSC /push17 /encoder1; #X obj 142 85 moses 1; #X obj 181 140 float; #X obj 150 134 +; #X floatatom 149 232 5 0 0 0 - - -; #X obj 144 209 metro 1000; #X floatatom 142 162 5 100 10000 0 - - -; #X msg 144 113 10; #X msg 189 109 -10; #X obj 133 188 loadbang; #X obj 186 164 max 160; #X obj 83 232 tgl 15 0 empty empty empty 17 7 0 10 -33289 -257985 -1 1 1; #X obj 119 264 moses 1; #X msg 119 307 send /4/led9 0; #X msg 155 286 send /4/led9 1; #X obj 80 309 int; #X obj 196 84 s loopercommands; #X obj 45 29 r page4; #X msg 202 234 60; #X connect 0 1 7 0; #X connect 1 0 16 0; #X connect 2 0 3 0; #X connect 3 0 14 0; #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 6 0 1 1; #X connect 7 0 4 0; #X connect 7 0 1 0; #X connect 9 0 8 0; #X connect 10 0 0 0; #X connect 10 1 11 0; #X connect 10 2 26 0; #X connect 11 0 17 0; #X connect 11 1 18 0; #X connect 12 0 13 1; #X connect 13 0 16 0; #X connect 14 0 25 0; #X connect 15 0 21 0; #X connect 16 0 2 0; #X connect 16 0 15 1; #X connect 16 0 20 0; #X connect 17 0 13 0; #X connect 18 0 13 0; #X connect 19 0 15 0; #X connect 19 0 28 0; #X connect 20 0 12 0; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 22 1 24 0; #X connect 23 0 8 0; #X connect 24 0 8 0; #X connect 25 0 9 0; #X connect 27 0 10 0; #X connect 28 0 14 0; #X coords -1 -1 1 1 105 20 1 80 230; #X restore 216 605 pd taptempo; #X obj 494 476 r \$0-loopsize; #X obj 804 224 cnv 15 170 300 empty empty send_loopsize 20 6 0 10 -249661 -66577 0; #X obj 629 223 cnv 15 170 300 empty empty update_loopcounter 20 6 0 10 -249661 -13330 0; #X obj 689 304 == 0; #X obj 689 327 select 0 1; #X obj 689 358 t b b; #X obj 738 357 t b b; #X obj 664 385 int; #X obj 701 407 +; #X msg 716 383 1; #X msg 765 383 -1; #X obj 701 460 s \$0-loopcnt; #X obj 813 241 r \$0-loopcnt; #X msg 876 353 0; #X obj 689 282 t f f; #X obj 813 309 f; #X obj 813 331 != 0; #X obj 689 240 r \$0-newloopsize; #X obj 876 375 s \$0-loopsize; #X obj 813 398 s \$0-loopsize; #X obj 813 283 select 1 0; #X obj 813 376 f; #X obj 813 353 select 1; #X text 633 401 counter; #X text 633 388 loop; #X text 639 501 counter.; #X text 639 489 First \, update the loop; #X text 805 424 Then \, if there's no more; #X text 807 436 loop playing \, we reset; #X text 808 448 loopsize ( 0 ).; #X text 807 461 If loopcounter raised from; #X text 807 485 we send it for every looper.; #X text 808 499 Else \, nothing to do.; #X obj 701 434 limit 0 4; #X obj 176 417 pack 0 s; #X obj 187 437 print pushed msg; #X obj 176 458 route 0 1 2 3; #X obj 467 585 s \$0-newloopsize; #X floatatom 657 460 5 0 0 3 loop_counter - -; #X obj 28 220 cnv 15 110 190 empty empty empty 20 12 0 14 -249661 -66577 0; #X floatatom 94 280 5 0 0 3 - - -; #X obj 108 385 int; #X obj 34 363 r \$0-pushmsg; #X obj 149 220 cnv 15 180 170 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 339 220 cnv 15 90 170 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 440 220 cnv 15 90 170 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 159 267 select 1 0; #X obj 246 317 t b b; #X msg 159 360 symbol start; #X msg 248 360 symbol stop; #X obj 159 317 t b b; #X obj 159 339 s \$0-pushmsg; #X obj 248 340 s \$0-pushmsg; #X obj 343 317 t b b; #X obj 343 339 s \$0-pushmsg; #X obj 444 316 t b b; #X obj 444 338 s \$0-pushmsg; #X msg 444 360 symbol kill; #X text 267 263 stop \,; #X text 62 222 CHANNEL; #X text 355 222 PLAY/STOP; #X text 464 222 DELETE; #X text 225 222 RECORD; #X text 45 271 channel; #X text 45 283 number; #X text 807 473 0 to 1 \, it's a new loopsize \;; #X msg 5 101 0; #X msg 44 102 1; #X msg 86 104 2; #X msg 138 105 3; #X obj 14 77 routeOSC /push1 /push5 /push9 /push13; #X obj 145 134 moses 1; #X obj 354 457 catch~ mixer; #X obj 288 667 outlet~; #X obj 160 238 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 349 250 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 252 77 routeOSC /push2 /push6 /push10 /push14; #X obj 382 136 moses 1; #X msg 254 104 0; #X msg 293 105 1; #X msg 335 107 2; #X msg 387 108 3; #X obj 5 131 s \$0-channelnumber; #X obj 35 247 r \$0-channelnumber; #X obj 257 128 s \$0-channelnumber; #X obj 620 136 moses 1; #X msg 492 104 0; #X msg 531 105 1; #X msg 573 107 2; #X msg 625 108 3; #X obj 495 128 s \$0-channelnumber; #X obj 490 77 routeOSC /push3 /push7 /push11 /push15; #X obj 389 249 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 866 138 moses 1; #X msg 738 106 0; #X msg 777 107 1; #X msg 819 109 2; #X msg 871 110 3; #X obj 741 130 s \$0-channelnumber; #X obj 736 79 routeOSC /push4 /push8 /push12 /push16; #X msg 307 160 0; #X msg 344 360 symbol toggle; #N canvas 366 266 444 300 haveloop 0; #X obj 100 100 tgl 30 0 empty empty empty 17 7 0 10 -262144 -258113 -1 0 3317.55; #X obj 95 142 sel 0; #X msg 113 172 send /4/led2 1; #X msg 82 193 send /4/led2 0; #X obj 103 221 s \$0-udpmessage; #X obj 96 63 inlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 1 1 2 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 5 0 0 0; #X coords 0 -1 1 1 30 30 2 100 100; #X restore 202 572 pd haveloop; #N canvas 365 260 444 300 haveloop 0; #X obj 100 100 tgl 30 0 empty empty empty 17 7 0 10 -262144 -258113 -1 0 19213.1; #X obj 95 142 sel 0; #X obj 103 221 s \$0-udpmessage; #X obj 96 63 inlet; #X msg 113 172 send /4/led4 1; #X msg 82 193 send /4/led4 0; #X connect 0 0 1 0; #X connect 1 0 5 0; #X connect 1 1 4 0; #X connect 3 0 0 0; #X connect 4 0 2 0; #X connect 5 0 2 0; #X coords 0 -1 1 1 30 30 2 100 100; #X restore 234 572 pd haveloop; #N canvas 365 260 444 300 haveloop 0; #X obj 100 100 tgl 30 0 empty empty empty 17 7 0 10 -262144 -258113 -1 0 3317.55; #X obj 95 142 sel 0; #X obj 103 221 s \$0-udpmessage; #X obj 96 63 inlet; #X msg 113 172 send /4/led6 1; #X msg 82 193 send /4/led6 0; #X connect 0 0 1 0; #X connect 1 0 5 0; #X connect 1 1 4 0; #X connect 3 0 0 0; #X connect 4 0 2 0; #X connect 5 0 2 0; #X coords 0 -1 1 1 30 30 2 100 100; #X restore 266 572 pd haveloop; #N canvas 365 260 444 300 haveloop 0; #X obj 100 100 tgl 30 0 empty empty empty 17 7 0 10 -262144 -258113 -1 0 3317.55; #X obj 95 142 sel 0; #X obj 103 221 s \$0-udpmessage; #X obj 96 63 inlet; #X msg 113 172 send /4/led8 1; #X msg 82 193 send /4/led8 0; #X connect 0 0 1 0; #X connect 1 0 5 0; #X connect 1 1 4 0; #X connect 3 0 0 0; #X connect 4 0 2 0; #X connect 5 0 2 0; #X coords 0 -1 1 1 30 30 2 100 100; #X restore 298 572 pd haveloop; #N canvas 1018 133 521 329 LED 0; #X obj 157 277 s \$0-udpmessage; #X msg 22 164 send /4/led1 1; #X obj 54 32 inlet; #X obj 54 63 route 0 1 2 3; #X msg 46 185 send /4/led1 0; #X obj 22 140 route start stop; #X obj 139 143 route start stop; #X obj 254 143 route start stop; #X obj 371 146 route start stop; #X msg 139 167 send /4/led3 1; #X msg 163 188 send /4/led3 0; #X msg 256 164 send /4/led5 1; #X msg 278 188 send /4/led5 0; #X msg 371 170 send /4/led7 1; #X msg 387 189 send /4/led7 0; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 3 0 5 0; #X connect 3 1 6 0; #X connect 3 2 7 0; #X connect 3 3 8 0; #X connect 4 0 0 0; #X connect 5 0 1 0; #X connect 5 1 4 0; #X connect 6 0 9 0; #X connect 6 1 10 0; #X connect 7 0 11 0; #X connect 7 1 12 0; #X connect 8 0 13 0; #X connect 8 1 14 0; #X connect 9 0 0 0; #X connect 10 0 0 0; #X connect 11 0 0 0; #X connect 12 0 0 0; #X connect 13 0 0 0; #X connect 14 0 0 0; #X restore 109 440 pd LED; #X obj 11 54 r loopercommands; #X text 119 54 OSC commands are first sent to taptempo \, then here ; #N canvas 705 80 995 625 looper 0; #X obj 507 -38 cnv 15 440 550 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 638 203 cnv 15 300 300 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 517 152 cnv 15 110 240 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 790 210 float; #X obj 681 245 / 4; #X obj 736 244 / 2; #X obj 844 239 * 2; #X obj 898 240 * 4; #X obj 666 289 -; #X obj 721 289 -; #X obj 829 289 -; #X obj 883 289 -; #X obj 775 289 -; #X obj 666 323 abs; #X obj 666 346 < 500; #X obj 684 416 float; #X obj 739 416 float; #X obj 793 416 float; #X obj 847 416 float; #X obj 901 416 float; #X obj 666 370 select 1; #X obj 721 323 abs; #X obj 721 346 < 500; #X obj 721 370 select 1; #X obj 775 323 abs; #X obj 775 346 < 500; #X obj 775 370 select 1; #X obj 829 323 abs; #X obj 829 346 < 500; #X obj 829 370 select 1; #X obj 883 323 abs; #X obj 883 346 < 500; #X obj 883 370 select 1; #X obj 673 392 bang; #X obj 728 392 bang; #X obj 781 392 bang; #X obj 837 392 bang; #X obj 891 392 bang; #X obj 535 207 float; #X obj 535 187 bang; #X obj 535 229 == 0; #X obj 535 250 select 1; #X obj 535 287 float; #X obj 551 164 t f f; #X floatatom 786 451 5 0 0 0 - - -; #X obj 593 126 t f f; #X floatatom 641 252 5 0 0 0 - - -; #X text 755 152 When a constraint is receive \,; #X text 755 165 just update values used in; #X text 756 179 loopsize computation.; #X text 601 72 When timer is received \, we try to match a constraint. ; #X text 601 83 If constraint was zero \, nothing will match.; #X text 601 95 So we go in 2nd trigger \, verify constraint is zero \;; #X text 600 107 if so \, we send \$0-timer as the loopsize.; #X floatatom 535 309 5 0 0 0 - - -; #X text 520 -16 of a constraint.; #X text 519 -30 Ugly part \, which constraint the loop size to be multiple ; #X text 520 -3 We must do this if we want several loops to stay synchro. ; #X obj 120 -26 route start stop toggle kill float; #X obj 335 98 cnv 15 140 220 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 332 231 stop; #X obj 350 142 float; #X obj 342 121 bang; #X obj 363 186 select 0; #X obj 363 164 == 0; #X msg 363 209 0; #X text 386 98 KILL; #X text 339 302 Else \, do nothing.; #X obj 189 112 cnv 15 130 180 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 251 214 stop; #X msg 216 214 bang; #X obj 275 147 + 1; #X obj 200 164 int 0; #X obj 216 191 select 1 0; #X obj 242 169 mod 2; #X obj 200 135 bang; #X obj 63 -43 inlet; #X text 229 112 TOGGLE; #X msg 284 114 1; #X text 194 247 Play/stop loop.; #X text 193 261 Stop waits until the; #X text 194 274 end of the loop.; #X obj 304 339 cnv 15 180 210 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 343 415 metro; #X obj 343 438 pack 0 f; #X obj 413 417 * 44.1; #X text 339 257 If a loop is recorded \,; #X text 338 269 stop it immediately \,; #X text 337 280 reset toggle to 0 \, and; #X text 339 291 output loopsize = 0; #X obj 271 0 cnv 15 200 80 empty empty empty 20 12 0 14 -249661 -66577 0; #X text 355 -1 FLOAT; #X text 272 53 A float means a timing constraint; #X text 272 65 for the looper.; #X obj 15 114 cnv 15 100 130 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 22 134 timer; #X obj 30 154 print timer; #X text 23 114 START; #X text 16 199 Send a kill \, and; #X text 16 212 start recording; #X text 17 224 a loop.; #X text 304 498 Here \, loopsize is set to metro; #X text 365 340 read loop; #X obj 110 313 cnv 15 140 110 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 160 337 stop; #X msg 120 338 start; #X obj 199 337 inlet~; #X text 167 314 write loop; #N canvas 1 34 395 272 (subpatch) 0; #X array 1-tab 1.323e+06 float 0; #X coords 0 0 1 1 100 50 0; #X restore 204 397 graph; #X obj 45 436 cnv 15 220 100 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 58 471 outlet; #X obj 332 479 outlet~; #X text 47 517 Output 0 when the loop is destroyed.; #X text 48 492 Output loopsize ( constrained ); #X text 48 504 when a loop is recorded.; #X text 201 438 outlet; #X obj 151 26 cnv 15 60 50 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 160 49 t b b; #X text 164 29 STOP; #X obj 347 395 select 0; #X text 305 510 and timer is packed \, so that; #X text 305 522 everything is ready when metro; #X text 304 534 is started.; #X obj 58 448 r 1-loopsize; #X obj 332 458 tabplay~ 1-tab; #X obj 413 397 r 1-timer; #X obj 347 357 r 1-loopsize; #X obj 361 375 print 1-loop for; #X obj 131 368 tabwrite~ 1-tab; #X obj 22 173 s 1-timer; #X obj 306 36 s 1-loopconstraint; #X obj 323 17 print 1-new constraint; #X obj 378 121 r 1-loopsize; #X obj 539 436 s 1-loopsize; #X obj 667 136 r 1-loopconstraint; #X obj 593 53 r 1-timer; #X connect 3 0 4 0; #X connect 3 0 5 0; #X connect 3 0 6 0; #X connect 3 0 7 0; #X connect 3 0 12 1; #X connect 3 0 17 1; #X connect 4 0 8 1; #X connect 4 0 15 1; #X connect 5 0 9 1; #X connect 5 0 16 1; #X connect 6 0 10 1; #X connect 6 0 18 1; #X connect 7 0 11 1; #X connect 7 0 19 1; #X connect 8 0 13 0; #X connect 9 0 21 0; #X connect 10 0 27 0; #X connect 11 0 30 0; #X connect 12 0 24 0; #X connect 13 0 14 0; #X connect 14 0 20 0; #X connect 15 0 44 0; #X connect 16 0 44 0; #X connect 17 0 44 0; #X connect 18 0 44 0; #X connect 19 0 44 0; #X connect 20 0 33 0; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 23 0 34 0; #X connect 24 0 25 0; #X connect 25 0 26 0; #X connect 26 0 35 0; #X connect 27 0 28 0; #X connect 28 0 29 0; #X connect 29 0 36 0; #X connect 30 0 31 0; #X connect 31 0 32 0; #X connect 32 0 37 0; #X connect 33 0 15 0; #X connect 34 0 16 0; #X connect 35 0 17 0; #X connect 36 0 18 0; #X connect 37 0 19 0; #X connect 38 0 40 0; #X connect 39 0 38 0; #X connect 40 0 41 0; #X connect 41 0 42 0; #X connect 42 0 54 0; #X connect 43 0 39 0; #X connect 43 1 42 1; #X connect 44 0 133 0; #X connect 45 0 43 0; #X connect 45 1 46 0; #X connect 46 0 8 0; #X connect 46 0 9 0; #X connect 46 0 12 0; #X connect 46 0 10 0; #X connect 46 0 11 0; #X connect 54 0 133 0; #X connect 58 0 62 0; #X connect 58 0 105 0; #X connect 58 0 95 0; #X connect 58 1 117 0; #X connect 58 2 75 0; #X connect 58 3 62 0; #X connect 58 4 130 0; #X connect 58 4 131 0; #X connect 60 0 124 0; #X connect 61 0 64 0; #X connect 62 0 61 0; #X connect 63 0 65 0; #X connect 64 0 63 0; #X connect 65 0 60 0; #X connect 65 0 78 0; #X connect 65 0 133 0; #X connect 69 0 83 0; #X connect 70 0 83 0; #X connect 71 0 74 0; #X connect 72 0 71 0; #X connect 73 0 70 0; #X connect 73 1 69 0; #X connect 74 0 72 1; #X connect 74 0 73 0; #X connect 75 0 72 0; #X connect 76 0 58 0; #X connect 78 0 72 0; #X connect 83 0 84 0; #X connect 84 0 124 0; #X connect 85 0 84 1; #X connect 95 0 96 0; #X connect 95 0 129 0; #X connect 104 0 128 0; #X connect 105 0 128 0; #X connect 106 0 128 0; #X connect 117 0 104 0; #X connect 117 1 95 1; #X connect 119 1 83 1; #X connect 123 0 110 0; #X connect 124 0 111 0; #X connect 125 0 85 0; #X connect 126 0 119 0; #X connect 126 0 127 0; #X connect 132 0 61 1; #X connect 134 0 3 0; #X connect 134 0 38 1; #X connect 135 0 45 0; #X restore 166 535 pd looper; #N canvas 669 260 995 625 looper 0; #X obj 507 -38 cnv 15 440 550 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 638 203 cnv 15 300 300 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 517 152 cnv 15 110 240 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 790 210 float; #X obj 681 245 / 4; #X obj 736 244 / 2; #X obj 844 239 * 2; #X obj 898 240 * 4; #X obj 666 289 -; #X obj 721 289 -; #X obj 829 289 -; #X obj 883 289 -; #X obj 775 289 -; #X obj 666 323 abs; #X obj 666 346 < 500; #X obj 684 416 float; #X obj 739 416 float; #X obj 793 416 float; #X obj 847 416 float; #X obj 901 416 float; #X obj 666 370 select 1; #X obj 721 323 abs; #X obj 721 346 < 500; #X obj 721 370 select 1; #X obj 775 323 abs; #X obj 775 346 < 500; #X obj 775 370 select 1; #X obj 829 323 abs; #X obj 829 346 < 500; #X obj 829 370 select 1; #X obj 883 323 abs; #X obj 883 346 < 500; #X obj 883 370 select 1; #X obj 673 392 bang; #X obj 728 392 bang; #X obj 781 392 bang; #X obj 837 392 bang; #X obj 891 392 bang; #X obj 535 207 float; #X obj 535 187 bang; #X obj 535 229 == 0; #X obj 535 250 select 1; #X obj 535 287 float; #X obj 551 164 t f f; #X floatatom 786 451 5 0 0 0 - - -; #X obj 593 126 t f f; #X floatatom 641 252 5 0 0 0 - - -; #X text 755 152 When a constraint is receive \,; #X text 755 165 just update values used in; #X text 756 179 loopsize computation.; #X text 601 72 When timer is received \, we try to match a constraint. ; #X text 601 83 If constraint was zero \, nothing will match.; #X text 601 95 So we go in 2nd trigger \, verify constraint is zero \;; #X text 600 107 if so \, we send \$0-timer as the loopsize.; #X floatatom 535 309 5 0 0 0 - - -; #X text 520 -16 of a constraint.; #X text 519 -30 Ugly part \, which constraint the loop size to be multiple ; #X text 520 -3 We must do this if we want several loops to stay synchro. ; #X obj 120 -26 route start stop toggle kill float; #X obj 335 98 cnv 15 140 220 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 332 231 stop; #X obj 350 142 float; #X obj 342 121 bang; #X obj 363 186 select 0; #X obj 363 164 == 0; #X msg 363 209 0; #X text 386 98 KILL; #X text 339 302 Else \, do nothing.; #X obj 189 112 cnv 15 130 180 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 251 214 stop; #X msg 216 214 bang; #X obj 275 147 + 1; #X obj 200 164 int 0; #X obj 216 191 select 1 0; #X obj 242 169 mod 2; #X obj 200 135 bang; #X obj 63 -43 inlet; #X text 229 112 TOGGLE; #X msg 284 114 1; #X text 194 247 Play/stop loop.; #X text 193 261 Stop waits until the; #X text 194 274 end of the loop.; #X obj 304 339 cnv 15 180 210 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 343 415 metro; #X obj 343 438 pack 0 f; #X obj 413 417 * 44.1; #X text 339 257 If a loop is recorded \,; #X text 338 269 stop it immediately \,; #X text 337 280 reset toggle to 0 \, and; #X text 339 291 output loopsize = 0; #X obj 271 0 cnv 15 200 80 empty empty empty 20 12 0 14 -249661 -66577 0; #X text 355 -1 FLOAT; #X text 272 53 A float means a timing constraint; #X text 272 65 for the looper.; #X obj 15 114 cnv 15 100 130 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 22 134 timer; #X obj 30 154 print timer; #X text 23 114 START; #X text 16 199 Send a kill \, and; #X text 16 212 start recording; #X text 17 224 a loop.; #X text 304 498 Here \, loopsize is set to metro; #X text 365 340 read loop; #X obj 110 313 cnv 15 140 110 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 160 337 stop; #X msg 120 338 start; #X obj 199 337 inlet~; #X text 167 314 write loop; #N canvas 0 0 450 300 (subpatch) 0; #X array 3-tab 1.323e+06 float 0; #X coords 0 0 1 1 100 50 0; #X restore 204 397 graph; #X obj 45 436 cnv 15 220 100 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 58 471 outlet; #X obj 332 479 outlet~; #X text 47 517 Output 0 when the loop is destroyed.; #X text 48 492 Output loopsize ( constrained ); #X text 48 504 when a loop is recorded.; #X text 201 438 outlet; #X obj 151 26 cnv 15 60 50 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 160 49 t b b; #X text 164 29 STOP; #X obj 347 395 select 0; #X text 305 510 and timer is packed \, so that; #X text 305 522 everything is ready when metro; #X text 304 534 is started.; #X obj 323 17 print 3-new constraint; #X obj 306 36 s 3-loopconstraint; #X obj 378 121 r 3-loopsize; #X obj 347 357 r 3-loopsize; #X obj 360 375 print 3-loop for; #X obj 413 397 r 3-timer; #X obj 332 458 tabplay~ 3-tab; #X obj 131 368 tabwrite~ 3-tab; #X obj 22 173 s 3-timer; #X obj 593 53 r 3-timer; #X obj 667 136 r 3-loopconstraint; #X obj 539 436 s 3-loopsize; #X obj 58 448 r 3-loopsize; #X connect 3 0 4 0; #X connect 3 0 5 0; #X connect 3 0 6 0; #X connect 3 0 7 0; #X connect 3 0 12 1; #X connect 3 0 17 1; #X connect 4 0 8 1; #X connect 4 0 15 1; #X connect 5 0 9 1; #X connect 5 0 16 1; #X connect 6 0 10 1; #X connect 6 0 18 1; #X connect 7 0 11 1; #X connect 7 0 19 1; #X connect 8 0 13 0; #X connect 9 0 21 0; #X connect 10 0 27 0; #X connect 11 0 30 0; #X connect 12 0 24 0; #X connect 13 0 14 0; #X connect 14 0 20 0; #X connect 15 0 44 0; #X connect 16 0 44 0; #X connect 17 0 44 0; #X connect 18 0 44 0; #X connect 19 0 44 0; #X connect 20 0 33 0; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 23 0 34 0; #X connect 24 0 25 0; #X connect 25 0 26 0; #X connect 26 0 35 0; #X connect 27 0 28 0; #X connect 28 0 29 0; #X connect 29 0 36 0; #X connect 30 0 31 0; #X connect 31 0 32 0; #X connect 32 0 37 0; #X connect 33 0 15 0; #X connect 34 0 16 0; #X connect 35 0 17 0; #X connect 36 0 18 0; #X connect 37 0 19 0; #X connect 38 0 40 0; #X connect 39 0 38 0; #X connect 40 0 41 0; #X connect 41 0 42 0; #X connect 42 0 54 0; #X connect 43 0 39 0; #X connect 43 1 42 1; #X connect 44 0 134 0; #X connect 45 0 43 0; #X connect 45 1 46 0; #X connect 46 0 8 0; #X connect 46 0 9 0; #X connect 46 0 12 0; #X connect 46 0 10 0; #X connect 46 0 11 0; #X connect 54 0 134 0; #X connect 58 0 62 0; #X connect 58 0 105 0; #X connect 58 0 95 0; #X connect 58 1 117 0; #X connect 58 2 75 0; #X connect 58 3 62 0; #X connect 58 4 123 0; #X connect 58 4 124 0; #X connect 60 0 129 0; #X connect 61 0 64 0; #X connect 62 0 61 0; #X connect 63 0 65 0; #X connect 64 0 63 0; #X connect 65 0 60 0; #X connect 65 0 78 0; #X connect 65 0 134 0; #X connect 69 0 83 0; #X connect 70 0 83 0; #X connect 71 0 74 0; #X connect 72 0 71 0; #X connect 73 0 70 0; #X connect 73 1 69 0; #X connect 74 0 72 1; #X connect 74 0 73 0; #X connect 75 0 72 0; #X connect 76 0 58 0; #X connect 78 0 72 0; #X connect 83 0 84 0; #X connect 84 0 129 0; #X connect 85 0 84 1; #X connect 95 0 96 0; #X connect 95 0 131 0; #X connect 104 0 130 0; #X connect 105 0 130 0; #X connect 106 0 130 0; #X connect 117 0 104 0; #X connect 117 1 95 1; #X connect 119 1 83 1; #X connect 125 0 61 1; #X connect 126 0 119 0; #X connect 126 0 127 0; #X connect 128 0 85 0; #X connect 129 0 111 0; #X connect 132 0 45 0; #X connect 133 0 3 0; #X connect 133 0 38 1; #X connect 135 0 110 0; #X restore 307 536 pd looper; #N canvas 669 260 995 625 looper 0; #X obj 507 -38 cnv 15 440 550 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 638 203 cnv 15 300 300 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 517 152 cnv 15 110 240 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 790 210 float; #X obj 681 245 / 4; #X obj 736 244 / 2; #X obj 844 239 * 2; #X obj 898 240 * 4; #X obj 666 289 -; #X obj 721 289 -; #X obj 829 289 -; #X obj 883 289 -; #X obj 775 289 -; #X obj 666 323 abs; #X obj 666 346 < 500; #X obj 684 416 float; #X obj 739 416 float; #X obj 793 416 float; #X obj 847 416 float; #X obj 901 416 float; #X obj 666 370 select 1; #X obj 721 323 abs; #X obj 721 346 < 500; #X obj 721 370 select 1; #X obj 775 323 abs; #X obj 775 346 < 500; #X obj 775 370 select 1; #X obj 829 323 abs; #X obj 829 346 < 500; #X obj 829 370 select 1; #X obj 883 323 abs; #X obj 883 346 < 500; #X obj 883 370 select 1; #X obj 673 392 bang; #X obj 728 392 bang; #X obj 781 392 bang; #X obj 837 392 bang; #X obj 891 392 bang; #X obj 535 207 float; #X obj 535 187 bang; #X obj 535 229 == 0; #X obj 535 250 select 1; #X obj 535 287 float; #X obj 551 164 t f f; #X floatatom 786 451 5 0 0 0 - - -; #X obj 593 126 t f f; #X floatatom 641 252 5 0 0 0 - - -; #X text 755 152 When a constraint is receive \,; #X text 755 165 just update values used in; #X text 756 179 loopsize computation.; #X text 601 72 When timer is received \, we try to match a constraint. ; #X text 601 83 If constraint was zero \, nothing will match.; #X text 601 95 So we go in 2nd trigger \, verify constraint is zero \;; #X text 600 107 if so \, we send \$0-timer as the loopsize.; #X floatatom 535 309 5 0 0 0 - - -; #X text 520 -16 of a constraint.; #X text 519 -30 Ugly part \, which constraint the loop size to be multiple ; #X text 520 -3 We must do this if we want several loops to stay synchro. ; #X obj 120 -26 route start stop toggle kill float; #X obj 335 98 cnv 15 140 220 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 332 231 stop; #X obj 350 142 float; #X obj 342 121 bang; #X obj 363 186 select 0; #X obj 363 164 == 0; #X msg 363 209 0; #X text 386 98 KILL; #X text 339 302 Else \, do nothing.; #X obj 189 112 cnv 15 130 180 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 251 214 stop; #X msg 216 214 bang; #X obj 275 147 + 1; #X obj 200 164 int 0; #X obj 216 191 select 1 0; #X obj 242 169 mod 2; #X obj 200 135 bang; #X obj 63 -43 inlet; #X text 229 112 TOGGLE; #X msg 284 114 1; #X text 194 247 Play/stop loop.; #X text 193 261 Stop waits until the; #X text 194 274 end of the loop.; #X obj 304 339 cnv 15 180 210 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 343 415 metro; #X obj 343 438 pack 0 f; #X obj 413 417 * 44.1; #X text 339 257 If a loop is recorded \,; #X text 338 269 stop it immediately \,; #X text 337 280 reset toggle to 0 \, and; #X text 339 291 output loopsize = 0; #X obj 271 0 cnv 15 200 80 empty empty empty 20 12 0 14 -249661 -66577 0; #X text 355 -1 FLOAT; #X text 272 53 A float means a timing constraint; #X text 272 65 for the looper.; #X obj 15 114 cnv 15 100 130 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 22 134 timer; #X obj 30 154 print timer; #X text 23 114 START; #X text 16 199 Send a kill \, and; #X text 16 212 start recording; #X text 17 224 a loop.; #X text 304 498 Here \, loopsize is set to metro; #X text 365 340 read loop; #X obj 110 313 cnv 15 140 110 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 160 337 stop; #X msg 120 338 start; #X obj 199 337 inlet~; #X text 167 314 write loop; #N canvas 0 0 450 300 (subpatch) 0; #X array 4-tab 1.323e+06 float 0; #X coords 0 0 1 1 100 50 0; #X restore 204 397 graph; #X obj 45 436 cnv 15 220 100 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 58 471 outlet; #X obj 332 479 outlet~; #X text 47 517 Output 0 when the loop is destroyed.; #X text 48 492 Output loopsize ( constrained ); #X text 48 504 when a loop is recorded.; #X text 201 438 outlet; #X obj 151 26 cnv 15 60 50 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 160 49 t b b; #X text 164 29 STOP; #X obj 347 395 select 0; #X text 305 510 and timer is packed \, so that; #X text 305 522 everything is ready when metro; #X text 304 534 is started.; #X obj 323 17 print 4-new constraint; #X obj 306 36 s 4-loopconstraint; #X obj 378 121 r 4-loopsize; #X obj 347 357 r 4-loopsize; #X obj 361 375 print 4-loop for; #X obj 413 397 r 4-timer; #X obj 332 458 tabplay~ 4-tab; #X obj 131 368 tabwrite~ 4-tab; #X obj 58 448 r 4-loopsize; #X obj 22 173 s 4-timer; #X obj 593 53 r 4-timer; #X obj 667 136 r 4-loopconstraint; #X obj 539 436 s 4-loopsize; #X connect 3 0 4 0; #X connect 3 0 5 0; #X connect 3 0 6 0; #X connect 3 0 7 0; #X connect 3 0 12 1; #X connect 3 0 17 1; #X connect 4 0 8 1; #X connect 4 0 15 1; #X connect 5 0 9 1; #X connect 5 0 16 1; #X connect 6 0 10 1; #X connect 6 0 18 1; #X connect 7 0 11 1; #X connect 7 0 19 1; #X connect 8 0 13 0; #X connect 9 0 21 0; #X connect 10 0 27 0; #X connect 11 0 30 0; #X connect 12 0 24 0; #X connect 13 0 14 0; #X connect 14 0 20 0; #X connect 15 0 44 0; #X connect 16 0 44 0; #X connect 17 0 44 0; #X connect 18 0 44 0; #X connect 19 0 44 0; #X connect 20 0 33 0; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 23 0 34 0; #X connect 24 0 25 0; #X connect 25 0 26 0; #X connect 26 0 35 0; #X connect 27 0 28 0; #X connect 28 0 29 0; #X connect 29 0 36 0; #X connect 30 0 31 0; #X connect 31 0 32 0; #X connect 32 0 37 0; #X connect 33 0 15 0; #X connect 34 0 16 0; #X connect 35 0 17 0; #X connect 36 0 18 0; #X connect 37 0 19 0; #X connect 38 0 40 0; #X connect 39 0 38 0; #X connect 40 0 41 0; #X connect 41 0 42 0; #X connect 42 0 54 0; #X connect 43 0 39 0; #X connect 43 1 42 1; #X connect 44 0 135 0; #X connect 45 0 43 0; #X connect 45 1 46 0; #X connect 46 0 8 0; #X connect 46 0 9 0; #X connect 46 0 12 0; #X connect 46 0 10 0; #X connect 46 0 11 0; #X connect 54 0 135 0; #X connect 58 0 62 0; #X connect 58 0 105 0; #X connect 58 0 95 0; #X connect 58 1 117 0; #X connect 58 2 75 0; #X connect 58 3 62 0; #X connect 58 4 123 0; #X connect 58 4 124 0; #X connect 60 0 129 0; #X connect 61 0 64 0; #X connect 62 0 61 0; #X connect 63 0 65 0; #X connect 64 0 63 0; #X connect 65 0 60 0; #X connect 65 0 78 0; #X connect 65 0 135 0; #X connect 69 0 83 0; #X connect 70 0 83 0; #X connect 71 0 74 0; #X connect 72 0 71 0; #X connect 73 0 70 0; #X connect 73 1 69 0; #X connect 74 0 72 1; #X connect 74 0 73 0; #X connect 75 0 72 0; #X connect 76 0 58 0; #X connect 78 0 72 0; #X connect 83 0 84 0; #X connect 84 0 129 0; #X connect 85 0 84 1; #X connect 95 0 96 0; #X connect 95 0 132 0; #X connect 104 0 130 0; #X connect 105 0 130 0; #X connect 106 0 130 0; #X connect 117 0 104 0; #X connect 117 1 95 1; #X connect 119 1 83 1; #X connect 125 0 61 1; #X connect 126 0 119 0; #X connect 126 0 127 0; #X connect 128 0 85 0; #X connect 129 0 111 0; #X connect 131 0 110 0; #X connect 133 0 45 0; #X connect 134 0 3 0; #X connect 134 0 38 1; #X restore 371 537 pd looper; #N canvas 706 86 995 625 looper 0; #X obj 507 -38 cnv 15 440 550 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 638 203 cnv 15 300 300 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 517 152 cnv 15 110 240 empty empty empty 20 12 0 14 -233017 -66577 0; #X obj 790 210 float; #X obj 681 245 / 4; #X obj 736 244 / 2; #X obj 844 239 * 2; #X obj 898 240 * 4; #X obj 666 289 -; #X obj 721 289 -; #X obj 829 289 -; #X obj 883 289 -; #X obj 775 289 -; #X obj 666 323 abs; #X obj 666 346 < 500; #X obj 684 416 float; #X obj 739 416 float; #X obj 793 416 float; #X obj 847 416 float; #X obj 901 416 float; #X obj 666 370 select 1; #X obj 721 323 abs; #X obj 721 346 < 500; #X obj 721 370 select 1; #X obj 775 323 abs; #X obj 775 346 < 500; #X obj 775 370 select 1; #X obj 829 323 abs; #X obj 829 346 < 500; #X obj 829 370 select 1; #X obj 883 323 abs; #X obj 883 346 < 500; #X obj 883 370 select 1; #X obj 673 392 bang; #X obj 728 392 bang; #X obj 781 392 bang; #X obj 837 392 bang; #X obj 891 392 bang; #X obj 535 207 float; #X obj 535 187 bang; #X obj 535 229 == 0; #X obj 535 250 select 1; #X obj 535 287 float; #X obj 551 164 t f f; #X floatatom 786 451 5 0 0 0 - - -; #X obj 593 126 t f f; #X floatatom 641 252 5 0 0 0 - - -; #X text 755 152 When a constraint is receive \,; #X text 755 165 just update values used in; #X text 756 179 loopsize computation.; #X text 601 72 When timer is received \, we try to match a constraint. ; #X text 601 83 If constraint was zero \, nothing will match.; #X text 601 95 So we go in 2nd trigger \, verify constraint is zero \;; #X text 600 107 if so \, we send \$0-timer as the loopsize.; #X floatatom 535 309 5 0 0 0 - - -; #X text 520 -16 of a constraint.; #X text 519 -30 Ugly part \, which constraint the loop size to be multiple ; #X text 520 -3 We must do this if we want several loops to stay synchro. ; #X obj 120 -26 route start stop toggle kill float; #X obj 335 98 cnv 15 140 220 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 332 231 stop; #X obj 350 142 float; #X obj 342 121 bang; #X obj 363 186 select 0; #X obj 363 164 == 0; #X msg 363 209 0; #X text 386 98 KILL; #X text 339 302 Else \, do nothing.; #X obj 189 112 cnv 15 130 180 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 251 214 stop; #X msg 216 214 bang; #X obj 275 147 + 1; #X obj 200 164 int 0; #X obj 216 191 select 1 0; #X obj 242 169 mod 2; #X obj 200 135 bang; #X obj 63 -43 inlet; #X text 229 112 TOGGLE; #X msg 284 114 1; #X text 194 247 Play/stop loop.; #X text 193 261 Stop waits until the; #X text 194 274 end of the loop.; #X obj 304 339 cnv 15 180 210 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 343 415 metro; #X obj 343 438 pack 0 f; #X obj 413 417 * 44.1; #X text 339 257 If a loop is recorded \,; #X text 338 269 stop it immediately \,; #X text 337 280 reset toggle to 0 \, and; #X text 339 291 output loopsize = 0; #X obj 271 0 cnv 15 200 80 empty empty empty 20 12 0 14 -249661 -66577 0; #X text 355 -1 FLOAT; #X text 272 53 A float means a timing constraint; #X text 272 65 for the looper.; #X obj 15 114 cnv 15 100 130 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 22 134 timer; #X obj 30 154 print timer; #X text 23 114 START; #X text 16 199 Send a kill \, and; #X text 16 212 start recording; #X text 17 224 a loop.; #X text 304 498 Here \, loopsize is set to metro; #X text 365 340 read loop; #X obj 110 313 cnv 15 140 110 empty empty empty 20 12 0 14 -249661 -66577 0; #X msg 160 337 stop; #X msg 120 338 start; #X obj 199 337 inlet~; #X text 167 314 write loop; #N canvas 1 34 395 272 (subpatch) 0; #X array 2-tab 1.323e+06 float 0; #X coords 0 0 1 1 100 50 0; #X restore 204 397 graph; #X obj 45 436 cnv 15 220 100 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 58 471 outlet; #X obj 332 479 outlet~; #X text 47 517 Output 0 when the loop is destroyed.; #X text 48 492 Output loopsize ( constrained ); #X text 48 504 when a loop is recorded.; #X text 201 438 outlet; #X obj 151 26 cnv 15 60 50 empty empty empty 20 12 0 14 -249661 -66577 0; #X obj 160 49 t b b; #X text 164 29 STOP; #X obj 347 395 select 0; #X text 305 510 and timer is packed \, so that; #X text 305 522 everything is ready when metro; #X text 304 534 is started.; #X obj 22 173 s 2-timer; #X obj 306 36 s 2-loopconstraint; #X obj 323 17 print 2-new constraint; #X obj 378 121 r 2-loopsize; #X obj 347 357 r 2-loopsize; #X obj 361 375 print 2-loop for; #X obj 413 397 r 2-timer; #X obj 332 458 tabplay~ 2-tab; #X obj 131 368 tabwrite~ 2-tab; #X obj 58 448 r 2-loopsize; #X obj 593 53 r 2-timer; #X obj 667 136 r 2-loopconstraint; #X obj 539 436 s 2-loopsize; #X connect 3 0 4 0; #X connect 3 0 5 0; #X connect 3 0 6 0; #X connect 3 0 7 0; #X connect 3 0 12 1; #X connect 3 0 17 1; #X connect 4 0 8 1; #X connect 4 0 15 1; #X connect 5 0 9 1; #X connect 5 0 16 1; #X connect 6 0 10 1; #X connect 6 0 18 1; #X connect 7 0 11 1; #X connect 7 0 19 1; #X connect 8 0 13 0; #X connect 9 0 21 0; #X connect 10 0 27 0; #X connect 11 0 30 0; #X connect 12 0 24 0; #X connect 13 0 14 0; #X connect 14 0 20 0; #X connect 15 0 44 0; #X connect 16 0 44 0; #X connect 17 0 44 0; #X connect 18 0 44 0; #X connect 19 0 44 0; #X connect 20 0 33 0; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 23 0 34 0; #X connect 24 0 25 0; #X connect 25 0 26 0; #X connect 26 0 35 0; #X connect 27 0 28 0; #X connect 28 0 29 0; #X connect 29 0 36 0; #X connect 30 0 31 0; #X connect 31 0 32 0; #X connect 32 0 37 0; #X connect 33 0 15 0; #X connect 34 0 16 0; #X connect 35 0 17 0; #X connect 36 0 18 0; #X connect 37 0 19 0; #X connect 38 0 40 0; #X connect 39 0 38 0; #X connect 40 0 41 0; #X connect 41 0 42 0; #X connect 42 0 54 0; #X connect 43 0 39 0; #X connect 43 1 42 1; #X connect 44 0 135 0; #X connect 45 0 43 0; #X connect 45 1 46 0; #X connect 46 0 8 0; #X connect 46 0 9 0; #X connect 46 0 12 0; #X connect 46 0 10 0; #X connect 46 0 11 0; #X connect 54 0 135 0; #X connect 58 0 62 0; #X connect 58 0 105 0; #X connect 58 0 95 0; #X connect 58 1 117 0; #X connect 58 2 75 0; #X connect 58 3 62 0; #X connect 58 4 124 0; #X connect 58 4 125 0; #X connect 60 0 130 0; #X connect 61 0 64 0; #X connect 62 0 61 0; #X connect 63 0 65 0; #X connect 64 0 63 0; #X connect 65 0 60 0; #X connect 65 0 78 0; #X connect 65 0 135 0; #X connect 69 0 83 0; #X connect 70 0 83 0; #X connect 71 0 74 0; #X connect 72 0 71 0; #X connect 73 0 70 0; #X connect 73 1 69 0; #X connect 74 0 72 1; #X connect 74 0 73 0; #X connect 75 0 72 0; #X connect 76 0 58 0; #X connect 78 0 72 0; #X connect 83 0 84 0; #X connect 84 0 130 0; #X connect 85 0 84 1; #X connect 95 0 96 0; #X connect 95 0 123 0; #X connect 104 0 131 0; #X connect 105 0 131 0; #X connect 106 0 131 0; #X connect 117 0 104 0; #X connect 117 1 95 1; #X connect 119 1 83 1; #X connect 126 0 61 1; #X connect 127 0 119 0; #X connect 127 0 128 0; #X connect 129 0 85 0; #X connect 130 0 111 0; #X connect 132 0 110 0; #X connect 133 0 45 0; #X connect 134 0 3 0; #X connect 134 0 38 1; #X restore 236 537 pd looper; #X connect 1 0 110 0; #X connect 1 0 111 0; #X connect 1 0 112 0; #X connect 1 0 113 0; #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 5 1 7 0; #X connect 6 0 8 0; #X connect 6 1 10 0; #X connect 7 0 8 0; #X connect 7 1 11 0; #X connect 8 0 9 0; #X connect 9 0 34 0; #X connect 10 0 9 1; #X connect 11 0 9 1; #X connect 13 0 21 0; #X connect 14 0 19 0; #X connect 15 0 4 0; #X connect 15 1 16 1; #X connect 15 1 22 1; #X connect 16 0 17 0; #X connect 17 0 23 0; #X connect 18 0 15 0; #X connect 21 0 16 0; #X connect 21 1 14 0; #X connect 22 0 20 0; #X connect 23 0 22 0; #X connect 34 0 12 0; #X connect 34 0 8 1; #X connect 34 0 39 0; #X connect 35 0 36 0; #X connect 35 0 37 0; #X connect 35 0 107 0; #X connect 37 0 110 0; #X connect 37 1 113 0; #X connect 37 2 111 0; #X connect 37 3 112 0; #X connect 41 0 42 1; #X connect 42 0 35 0; #X connect 43 0 42 0; #X connect 47 0 51 0; #X connect 47 1 48 0; #X connect 48 0 53 0; #X connect 48 1 50 0; #X connect 49 0 35 1; #X connect 50 0 35 1; #X connect 51 0 52 0; #X connect 51 1 49 0; #X connect 54 0 55 0; #X connect 54 1 102 0; #X connect 56 0 57 0; #X connect 56 1 58 0; #X connect 58 0 35 1; #X connect 67 0 83 0; #X connect 68 0 83 0; #X connect 69 0 83 0; #X connect 70 0 83 0; #X connect 71 0 67 0; #X connect 71 0 72 0; #X connect 71 1 68 0; #X connect 71 1 72 0; #X connect 71 2 69 0; #X connect 71 2 72 0; #X connect 71 3 70 0; #X connect 71 3 72 0; #X connect 71 4 77 0; #X connect 72 1 75 0; #X connect 73 0 74 0; #X connect 73 0 110 1; #X connect 73 0 111 1; #X connect 73 0 112 1; #X connect 73 0 113 1; #X connect 75 0 47 0; #X connect 76 0 54 0; #X connect 77 0 79 0; #X connect 77 0 78 0; #X connect 77 1 80 0; #X connect 77 1 78 0; #X connect 77 2 81 0; #X connect 77 2 78 0; #X connect 77 3 82 0; #X connect 77 3 78 0; #X connect 77 4 92 0; #X connect 78 1 101 0; #X connect 79 0 85 0; #X connect 80 0 85 0; #X connect 81 0 85 0; #X connect 82 0 85 0; #X connect 84 0 41 0; #X connect 86 1 93 0; #X connect 87 0 91 0; #X connect 88 0 91 0; #X connect 89 0 91 0; #X connect 90 0 91 0; #X connect 92 0 87 0; #X connect 92 0 86 0; #X connect 92 1 88 0; #X connect 92 1 86 0; #X connect 92 2 89 0; #X connect 92 2 86 0; #X connect 92 3 90 0; #X connect 92 3 86 0; #X connect 92 4 100 0; #X connect 93 0 76 0; #X connect 94 1 56 0; #X connect 95 0 99 0; #X connect 96 0 99 0; #X connect 97 0 99 0; #X connect 98 0 99 0; #X connect 100 0 95 0; #X connect 100 0 94 0; #X connect 100 1 96 0; #X connect 100 1 94 0; #X connect 100 2 97 0; #X connect 100 2 94 0; #X connect 100 3 98 0; #X connect 100 3 94 0; #X connect 101 0 75 0; #X connect 102 0 35 1; #X connect 108 0 71 0; #X connect 110 0 103 0; #X connect 110 0 38 0; #X connect 110 1 74 0; #X connect 111 0 38 0; #X connect 111 0 105 0; #X connect 111 1 74 0; #X connect 112 0 38 0; #X connect 112 0 106 0; #X connect 112 1 74 0; #X connect 113 0 104 0; #X connect 113 0 38 0; #X connect 113 1 74 0; #X coords 0 -1 1 1 130 60 2 200 570; #X restore 64 96 pd page4; #N canvas 754 134 475 378 mixer 0; #X obj -103 242 *~; #X obj 69 236 *~; #X obj -34 156 * -1; #X obj 32 151 min 1; #X obj -33 179 + 1; #X obj -32 201 min 1; #X obj -68 234 line~; #X obj 92 209 line~; #X obj 57 178 pack 0 50; #X obj -22 229 pack 0 50; #X obj -30 110 cnv 15 110 30 empty empty empty 20 12 0 14 -261682 -66577 0; #X obj -24 124 hsl 100 15 0 1 0 0 empty \$0-drywet Dry_Wet 30 -8 0 10 -262144 -1 -1 9900 1; #X obj 30 47 loadbang; #X msg 140 85 \; pd dsp 1; #X obj 80 69 delay 100; #X obj -131 147 r~ cleansignal; #X msg 30 82 1; #X obj -74 276 dac~; #X obj -101 27 inlet~; #X connect 0 0 17 0; #X connect 1 0 17 0; #X connect 2 0 4 0; #X connect 3 0 8 0; #X connect 4 0 5 0; #X connect 5 0 9 0; #X connect 6 0 0 1; #X connect 7 0 1 1; #X connect 8 0 7 0; #X connect 9 0 6 0; #X connect 11 0 2 0; #X connect 11 0 3 0; #X connect 12 0 16 0; #X connect 12 0 14 0; #X connect 14 0 13 0; #X connect 15 0 0 0; #X connect 16 0 11 0; #X connect 18 0 1 0; #X coords 0 -1 1 1 110 30 1 -30 110; #X restore 74 157 pd mixer; #X obj -273 33 s~ cleansignal; #X obj -273 7 adc~; #X obj -265 206 cnv 15 100 20 empty empty Distortion 20 12 0 14 -86277 -258113 0; #X obj -151 206 cnv 15 100 20 empty empty Pitch 20 12 0 14 -13381 -4034 0; #X obj -34 206 cnv 15 100 20 empty empty Modulation 20 12 0 14 -83269 -257985 0; #X obj 80 206 cnv 15 100 20 empty empty Echo/Delay 20 12 0 14 -4160 -4032 0; #X text 98 79 Looper 1-4; #X connect 21 0 22 0; #X connect 24 0 23 0; #X connect 24 1 23 0; #X coords 0 0 1 1 85 60 0;