Midi controller to adjust on key press....?????

In this video I am manually adjusting the volume of the first quanta to drop down once I press a key in order to naturally have it fade out while the sound in the second quanta sustains, They are both being controlled by the AUM keyboard.
I'm looking for a way to have the volume automatically slide down gradually when I press the key ... then upon release of the key have it fade back up....However I'm not sure it is possible haha...u can set up rozeta lfo to fade it up and down at a rate but I'm not always playing in time with it so it's not the exact thing I need in this situation.. No disrespect to lfo cuz I abuse it daily πŸ˜†πŸ˜
Does such a thing exist ???

Comments

  • Here's a StreamByter script to do that. Note on event starts ramping the CC up and the note off event starts a downwards ramp.

    The 4 sliders are configured as follows:

    • slider 1, SEND_CC the CC number you wish to send (default 7)
    • slider 2, START, the CC start value when ramping up
    • slider 3, END, the CC end value when ramping up
    • slider 4, TIME the length of the ramp

    When ramping down on a note off, the START/END values are interchanged.

    All incoming notes are blocked, so this script will only generate the ramping CC. If you hold down more than one note simultaneously the ramping will be 'interesting' as the multiple parallel ramps fight each other. The channel number of the sent CC is dictated by the channel of the note events.

    # note triggered CC ramp by audeonic
    IF LOAD
      # setup sliders and variables
      SET Q0 SEND_CC
      SET Q1 START 0 $126
      SET Q2 END 1 $127
      SET Q3 TIME 200 $8000
      ASS Q0 = 7 1 $80 $1000
    
      # init inter message delay (L80)
      ASS L80 = 0
      SND F0 7D 01 03 F7 +I
      SND 80 12 00 +I
    END
    
    # handle note on/off
    9X XX 00 = 8X
    IF M0 < A0
      # determine direction, start+end into I0-2
      IF MT == 90
        ASS I0 = 1 Q1
        MAT I2 = Q2 + 1
      ELSE
        ASS I0 = -1 Q2
        MAT I2 = Q1 - 1
      END
    
      # ramp cc up/dn
      ASS I3 = 0
      IF I1 != I2 +L
        MAT M0 = B0 + MC
        SND M0 Q0 I1 +DI3
        MAT I1 = I1 + I0
        MAT I3 = I3 + L80
      END
    
      # block note on/off
      XX = XX +B
    END
    
    # handle time slider movement
    IF M0 == F0 7D 01 03
      MAT I0 = Q2 - Q1
      MAT L80 = Q3 / I0
    END
    
  • @audeonic said:
    Here's a StreamByter script to do that. Note on event starts ramping the CC up and the note off event starts a downwards ramp.

    The 4 sliders are configured as follows:

    • slider 1, SEND_CC the CC number you wish to send (default 7)
    • slider 2, START, the CC start value when ramping up
    • slider 3, END, the CC end value when ramping up
    • slider 4, TIME the length of the ramp

    When ramping down on a note off, the START/END values are interchanged.

    All incoming notes are blocked, so this script will only generate the ramping CC. If you hold down more than one note simultaneously the ramping will be 'interesting' as the multiple parallel ramps fight each other. The channel number of the sent CC is dictated by the channel of the note events.

    # note triggered CC ramp by audeonic
    IF LOAD
      # setup sliders and variables
      SET Q0 SEND_CC
      SET Q1 START 0 $126
      SET Q2 END 1 $127
      SET Q3 TIME 200 $8000
      ASS Q0 = 7 1 $80 $1000
    
      # init inter message delay (L80)
      ASS L80 = 0
      SND F0 7D 01 03 F7 +I
      SND 80 12 00 +I
    END
    
    # handle note on/off
    9X XX 00 = 8X
    IF M0 < A0
      # determine direction, start+end into I0-2
      IF MT == 90
        ASS I0 = 1 Q1
        MAT I2 = Q2 + 1
      ELSE
        ASS I0 = -1 Q2
        MAT I2 = Q1 - 1
      END
    
      # ramp cc up/dn
      ASS I3 = 0
      IF I1 != I2 +L
        MAT M0 = B0 + MC
        SND M0 Q0 I1 +DI3
        MAT I1 = I1 + I0
        MAT I3 = I3 + L80
      END
    
      # block note on/off
      XX = XX +B
    END
    
    # handle time slider movement
    IF M0 == F0 7D 01 03
      MAT I0 = Q2 - Q1
      MAT L80 = Q3 / I0
    END
    

    Awesome! Can I copy n paste that into it ?

  • @reasOne said:

    @audeonic said:
    Here's a StreamByter script to do that. Note on event starts ramping the CC up and the note off event starts a downwards ramp.

    The 4 sliders are configured as follows:

    • slider 1, SEND_CC the CC number you wish to send (default 7)
    • slider 2, START, the CC start value when ramping up
    • slider 3, END, the CC end value when ramping up
    • slider 4, TIME the length of the ramp

    When ramping down on a note off, the START/END values are interchanged.

    All incoming notes are blocked, so this script will only generate the ramping CC. If you hold down more than one note simultaneously the ramping will be 'interesting' as the multiple parallel ramps fight each other. The channel number of the sent CC is dictated by the channel of the note events.

    # note triggered CC ramp by audeonic
    IF LOAD
      # setup sliders and variables
      SET Q0 SEND_CC
      SET Q1 START 0 $126
      SET Q2 END 1 $127
      SET Q3 TIME 200 $8000
      ASS Q0 = 7 1 $80 $1000
    
      # init inter message delay (L80)
      ASS L80 = 0
      SND F0 7D 01 03 F7 +I
      SND 80 12 00 +I
    END
    
    # handle note on/off
    9X XX 00 = 8X
    IF M0 < A0
      # determine direction, start+end into I0-2
      IF MT == 90
        ASS I0 = 1 Q1
        MAT I2 = Q2 + 1
      ELSE
        ASS I0 = -1 Q2
        MAT I2 = Q1 - 1
      END
    
      # ramp cc up/dn
      ASS I3 = 0
      IF I1 != I2 +L
        MAT M0 = B0 + MC
        SND M0 Q0 I1 +DI3
        MAT I1 = I1 + I0
        MAT I3 = I3 + L80
      END
    
      # block note on/off
      XX = XX +B
    END
    
    # handle time slider movement
    IF M0 == F0 7D 01 03
      MAT I0 = Q2 - Q1
      MAT L80 = Q3 / I0
    END
    

    Awesome! Can I copy n paste that into it ?

    Just do it.

Sign In or Register to comment.