This Reaktor 5 ensemble is a production-quality modular workbench for real-time performance, complex sequences, and audio exploration. It contains dozens of full-featured units, essentially cramming three complete polyphonic synthesizers into one instrument. An extremely flexible design provides access to virtually every audio and event modulation possible. Even so, the control panel is small enough to display completely, even on small 1024x768 monitors.
Many thanks to the following folks for their assistance!
Inventing a New Modular Paradigm
The Hegel Ensemble was the first Metamusic design, and the first ever in Reaktor, to incorporate a totally modular panel-based routing system. Any audio block with an output can connect to any audio block with an input. As the modularity is in the panel, rather than in the structure, different modular setups are saved with the snapshot. This concept was widely adopted in the Reaktor community.
At the time Hegel was designed (for Reaktor 4.01), there was a real problem with switch noise, because any switch change caused the entire instrument to reset. Since that time, Native Instruments introduced an improved initialization sequence which greatly minimized switch noise, so the second major feature in Hegel, switchless modular event routing, has not been so widely adopted. Its benefit over standard design is that morph changes and snap switches with the same audio routing do not disrupt the sound output at all. This is really a necessary feature in production studio music, which has resulted in much interest in the Metamusic instruments from professionals in the television and movie business.
Architecture OverviewThe A panel contains three oscillators, three filters, two distortion units, a waveshaper, three LFOs, six envelopes, six submixers, four sequencers, sample and hold, unisono control, tempo control, and a three-channel mixer with polyphonic mixing and pan, echo, and chorus. The implementation is complete: for example, audio and events can modulate any available parameter for all Reaktor oscillators. The B panel provides detailed manipulation of the sequencers, as well as an audio recorder and velocity/aftertouch shaping.
A switchless matrix lets 30 different event sources modulate >100 different sound parameters. The matrix is a full butterfly implementation, which means different amounts of multiple modulations can affect the same parameter. For example, any number of envelopes, LFOs, sequencer values, and MIDI controllers can all modulate filter frequency by a different amount for each source. Matrix 1 provides modulation of all the audio parameters; Matrix 2 provides modulation of envelope, LFO, sequencer, and tempo parameters.
The audio modules are fully modular, so they can be chained in any serial or parallel combination; audio paths can also be blended together with submixers. Only the audio path is switched in Hegel; if two snaps use the same switch settings, you can change between the snaps without interrupting the sound or timing. This lets you use snapshots to change between vastly different sound scenes, either instantaneously, or gradually through morphing.
Those familiar with modular hardware will know how complicated it is to set up triggers and gates. Here all the wiring has been done for you (if you look inside the structure, you’ll see what I mean). The sequencers, LFOs, and envelope sources offer over dozens of different triggers and gates, so they can trigger and gate each other, or be triggered in many different ways by MIDI notes.
The three audio envelopes can each play MIDI or different sequencer tracks at the same time, polyphonically, letting you split the modules up into three separate instruments that play different sounds. Because all the modules are combined in one instrument, the pitch of one envelope can modulate the filter of another, and so on. Alternatively, all the modules can be configured into one giant complex instrument, as desired.
Even more has been done to reduce CPU usage. After the ensemble loads (which may take some time because the structure is very large), you will find it smooth and responsive. The last beta was tested on PentiumIII, PerntiumIV, Macs, Athlons, and G4 CPUs. Six voices are found functional on CPUs down to a 700MHz G3.
If you load the ensemble in a Reaktor instance that is already running, you may need to turn the Reactor audio off and on again to activate the design (it depends on your type of audio and CPU).
Configuring an Audio PatchFor the audio modules there are switches (displayed as drop lists) called “Input” or “Audio” in the top left corner. To build an audio patch, simply build a chain of these from the oscillator to envelopes. The audio path is the only part of the instrument which uses switches—the rest of the instrument uses event logic, so as not to interrupt the sound. If two snaps use the same switch positions, you can change between them without interrupting the sound. Audio switches have the following inputs:
It’s sometimes easiest to set up the audio path backwards, starting at one of the audio envelopes. Say you select “f1” as the input for one of the envelopes. Then select “o1” as the input for f1. Make sure the “env1” button in the output mixer is turned on, and turn up the volume, and the audio patch should be audible.
To make the sound more complex, you can use the submixers to link different components in parallel or in series, simply by chaining modules in different ways. For wider configurations, you can feed the output of one submixer into the input of another.
There are three separate envelopes each of which can be switched on or off, so there may be up to three separate audio paths. Alternatively, only a few of the envelopes can be used, or multiple envelopes can shape the same sound.
The three audio envelopes feed the three channels in the output mixer. The output mixer provides polyphonic modulation of the output level, channel pan, echo send, echo pan, and chorus send for each channel separately.
Some components have additional audio switches. For example, the oscillators also have switches for audio modulation of AM, FM, sync, and phase/width. The filters also have FM modulation. These can be routed from any other audio source, including the submixers.
Volume and CPU AdjustmentThere is a snap-isolated control in the instrument, labeledMASTER on the right side of output mixer. This lets you adjust all the preset snaps for your particular sound card and audio hardware. Generally you can set this control and forget it.
If you have a slower CPU, you can adjust the CPU usage of continuous event controllers using theCPU list box in the output control panel. This list is snap isolated. On a 700Mhz Macintosh this reduces CPU sage by 20-50% when using LFOs or envelopes for event modulation.
A 2.6GHz P4 can run everything turned on with 20 voices at 44.1kHz. By default the instrument has 6 voices. To reduce CPU usage, you can also reduce the number of voices; reduce the audio rate; or reduce the event rate down to 100Hz. If you reduce the number of voices, it’s a very good idea to turn off Reaktor audio (from the toolbar button or menu) first, or it can take quite a long time to reconfigure itself).
Table Data Saved with SnapsThe table data (for sequencers and waveshaper) are stored with each snap, so you don’t have to worry whether changing the table data for one snapshot is going to change another snapshot incidentally. You can copy and paste sequences between snapshots using the copy/paste editor in the B panel.
Velocity and Aftertouch ShapingYou can use the B panel to customize the velocity and aftertouch response to incoming MIDI. For example, press a key with pressure and look on the right edge of the aftertouch panel, you will see an indicator showing the resulting value. Now you can adjust the range with the low and high sliders to the left and right of the vertical control, and the shape of the response (linear, curved, or bicurve) using the XY control. Note if you move the XY cursor around in the XY panel when in curve or bicurve mode, the curve inflexes in the other direction and changes shape. The velocity and aftertouch shapers are snap isolated, so you only need to do this once for your keyboard.
Morph/RandomReaktor’s morph/random controls in the snapshot browser are fully enabled for everything that is not a list or switch. Reaktor’s CPU load during morphing can be very intensive. The instrument does what it can to reduce CPU load, but if you are changing a lot of different parameters, you may need quite a fast machine.
VST and MIDI OutIf you enable MIDI out in the instrument properties panel, you will be able to capture the polyphonic pitch sequences generated the sequencers. The instrument contains logic to prevent MIDI feedback, so you should be able to receive and transmit on the same MIDI channel.
For VST, the instrument is designed so that the parameter names are not truncated, and are as far as possible legible in Cubase SX 1.0.
The three main envelopes are very sophisticated, allowing many different uses. If the audio source in the top left is switched on, the audio envelope is applied to the source on the corresponding channel of the output mixer. If the audio source is switched off, the envelope can still be used as an event modulation source.
Poly, Mono, and LegatoThe separate “Pitch” module (in the instruments top left corner) contains one list that sets the overall mode for all instruments. See the section “Oscillators” for more information. The following descriptions assume polyphonic operation; in mono and legato modes, all voices trigger in exactly the same way.
Delving into the Panels
Hegel was the first design to implement metasequencing, achieved by the interaction of envelope triggers and sequencers.
AudioSelects the audio source for the envelope. Envelope amplitude is then applied to this audio stream before it is sent to the respective mixer channel. Env1 audio is sent to output mixer channel 1; Env2 audio is sent to output mixer channel 2; and Env3 audio is sent to output mixer channel 3.
If the envelope audio is off, internal logic disables the mixer channel path, for reduced CPU usage. So if you are not using envelope audio output, you can save CPU by turning audio off. Alternatively, if you want to switch to another snapshot which uses an envelope’s audio output without interrupting the sound output, then leave the audio on in the envelope, and change the MUTE button in the output mixer channel to enable/disable audio instead.
ModeThe “Mode” list selects the way the envelope is triggered and gated. MIDI, sequencers, other envelopes, and LFOs can trigger the envelope. Operation is somewhat different depending whether envelope audio is on or off.
If audio is on, the envelope assigns voices for each incoming trigger and sends the pitch out to the rest of the instrument. Voices from all three envelopes (and voices from the “unisono” unit are merged, so all the voices available in the instrument are shared by all the envelopes. For this, the instrument contains its own voice allocation logic that assigns voices in the same way as Reaktor’s “OLDEST” voice assign mode.
If audio is on, trigger modes function as follows:
If audio is off, the mixer does not receive any audio from the envelope channel, and additional voices are not assigned to the envelope. Instead the envelope gates on the same voices as for other envelopes. As a result, the envelope can still be used as an event and audio modulation source. For MIDI, sequencer, and LFO modes, all voices trigger monophonically (all voices trigger and gate in exactly the same way) because the envelope otherwise has no way of knowing which voice to assign for incoming triggers, but the envelope is nevertheless available as a modulation source for all voices. However if audio is off and the envelope is being triggered by another envelope, then the voice information from the source envelope is used to assign voices.
While this all sounds very complicated (and took a long time to work out), it’s easy to see the effect visually in the different modes with the voice level meter in each envelope panel.
HoldFor sequencer modes, the “Hold” list controls the duration of the high gate. All envelopes are fully polyphonic, so sustain and release phases an overlap for consecutive notes, up to the available polyphony in the Reaktor instance. Note, all three envelopes share the available voices, so if there are long hold periods for one or more envelopes, voice stealing can affect the sound.
For MIDI modes, the “Hold” value sets aminimum duration of the note. Even if just touching a MIDI key on an input keyboard, the gate will stay high for the hold period. If the MIDI key is held down longer than the hold period, the gate will stay high for as long as the key is held down.
Predelay and RepeatThe “Rpt” button provides additional modes in combination with the “Pre/Rpt” list. If the “Rpt” button is off, the “Pre/Rpt” value sets a delay before the note starts, regardless of the trigger source. If the “Rpt” button is on, the envelope retriggers itself at a frequency set by the “hold” and “Pre/Rpt” values. The actual behavior depends whether the “hold” or “pre/rpt” values is longer:
Note that PREDELAY also affects notes arriving from a keyboard, so if there is a predelay period you won’t hear a note for awhile after pressing a key.
Also note, if audio is off, predelay and repeat are applied to the gate signal from the MODE source. This means for example, if audio is off on Env1 and its trigger mode is ENV2, then setting a predelay on Env1 causes its gate from ENV2 to be delayed.
MultThe MULT button in the envelopes is only effective when the envelope is being triggered by the sequencer. If playing notes from a sequencer and MULT is on, every single step from the sequencer creates a note. If MULT is off, a step with the same pitch as the previous step does not retrigger the envelope or create a new note.
If the first note in some sort of looped sequence is the same as the last note, then the first note from the sequence will also be masked out when MULT is off. If you find some notes aren’t present that you want, try turning MULT on. It may be for example that the matrix is modulating sequencer pitch and generating strings of identical pitch values in some manner. On the other hand if you want to add rests into a sequence pattern, you can turn MULT off.
What if you want two consecutive notes to be the same pitch, but also have note rests? Then set the pitch scale to say, C major, then put some sharps or flats in the pattern where you want repeating notes. The pitches will be different when they arrive at the envelope, but then when the envelope sends them to global pitch and oscillators, they will be remapped to the same note.
XY, LVLThe XY panel displays the current level of each voice. In addition the Y axis provides overall control of the envelope amplitude. Velocity modulations are applied to the level set in the XY control.
A, D, S, RThe A, D, S, and R sliders are the envelope’s preset attack, decay, sustain, and release values, before modulation by velocity, pitch, and matrix2.
By default Reaktor uses the current amplitude of an envelope as the starting value when an envelope is triggered. In other words, if one voice has a long release and high sustain, and is therefore still playing, then a new note on the same voice has a shorter attack because it starts from the amplitude of the already playing voice. Hegel therefore contains logic to bypass this undesired behavior.
VsensVSENS sets the velocity sensitivity. If set to 0, the envelope velocity is fixed by LVL. If set to 1, the envelope is fully responsive to velocity. If set to negative values, higher velocities reduce the envelope amplitude (useful for attenuating event modulation).
The PITCH module sets the global pitch characteristics for the oscillators; each oscillator can then have its own pitch settings. The PITCH module also contains a global MODE list.
The four sequencers are viewable in the A panel by selecting the “Edit” button. They are also editable separately in the B panel.
EnableThe “Enable” button turns on and off all four sequencers.
ZoomThe “zoom” button just causes the view to show just those enabled steps for each sequencer, and does not otherwise affect the sound.
ModeFor the MIDI modes, the sequence is transposed by the played MIDI key around middle C. For example, playing the D above middle C causes the sequence to be transposed up two semitones; but only for the MIDI modes! You can also use the event matrix to transpose the sequence; for example, sequencer 2 can transpose sequencer 1.
RateTHE RATE list sets the duration of each step in tempo units.
SeqLenThe SEQLEN list sets the number of steps that are played in one iteration through the sequence.
Begin#The BEGIN# field sets the first step for the sequence.
PermuteIn the B panel, the PERMUTE module lets you edit the sequences in various ways.
Seq, from, toSEQ selects the sequencer for the operation. The FROM and TO knobs set the range of steps for the operation.
Transpose, Rotate, AmountThe TRANSPOSE button shifts the steps from FROM to TO in SEQ by AMOUNT. The ROTATE button rotates the steps clockwise or anticlockwise, by AMOUNT.
Copy, Paste, ClearThe COPY button places all the steps in the SEQ sequencer in the edit buffer. The PASTE button pastes those steps in the range FROM to TO. The CLEAR button empties the sequencer steps in the sequencer SEQ, in the range FROM to TO.
The three LFOs are all polyphonic. Envelopes 1-3 also contain envelopes 4-6 respectively, sharing the same gate and sync sources. The envelopes in the LFOs cause the LFO to fade in and/or fade out.
ModeSelects overall polyphonic/monophonic mode:
MicrotuneApplies microtuning after pitch shift, but before fine tuning and glide, for global pitch and osc1/2. The default mode is equal tempered. Descriptions of the other microtune scales are available in the B panel. Microtuning is applied after pitch transposition. Microtuing sets the microtonal scale before fine-tuning, voice spread, and glide.
Shift, Scale Map, Key, MapThe SHIFT knob applies a semitone transposition. SCALE MAP and KEY remap pitches to a key scale. Remapping is after SHIFT, but before fine tuning and glide.
In the oscillators, the MAP button determines whether scale mapping is again applied after local pitch shift. For example, if pitch shift is +6, then a C3 would normally transpose to F#. However if MAP is on and the scale is C Major, then the C3 note would remap to G.
sprdSPRD applies a small pitch offset to each voice, useful for adding breadth in monophonic modes. Spread is applied after microtuning and scale remapping.
glide>out, glideThe GLIDE>OUT list selects the envelopes (ENV1, ENV2, ENV3) to which glide is applied. For example if set to 1, then notes from env1 have glide, and notes from the other oscillators do not. Set GLIDE>OUT to off to disable glide.
The GLIDE list sets the glide interval as a tempo value. All notes have the same glide interval no matter the distance between the notes. Glide interval can be modulated by the matrix to create detuning effects during glide, or to enable glide selectively from a foot pedal or sequencer.
Glide is fully polyphonic, occurring between the last note and the current note. Moreover the synthesizer calculates glide for each envelope, and for notes from the unisono module, separately. See the snaps for an example.
The oscillators have the following identical controls.
WAVEThe WAVE switch selects the audio source:
The DESCRIPTION text field provides more information on the waveforms. An “F” suffix indicates that FM and sync are available (only soft sync is available for wavesets). A “W” suffix indicates that width modulation is available.
For FM and SYNC oscillators, internal logic automatically switches the oscillator module for the lowest possible CPU usage. The lowest CPU utilization is for “F” mode oscillators without FM or SYNC enabled.
AMsrc, AMThe AMSRC switch enables AM modulation by an audio source, also selecting the source. If AMSRC is on, the AM knob controls the amount of AM modulation. Internal switching reduces CPU usage if AM is turned off; also, if AMSRC is off, the AM knob attenuates the amount of amplitude modulation by any modulation sources that have been set up in the modulation matrix.
If you modulate AM with an oscillator, the result is ring modulation. If you modulate AM with LFOs, the result is tremolo. You can also use envelopes to modulate oscillator amplitude by different amounts, so that different oscillator levels are passed into other units. Note that matrix modulation of AM is fully polyphonic, so for example different levels of tremolo can be generated for each voice.
FMsrc, FMThe FMSRC switch enables FM modulation by an audio source, also selecting the source. If FMSRC is on, the FM knob controls the amount of FM modulation. Internal switching reduces CPU usage if FM is turned off. FM depth is set in semitones around the oscillator’s current output pitch.
Ph/WsrcThe PH/WSRC switch enables audio-rate modulation of phase (for Sync oscillators) or width (for audio oscillators). If enabled, unity-gain audio modulation adds +/-1 to the values of the phase or width knobs, and values exceeding the +/-1 range of these parameters are mirrored. Typically the audio source would be a one-input submixer so that the audio source can be attenuated to the desired value.
Sync, Ph/WSIf the FM switch is on, the SYNC switch additionally enables sync for FM sources.
Hard sync is not available for the Waveset oscillator. For wavesets, the Ph/WS knob instead selects the waveset. Wavesets can be changed during a note (most implementations can only change wavesets at the beginning of a note). This means, when using a waveset oscillator, you can twist the WS knob to change oscillator types dynamically, without switch interruptions.
Contour (Wide)WIDE sets the width ratio for width-modulated oscillators. It also sets the ramp slope for the biramp oscillator, resonance for the Noise Q oscillator, and startpoint for the waveset oscillators. For this reason WIDE is also called CONTOUR.
TrackTRACK sets the amount of pitch tracking. For linear pitch tracking, set to midpoint value 1. At 0, there is no pitch tracking. At 2, pitch tracking is double the source pitch.
Typically TRACK is set to 1. If you just want to modulate oscillator pitch by an LFO and/or envelope, then set to TRACK to 0, set SHIFT to the pitch offset; then either use FM or Matrix1 to apply the LFO/envelope modulations to the pitch.
FineFINE applies a detuning offset in cents to the oscillators. Fine tuning is applied after microtuning.
The unison module lets you generate two or three notes from each note passed to one of the envelopes 1-3. As a result, sequencers, MIDI and so on can generate chords from single notes.
In the module controls, you can apply a transposition and detune offset to these extra notes. Internal logic ensures that polyphonic glide is applied correctly to notes generated by the unison module.
Obviously, unison only works in when the instrument is in polyphonic mode. Unison is disabled when in a mono or legato mode.
The six submixers each have two inputs and one MIX knob. Two of the submixers also have AM switches, and another two have boost controls.
Audio modifiers plug into the path between the oscillators and output to modify the sound quality.
Input A, Input BThese switches select the two inputs for each submixer. By setting one to an audio source and leaving the other OFF, the submixer can be used to attenuate a signal’s amplitude. By setting one submixer’s input to be the output of another submixer, they are combined together to build a wider mixer.
Mix, AMMIX controls the relative mix of input1 and input2 passed to the output. When set to 0, the output is input1 only; when set to 1, the output is input2 only, and intermediate values are linear mixes of the two inputs.
If the AM switch is on for submixers 5 and 6, the mix knob instead controls the amount of AM modulation of input A by input B.
Note, if AM is off, the submixer uses less CPU but modulations to the mix level are smoothed at 10Hz rate to eliminate zippering.
BoostFor low-level signals used to modulate FM, AM, Phase, and other audio parameters, BOOST lets you amplify the output.
The two identical filter units provide multiple filtering modes.
Input, KindThe INPUT switch sets the audio input, and the KIND switch sets the type of filter. Setting input to OFF disables the filter entirely (and turns off the XY panel), saving CPU. The following filter types are available:
FmSrc, FMThe FmSrc switch sets the FM source. Internal logic reduces CPU if this switch is set to OFF. The FM knob controls the amount of FM modulation. FM modulation depth is set in semitones around current filter pitch.
Psrc, Pcntr, Ptrk, QtrkPSRC selects the pitch source used for frequency tracking, and the Pcntr knob sets the center frequency. For linear tracking, set PCNTR to middle C (C3). To skew pitch tracking so that lower frequencies cause greater pitch change, lower PCNTR. To skew pitch tracking so that higher frequencies cause greater pitch change, increase PCNTR. PTRCK and QTRK set the amount of pitch tracking for filter frequency and resonance, respectively.
Sat, Mix, LimitThe SAT switch enables post-filter saturation. When on, the MIX knob controls the amount of saturation on the output. When off, the MIX knob controls the mix of unfiltered/filtered signal sent to the output.
The LIMIT switch enables a polyphonic limiter on the filter output.
XY ControlThe XY control displays the current frequency and resonance for each voice, after shaping and modulation. The XY control crosshair sets the base frequency and resonance for the filter.
HiQWhen on, resonance has a more logarithmic characteristic, providing higher degree of control at higher resonances. When off, resonance is linear.
A, B, A>P, B>P, A>Q, B>Q.-The A and B list boxes select two modulation sources for the filter. See the section on matrix modulations for a description of the modulation sources.
The A>P and A>Q knobs set the amount that modulation source A is applied to frequency and resonance, respectively. The B>P and B>Q knobs perform the same function for modulation source B.
The pitch and modulation amounts for source A and source B are normally positive. To change their polarity, press the “-“ button next to them.
This is a simple parametric equalizer.
InputThis switch selects the audio input for the equalizer.
P, TrkThe P knob sets the center pitch for the equalizer in MIDI note units. TRK sets the amount of pitch tracking applied from global pitch.
FmSrc, FmFmSRc is a switch to select an audio source for FM modulation of the EQ frequency, and FM sets the FM modulation depth in semitones around the current EQ pitch.
EQ FM depth is one of the few parameters for To modulate FM, pass the FM source through a submixer, and modulate the submixer.
BandBAND sets the width of the equalizer’s boost/cut region.
QThe boost/cut factor (-20dB to +20dB).
The waveshaper module (“shaper”) is probably the most unique module in the instrument. The EDIT table lets you draw 3 different curves over an eight-point range. The shaper’s internal logic fills a 96-point table with a stepped, ramped, or curved waveshape. The shaper can be used in three different ways (simultaneously, if desired):
Osc1 morphs from wave1 when contour=0, to wave2 when contour=1.
Osc2 morphs from wave2 when contour=0, to wave3 when contour=1.
Osc3 morphs from wave3 when contour=0, to wave1 when contour=1.
For the oscillators, FM, hard sync, soft sync, and contour are available for the oscillator waveforms you draw.
In this mode the waveshaper defines a curve for audio passing into it. When the input audio value is –1, it is mapped to the value at the left edge of the edit table. When the input audio value is +1, it is mapped to the value at the right edge of the table. Intermediate input audio values between –1 and +1 are mapped to corresponding middle points in the EDIT table. The shaper module’s SCENE value sets which of the three waveforms are used; intermediate values provide mixes of the three waveforms, and the SCENE can be modulated from matrix 1.
AudioThe AUDIO switch selects the audio source for the waveshaper. If off, the shaper is still available as an event modulation source.
E RateFor event modulation, sets the rate at which the shaper curve is scanned.
E ModeFor event modulation sets the trigger mode for the shaper:
DriveFor audio shaping only, sets the drive level passed into the audio waveshaper. Higher levels result in more clipping.
WaveSelects the wave for event and audio shaping. Non-integer morph values provide mixes between the three curves. Note that shaper morph modulation (from matrix 1) can change between the various curves dynamically.
EditWith the EDIT subpanel, you can select whether to edit user wave 1, 2, or 3.
ScopeThe SCOPE displays the current output curve of the shaper, after morph and point modulation.
SMThe waveshaper generates intermediate points between those that you specify. The SMOOTH list lets you select whether the intermediate points are stepped, ramped, or curved (smoothed).
The distortion modules are single-in, single-out audio modules that can be placed between any other two audio modules.
InputThe input switch selects the audio source for distortion.
ModeThe mode switch selects the type of distortion:
LvlSets the level or mix of the distorted signal, as described above.
SymSets the asymmetry for asymmetric distortion modes, as described above.
LocutThe Locut switch enables a high-pass filter to reduce sub-audio-frequency rumble.
The three channels of the output mixer take their inputs from envelopes 1-3, respectively. Turn off the envelope AUDIO to reduce CPU usage.
To set up an event route, select a source (from the “from” list), a destination (from the “to” list), and set the amount of modulation. To make it more readable the amount of modulation is shows as a percentage (0% to 100%). The matrix panels also have a “+” button letting you invert the modulation, and a “+/-“ button to change its range. By default modulations are in the range 0 to 1. Turning off the “+” button causes the modulation to be in range 0 to –1. Turning on the “+/-“ button causes the modulation to be in range –1 to +1.
There are two event matrix panels. The main “audio matrix” panel provides 60 different modulations of oscillators, filters, shapers, submixers, and output mixer. The “source modulation” panel lets you modulate 60 LFO, envelope, and sequencer parameters.
If either the source or destination is off, or the amount is zero, then the matrix disconnects the route to save CPU.
Matrix Event SourcesThere are 30 different event sources for both audio and source modulation. All event sources range between 0 and 1 (with pitch values scaled so that middle C is 0.5).
The polyphonic LFO values.
The envelope amplitudes.
The envelopes for Lfo1, Lfo2, and Lfo3, respectively.
The velocity of each active note.
The pitch of each active note from the respective source (see note below), in the range 0 to 1 with Middle C as 0.5.
Equally spaced values between 0 and 1 depending on the voice number.
The event output of the waveshaper unit.
Values from the sample and hold modules.
From MIDI mod wheel (controller 0)
Values between 0 and 1 when modulating non-pitch destinations. When modulating oscillator or sequencer pitch, each single LVL scales the seq pitch by one semitone (if set to 1, each row up in the sequencer raises pitch by 1 semitone; if set to 12, each row changes pitch by one octave; and so on).
The pitch of the last received note from MIDI, in the range 0 to 1 with Middle C as 0.5.
From MIDI (center value of 0.5). Use the +/- button to get bipolar range).
On/off value from MIDI sustain pedal (cc64)
On/off value from MIDI hold pedal (cc66)
Channel aftertouch from MIDI keyboard.
The “amount” knob in the matrix directly sets the output value.
About Pitch SourcesYou may wonder about all the different types of pitch tracking data. Here is an explanation:
- The envelope pitch is the raw pitch generated by the envelopes 1-3 when they are creating notes (if the envelope is following another envelope, it doesn’t create notes).
- Pitch track is taken from global pitch, after scaling, mircotuning, transposition, glide, and modulation.
- The oscillator pitch is the pitch of the oscillators after their own transposition, scaling, and modulation.
It’s useful to have all these kinds of pitch because they provide a wide variety of different sound possibilities. For example, an oscillator pitch can warble, but the pitch for a filter can be taken from the global pitch,so the filter does not track the warbling. Another possibility is that filter pitch tracking is taken directly from an envelope, and the global pitch transposed by a modwheel without affecting the filter cutoff frequency. Moreover, in the Hegel instrument, two or three envelopes can send different notes to one oscillator, which could then feed into, say,the same distortion unit. The pitch from one envelope can modulate distortion amount, and then the notes from other envelopes do not affect the distortion characteristics.
Another possibility is to mix a couple of oscillators intoone filter. The filter pitch tracking can follow either of the oscillators.
The oscillators still generate pitch track values even if their audio is not turned on. So pitch modulations can be sent to an oscillator and the resulting pitch track values used to modulate something else, even if the oscillator itself is not being used. The envelopes also generate pitch values when the audio is turned off, as long as they are not set to follow the gate signals of another envelope. For example, one envelope can be triggered by a sequencer to generate stepped pitch values, which are used to modulate a filter being played by another envelope which has been set to audio mode.
Matrix 1: Audio DestinationsThe first switchless modulation matrix provides modulation of the synthesizer audio parameters –oscillators, filters, mixers, and so on.Unless otherwise noted, the sources are polyphonic (monophonic sources take their values from voice 1).
|>+/- 100 semitones in semitone steps.|
+/- 1 semitone in cent steps.
Monophonic. Each 1% step moves to next scale map; higher values wrap back through the scale map table.
Monophonic. Each 1% step moves to next key; higher values wrap back through the key list.
Monophonic. Each 1% step moves to next microtune table; higher values wrap back through the tables.
Attenuates glide time as percentage of set glide duration. For example a +50% modulation of ¼ glide time reduces glide to 1/8.
+/- 100 semitones in semitone steps.
+/- 1 semitone in cent steps.
Sets amount of modulator as percentage of value that has been set by the oscillator panel’s AM/FM level control. If AM is switched off and the AM level is above zero, then source modulations directly attenuate oscillator gain. Likewise FM can be switched off, and the FM level in the oscillator panel set above zero, in which case the modulation affects oscillator pitch exponentially.
For Sync oscillators, modulates the phase; for waveset oscillators, changes the waveset. Modulations are added to those set in the panel, and values at range boundaries are clipped.
For width-modulated (W) oscillators, modulates the width ratio over a total range of 5% to 95%. For Waveset oscillators, modulates the wave start position, with each percentage step changing start position by 1 oscillation. For NoiseQ, sets the amount of noise resonance over total range of +/-0.98Q. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Attenuates glide time as percentage of set glide duration. For example a +50% modulation of ¼ glide time reduces glide to 1/8.
Modulates mix or AM amount for each submixer over a total range of +/-1. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Modulates cutoff frequency in semitone steps. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Modulates resonance over a total range of +/-0.98Q. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Sets amount of modulator as percentage of value that has been set by the filter panel’s FM level control. If FM is switched off and the FM level is above zero, then modulations change filter cutoff frequency exponentially.
Modulates mix/saturation level depending on filter settings over a total gain range of +/-1. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Modulates center frequency of parametric EQ in semitone steps. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Modulates boost/cut over a total range of +/20dB. Modulations are added to those set in the panel.
Modulates resonance over a total range of +/-0.98Q. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Distortion and Shapers
Modulates distortion level over total range of +/-1. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Modulates drive level over total range of +/-1. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Morphs shaper output between preset, user1, and user2 curves. Modulations are added to those set in the panel, and values at range boundaries are clipped.
Adds to the event shaper scan rate.
Adds to level set in output mixer.
Adds to pan set in output mixer. Values exceeding range are wrapped.
Adds to echo send level as set in output mixer.
Pans channel between left and right echo channels.
Adds to chorus send level as set in output mixer.
Monophonic. Routes modulations to target as set in the effects “Mod Dest” List boxes.
Monophonic. Adds to effect return level as set in output mixer.
Matrix 2: Event DestinationsThe second matrix is similar but provides modulation of the modulation sources themselves—LFOs, envelopes, and sequencers. Hegel stops feedback (when sources modulate themselves in some way) from crashing Reaktor by putting a tiny microdelay (one control-rate sample period, 2.5msec by default)in the loopback path. So that sequencers can then sum all modulations that have been sent to them before issuing the next step, the sequencers use ana dditional microdelay for a total of 5msec latency. You can reduce the latencyby setting higher control rates in the application menu.
Except for sustain, envelope modulation values are latched at gate-on time. Sustain modulations are continuous, so for example an LFO can modulate the sustain level of a playing note. Why doesn’t the sequencer have dedicated tables for controlling note velocity? Well they aren’t necessary, because:
Percentage is added to the base set period. For example, if modulation amount is 50% and predelay time was set to ½, then resulting predelay time is ¾. Negative modulations decrease the period. Values below the event rate period (2.5 msec by default) are clipped.
Modulation multiplied by 100 and added to A/D/R time. For example if attack modulation amount is 50% then attack time increases by 50. Negative values decrease the period. Values below 0 are clipped.
Modulation is applied to attack, decay,and release, so the entire envelope shrinks or expands.
Directly adds to level as a percentage. For example if modulation is 50% then sustain level is increased by 0.5. Resulting values above 1 or below 0 are clipped.
The instrument contains special logic to adjust the sequencer modulation range, depending whether itis modulating another sequencer’s pitch, or modulating something else:
Some bizarre strange permutations are possible: for example you can modulate a sequencer’s pitch with its own pitch, causing a rising or descending tone until it is inaudible.If you modulate a sequencer pitch by an oscillator, the sequencer and oscillator actually modulate each other, causing fractional tones.
When modulation amount is 1%, a single semitone change from another sequencer or pitch source changes sequencer pitch by one semitone. If set to 12%, a single-semitone change from the pitch source transposes sequencer output by an octave. Pitch values outside the audible range are clipped.
Positive values increase rate.
Positive values increase length.
A modulation amount of 1% increases the begin step by 1.
Modulations change frequency as a percentage of the current set frequency. For example, if set frequency is 10Hz then a modulation of 100% sets frequency to 100Hz.
Same as for envelope sustain.
For each 20% of modulation, the LFO advances to the next waveform Intermediate modulation values mix the two waveforms.
Modulation amount adds to current set width. Values below 0% and above 100% are clipped.
Modulates attack time as for envelope hold times.
Modulates decay time as for envelope hold times.
Modulates the tempo, affecting sequencer, envelopes, LFOs, and glide time (but not echo time).
The LFOs contain the following identical controls:
On/OffThis is useful for monitoring the sound without the LFO being applied. Turn unused LFOs off to save CPU.
FrequencyFrequency is adjustable over a scaled range of 0 to 110Hz. Frequencies above 10Hz are generally not effective for the output mixer, because of its internal smoothing (to reduce clicks on large value changes).
FsprWhen above zero, sets the amount that the frequency is attenuated for each individual voice, so that the LFOs are all at different frequencies.
Wave TypeThe LFOs provide sine (actually parabolic), triangle, saw, pulse, and random outputs.
AmplitudeThe XY display provides attenuation of overall output amplitude.
WidthThe width control does not affect saw waveform output. Otherwise it provides width ratio control in the range 0% to 100%. The random waveform is sampled by the LFO’s pulse output, so changing the width introduces a shuffle into the timing of the random waveform output.
PhaseSets the phase at which the LFO starts upon sync and envelope start.
PhSprWhen above zero, causes all the LFO voices to have a different phase.
GateSelects the sync and gate source for the envelope.
AttackWhen GATE is on, sets the attack duration (in tempo units) while the gate source is high. If the attack duration is more than the gate duration, then the attack phase of the envelope will not complete, and the LFO’s output amplitude will be correspondingly lower.
If GATE is on but ATTACK is disabled, then the LFO and envelope output starts at full amplitude upon receiving a trigger.
ReleaseWhen GATE is on, sets the release duration (in tempo units) when the gate source goes low. This has the effect of fading out the LFO output. If GATE is on but RELEASE is disabled, then the LFO output does not fade out.
There are two sample and hold sources. The panel for sample and hold lets you set the modulation source and the sampling source for each.
The first list box sets the modulation source, which may be any of the LFOs, sequencers, envelope, and MIDI.
The second list box sets the sampling source. Triggers from the sampling source cause the modulation source values to be resampled. For example, if the modulation source is an LFO and the sampling source is an envelope, then whenever that envelope is triggered, the LFO values are resampled for that source.
The following sampling sources are available:
It’s possible to select the same source for sampling and modulation, for example an LFO could sample itself upon crossing zero. This could be useful to generate triggers for other modules, but generally would not be used. However setting the same source introduces an event loop, which could crash Reaktor. The sample& hold logic therefore includes a single-cycle event delay (2.5msec by default) to stop Reaktor from crashing should you set the same modulation and sampling source.
The B panel includes a shaper to set the aftertouch response curve. See the Getting Started section and the tooltips for more information on MIDI.
TempoThe single tempo knob sets the division rate applied to the internal or external clock source. The tempo division is then applied to the times for:
Other timing parameters, such as delay time and LFO frequency, are not changed by the tempo control.
When the external MIDI clock is off (or the Reaktor tempo control in the application toolbar is stopped), then the instrument automatically uses its own internal 1/96 clock.If tempo is set to 4, the tempo exactly matches the 1/96 clock from external midi. Regardless whether an external clock is on or off, the tempo control divides down the clock rate. Matrix 2 can also modulate tempo in any desired manner.
The instrument can both receive song position, and also transmit its internal song position counter if MIDI out is enabled. The ENABLE button in the sequencer resets the song position to zero.
The scope has an input list to monitor voice 1 of any source. Turn off the scope to reduce CPU usage.
The “Auto” switch automatically adjusts the amplitude so it fits in the window, otherwise the Y gain can be adjusted manually. FREQ controls the refresh rate.
Env1/2/3, ECHO, CHORThese buttons enable/mute the respective channels.
Lvl, TrimClick and drag up and down in the TRIM numeric display to adjust the relative amplitude of the three envelope outputs so they are all equal, then use the LVL knob to fade in and out the envelope outputs.
PanThe pan control adjusts channel mix to left and right outputs. The internal design removes the –6dB drop in output level when pan is centered.
Echo, ChorThese are post-fader send levels to the effects units.
Ret1/2RET1 sets the return level from echo, and RET2 the return level from chorus.
Out, MasterThe OUT slider sets the output volume. The MASTER knob works like the channel TRIM controls, letting you set the relative overall volume output for your speakers or audio recording equipment.
Limit, RelThe LIMIT switch enables monophonic limiting on the final output. The REL knob controls the limiter release/respond time when LIMIT is enabled.
Hicut, FreqThe HICUT switch enables hi-cut equalization on the final output. The FREQ numeric control sets the corner pitch of the output in MIDI note values.
The echo is a monophonic input, stereo out module with several modes.
ModeMSec mode is a ping-pong dual delay with time set in milliseconds; SYNC is also a ping-pong dual delay, but time is set in tempo units. VRB is a simple reverb unit.
Time, FbkTIME sets the delay time and FBK the amount of feedback.
Cut, FILTThe LOCUT switch enables a low-pass filter in the MSEC and SYNC feedback paths, and a high-shelf EQ in the RVB feedback path. CUT sets the filter cutoff in MIDI note units.
PanPan sets the panpot of the delay output.
AudioMod, ModAUDIOMOD enables audio-rate modulation of the delay time, and MOD sets the depth of audio-rate modulation.
ModDestMODDEST sets the parameter that can be modulated by events from matrix2.
Choir is a monophonic chorus unit with a couple of modes.
ModeThe 2X mode enables 2-band chorus; the 4X mode enables better sounding but more CPU intensive 4-band chorus.
Del, Deep, Speed, SepDEL sets the chorus delay time, DEEP the depth, SPEED the rate of modulation, and SEP the stereo separation.
ModDestMODDEST sets the parameter that can be modulated by events from matrix2.
The B panel contains a simple audio recorder on the output of the main mixer.
On, Wav-fileThe ON switch enables audio recording. The WAV-file text field lets you set a file to which the audio recording is saved.
Record, PlayWhen the recorder is switched on, the RECORD and PLAY buttons let you capture audio and audition the recording.
Thank you for your interest in Yofiel's metamusic. I hope you enjoy Hegel!
-Ernest Leonardo Meyer