Round Robin + Group XFade

  • With the current system you can have either RR groups or you can have XFade groups. But what if you want both...

    Current solutions:

    Use velocity to separate RRs (I'm currently using this) - downside is you lose the basic velocity functionality for triggering samples.
    Use multiple samplers - eats CPU.
    Use multiple xfade groups and script the RR - currently limited to 8 xfades

    The last one I think is the most flexible. Lets say you have 2 dynamic layers you want to XFade and 3 RRs. You can map your dynamics in groups 1/2, 3/4, 5/6 set up group XFades for these groups and write a simple RR script to trigger the groups. I haven't tested this but I assume it will work. The main limitation to this is that currently we can only have up to 8 xfade groups - @Christoph-Hart any chance of bumping this number up? I have 4 RRs and 3 Dynamics so that needs 12 groups.

  • Another possibility would be to use a note offset for the RR group. This works of course only for sample sets which don't span the entire keyboard (but for normal orchestral instruments with their limited range you should be fine).

    Let's say you have 2 dynamic layers and 3x RR with a sample set that goes from C2 to B4 (3 octaves = 36 notes). Then you can map the RR1 group to the notes C-1 to B1, RR2 to C2 to B4 and RR3 from C5 to B7 and implement the RR logic like this:

    reg octaveShift = 0;
    function onNoteOn()
        local thisShift = (octaveShift-1) * 36;
        octaveShift = (octaveShift + 1) % 3;

    With 3 RR groups you have 127 / 3 = 42 note slots available using this trick.

  • @christoph-hart I will use this technique! Very good suggestion 🙂 thanks

Log in to reply