Dup Ver Goto 📝

MIDI Controlled Gate 2

To
38 lines, 131 words, 712 chars Page 'MidiControlledGate2' does not exist.
desc:jda midi controlled trance gate

in_pin:left input
in_pin:right input
out_pin:left output
out_pin:right output

@init
gain = 0;
tgt_gain = 0;
fade_time = 0.01;
fade_spls = fade_time * srate;
dg = 1/fade_spls;

@block

@sample
while(midirecv(offset,msg1,msg2,msg3)) (
  cmd = msg1 >> 4;
  ( cmd == 0x9 ) ? ( tgt_gain = 1; ) :
  ( cmd == 0x8 ) ? ( tgt_gain = 0; );
  midisend(offset,msg1,msg2,msg3);
);
( gain != tgt_gain ) ? (
  ( gain > tgt_gain ) ? ( 
    gain -= dg; 
    ( gain < tgt_gain ) ? ( gain = tgt_gain; ); // overshoot management
  );
  ( gain < tgt_gain ) ? ( 
    gain += dg; 
    ( gain > tgt_gain ) ? ( gain = tgt_gain; ); // overshoot management
  );
);

spl0 *= gain;
spl1 *= gain;