1. IMPORTANT:
    We launched a new online community and this space is now closed. This community will be available as a read-only resources until further notice.
    JOIN US HERE

Velocity Switching?

Discussion in 'Building With Reaktor' started by dfa, Apr 26, 2005.

Thread Status:
Not open for further replies.
  1. dfa

    dfa NI Product Owner

    Messages:
    474
    Hello,

    I can't figure out a simple way to do this very basic synth functionality.

    If the MIDI keyboard velocity is less than X, the Gate value gets sent to sound generator A. If the velocity is between X and Y, the Gate value gets sent to sound generator B. If the velocity is greater than Y, the Gate value gets sent to sound generator C.

    The two sound generators that are not getting the current Gate value, get a value of 0 instead (actively, to switch them off when the other sound generator starts up).

    The number of breakpoints can be configured in the structure. The breakpoint locations can be adjusted in the panel.

    Anyone agree this ought to be something you can just set in the Gate module -- there are min/max fields, and if the incoming MIDI velocity is between those two values, the actual value (scaled to 0-1 of course) gets sent, otherwise 0 is sent?

    I'd like a module for velocity crossfades and note range crossfades as well. Haven't exactly thought that through, but I think you set the main range area, and the fade out ranges, and a "level" output on the module lowers the volume on your sound source when the input value gets into the crossfade range...

    Thanks
    Doug
     
  2. dfa

    dfa NI Product Owner

    Messages:
    474
    Yes that's perfect. Thank you. Now can you make me a velocity crossfade :)


    From Gate value 0 to Gate value 0.3, the actual Gate value is sent to output A.

    From Gate value 0.3 to Gate value 0.4, the actual Gate value is progressively scaled, from Gate value * 1 at 0.3 to Gate value * 0 at 0.4. This is sent to output A.

    From Gate value 0.3 to Gate value 0.4, the actual Gate value is progressively scaled, from Gate value * 0 at 0.3 to Gate value * 1 at 0.4. This is sent to output B.

    From Gate value 0.4 to 0.6, the actual Gate value is sent to output B

    From Gate value 0.6 to Gate value 0.7, the actual Gate value is progressively scaled, from Gate value * 1 at 0.6 to Gate value * 0 at 0.7. This is sent to output B.

    From Gate value 0.6 to Gate value 0.7, the actual Gate value is progressively scaled, from Gate value * 0 at 0.6 to Gate value * 1 at 0.7. This is sent to output C.

    From Gate value 0.7 to 1.0, the actual Gate value is sent to output C
     
Thread Status:
Not open for further replies.