I though that the solution might be to assemble a little Event Core Cell to route Note Pitches between 20 and 75 to a certain set of modules, but am at a loss as to how to combine them.

The Logic AND doesn't accept the outputs of the Compare modules and neither does the Bitwise AND.

Seems like this should be a simple thing to do.

Reaktor Event Core Cell


The answer below separates the opening of the gates, but at least the way the instrument is configured at the moment, the closing of the gates is being controlled by the ADSR, so that if the LOW module has a long release and the MID module has no release, the notes in the MID module, followed by a LOW note, will maintain the residual release time from the LOW module.

This is the Instrument (Alt Splitter not in use):

The Entire Instrument

Here's one of the Modules: One of Three Modules

I noticed that the A input on the Par Sync Oscillator is what sustains the ADSR and am thinking that I either need:

  • some logic between the Volume ADSR and the Osc
  • something other than a simple Add module following the three Oscilators

You can set an instrument to receive only notes within a certain range, so if you divide the modules into different instruments, you can make each react to a different (possibly overlapping) key range. This is set in the instrument properties, or dynamically using the NoteRange module.

Reaktor - note range module

If you don't connect anything to the output of the NoteRange module, you have to set it to "always active" in the properties for it to have any effect.

(The NotePitch module also has a lower and upper limit in its properties, but this doesn't stop incoming notes, it just limits their note value to the range you set, so this isn't useful for this purpose.)

To split incoming MIDI Note and Gate events into key ranges within one instrument, using comparison and logic, you could use something like this:

Reaktor - note range (compare)

You could additionally multiply the Pitch by the output value of the And module, but that doesn't really make much sense. A note value of zero isn't actually a neutral value, it's just a really low note. Whether or not a group of modules output a signal should really be controlled by the Gate signal.

A different method, using event separators and signal path modules, could be something like this:

Reaktor - note range (signal path)

It relies on the Note Pitch event always arriving before the Gate event, which is true in Reaktor 4 but should be checked if you're using another version.

  • Thank you so much. The first method works for gate trigger, but when I have a long release on the volume envelope (in the Par Sync osc), the keys outside of the Compared Range are audible, fading in volume over the Release time. The 2nd example I will experiment with as well... tomorrow. – MikeiLL Mar 28 '19 at 1:59
  • I am a bit lost in the second example. 1. Is the module labeled >> a Math->Add module? 2. What are the modules labeled, Value? The "Value" module (Event processing) in R5 and R6 doesn't have an icon in it and the "in" is labeled "trig". 3. Is the "Lo" output from the second Separator going into the top Value box and if so, what is going into the P output? – MikeiLL Mar 29 '19 at 0:39
  • @MikeiLL 1. The >> modules are event mergers. 2. The Value module Trig input in v5 will be the In in v4; the module changes the value of events. 3. The Separator's Lo output goes to both the Value input and the P terminal input. (I selected the first wire so it turns blue, and you can see that it goes into the Value and there's a second one underneath that goes on to the Terminal.) – Your Uncle Bob Mar 29 '19 at 0:50
  • I'm such a deer in the headlights, I was thinking the new "trig" label on the Value module stood for "trigonometry"! It's "trigger", isn't it? – MikeiLL Mar 29 '19 at 1:18
  • If I haven't exhausted your inspiration yet, the question is updated to address an issue where ADSRs from one Module seem to be affecting the output of the others. – MikeiLL Mar 29 '19 at 1:46

It looks like the problem where it sounded like the Oscillators with the short releases were retaining the releases was an illusion.

What was actually occurring is that the pitches of the Oscillators with the long releases were being modified by the new incoming pitches.

The pitch as well as the gate need to be routed through the Splitter, otherwise held-over notes receive pitches from other keyboard zones.

This is the splitter I came up with (based on Your Uncle Bob's direction):

Three was keyboard splitter

This is the instrument:

Simple instrument with Three keyboard zones

I may refactor so that rather than having constants for the breakpoints (72 and 50 in this case) there are user controls.

Ideally the user controls will also include visual feedback and perhaps affect one another so that the High breakpoint cannot be lower than the Low breakpoint.

  • 1
    I think this is actually a case where it might make more sense to make an ensemble with 3 separate instruments (depending on what else you want to happen). – Your Uncle Bob Mar 29 '19 at 4:01
  • Maybe. I'm not sure yet. At the moment just want to find some way to subdue the high "bell" frequencies and wrestling with the Peak EQ. Then being able to have different release lengths for the Bass, Toms and Bells. It's my first instrument. – MikeiLL Mar 29 '19 at 4:05
  • One thing I'm just realizing is that if I want to have say the "Bass" be monophonic and the "Bells" poly, it will need to be in multiple instruments won't it? Is there a way of adding a mono/poly toggle to a reaktor panel? – MikeiLL Mar 29 '19 at 4:32
  • 1
    Well, there's a way to do almost anything you can imagine in Reaktor, but separate instruments will allow you to set polyphony and voice precedence independently, and will greatly simplify things. Doing it in one instruments is an interesting exercise, but maybe a bit ambitious for a first project. – Your Uncle Bob Mar 29 '19 at 4:48
  • Ambitious? It's your fault for being so helpful. : ) – MikeiLL Mar 29 '19 at 4:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.