If you’re a Kore user who owns Reaktor, you’ve probably heard of the Kore 2 Reaktor Toolpack. If not, now’s a good time to check out it out – this collection of Reaktor ensembles provides a set of tools useful in the Kore environment. It’s the creation of Reaktor programmer and musician Jonathan Adams Leonard, aka Sleen. (He’s also a composer, a vocalist and keyboardist, and the touring keyboard/MIDI technician for Interpol.) Some of the tools are more specialized, like an ensemble that adds the ability to send MIDI data with the Kore hardware controls, or one that emulates the Guitar Rig 1 Control hardware. But even if you don’t need those, you’re likely to find something that will improve the way you work with Kore.
Jonathan’s impetus for building the toolpack was his sense that Kore 2 was missing some modular MIDI capabilities he felt were essential:
Kore 2 was an ambitious release for any software team, so instead of complaining, I did what any enlightened engineer would do and built something. In some ways, there was no choice. NI created a semi modular matrix into which audio and midi objects can live simultaneously.
… The toolpack represents my preference to communicate where possible with solutions rather than suggestions or complaints.
It’s one heck of a “feature request,” then — a powerful set of MIDI and audio utilities, available for free. Because they’re Reaktor ensembles, you can also modify them for your own purposes — meaning, even if some of this functionality is added to Kore down the road, the Toolpack could remain a powerful custom utility belt.
Note that you do need to have a copy of Reaktor 5 to use the Reaktor Toolpack. (Anyone who owns a recent version of Komplete already has it; the standalone works, as well.) Over the coming weeks, we’ll be looking at ways in which the combination of Reaktor and Kore can be useful. But if you don’t need or want Reaktor, we’ll list a few free/cheap alternatives and complementary tools.
Here’s what’s in the pack:
A limitation of the knobs and buttons on the Kore hardware is that they are not able to transmit MIDI messages (although they can receive MIDI messages). They’re designed exclusively for use with the Kore software. That enables high-resolution data and the convenience of the macros in software, but there are times when you might want to send MIDI, too — simultaneously controlling another parameter in addition to the default assignments, for instance. To get around this, Jonathan has created a Reaktor ensemble containing pages of MIDI generators to which you can assign the Kore hardware’s buttons and knobs. That means if the encoders and buttons weren’t doing enough to begin with, now they can be performing other tasks, as well.
Rather than simply assign each knob/button on the Kore controller to a fixed MIDI message, Jonathan has taken things quite a bit further and set up a series of ICs (Internal Connections) in the Reaktor ensemble. This basically means you can assign any button/knob to any combination of controls on the B panel of the ensemble.
If that’s still not enough, there’s a more elaborate version of the Kore2MIDI patch for extra assignments called Kore2MidiX8.
Jonathan shares with us why he did kore2midi:
The inspiration of kore2midi is to address the lack of MIDI output to external instruments. The ultimate ‘rig’ would not only include the best tools to handle and control virtual instrument scenes, but would also simultaneously manage your external gear.
The other reason kore2midi is important is to communicate with virtual instruments that do not support host automation like Spectrasonics Atmosphere, MOTU Symphonic Instrument and many others. These plug-ins only use MIDI remote automation, so something like kore2midi is essential.
In Kore2MidiX8 (the 8-page version of the ensemble) you get eight user pages and eight corresponding pages of controls in Reaktor. You can assign any one encoder or trigger button in your Kore user pages to any combination of knobs/buttons on any of the eight pages in this ensemble. As Jonathan describes it, “the Kore2MidiX8 ensemble was made to fully exploit the Kore 2 page concept and provide up to 128 unique controls.”
When you first load the .ksd, you’ll need to go to Reaktor’s ‘B’ Panel and turn the Page Index knob to select individual pages for editing. The important section here is the series of drop-down lists on the left – these let you assign Button 1 (B1) through Knob 8 (K8) to any knob or button on the page.
At the top of the panel, select the Kore user page from which you want to make assignments, and then use the send dropdown menus on the left to assign destination mappings for those controls. A white dot beside a control name in the list indicates that the user page control has been assigned to it. This takes some getting used to, and the destination lists are not always in numerical order, but once you’ve got the hang of it, you’ll find it works as it should. It’s definitely recommended to use a MIDI Monitor to verify that your assignments are working correctly, as well as saving often. (The MIDI Monitor is included in the pack — more on that in a moment.)
N.B. In my setup the user pages for Kore2Notes hadn’t yet been assigned to the buttons on the ensemble’s A Panel – however you can just open Kore2Midi & select the Notes snapshot, which should have the same effect.
Ed.: This is such a powerful feature, particularly with this ensemble, that I’m still working out what I may do with it — I’d be curious to see people controlling Kore and Ableton Live or FL Studio simultaneously, for instance. Apparently there are some limitations with Ableton Live, so we’ll be looking into that specifically. I’ll be working on some example blog posts, but if you’ve come up with an application, let us know. -PK
Recorder (and sample player)
This is no MIDI recorder: Recorder records audio sent to it. The best way to use it is to set up a group track and route the desired audio to that, as the recorder can function as an instrument in its own right: Play with the speed control (not mapped to the user page) and you’ll find a lovely smooth audio slower downer/speeder upper. Combine this with the loop functionality and you’ve got a quite capable little module.
Jonathan describes some of the cool functionality built into the ensemble:
Besides the speed control, you can play with fun beat jump buttons that look like arrows. If the tempo is set correctly, you can use the beat jump buttons to move through the audio on the beat, or in multiples of the tempo, as selected using the bar, beat and beat division fields. I called it a recorder, but it can as easily be used for managing audio playback in Kore 2. The recorder is a “lite” version of a more full-featured DJ tool called Dr. Dex that can be found on my website.
SQP – Although it might seem strange to make a .ksd containing just one ‘basic’ Reaktor macro with no sound generators, doing so is actually an inspired idea, as it gives a hint as to the true modular power of Kore — when combined with Reaktor. In one move, this .ksd adds polyphonic pattern sequencing to Kore 2. Ok, you mightn’t find SQP that great of a sequencer, but the big deal this points out that all you have to do is find (or build) a VST MIDI sequencer you like and you can start moving towards self-contained music making in Kore 2.
What this ensemble really does is demonstrate that you can take a minute function in any patching program (or even regular VSTs) and give it the spotlight by simply hardwiring its ins and outs to those of the .ksd. This is no small news, and rest assured we’ll be exploring this area as much as possible in the coming weeks and months.
Scale – Forces incoming notes to a scale — result: no wrong notes (among other effects)!
Jonathan has some tips on using Scale musically:
The random function varies the notes before the scale. You can send in a drum roll, and get a spread of notes whose probability and magnitude you can select, but which stay within the scale you have defined. The scale is encoded as semitone offsets for the root chromatic octave. To make a diatonic scale in C, select the key C, then offset every note that does not appear in C tonic either down or up to a preferred note.
Chord – especially fun when used with a sequencer (as in the demo “marathronic sounds”). This ensemble is deeper than it appears on first glance; it’s actually three copies of the Scale plugin in one. This means you can generate a chord of three notes from a single note, and you can define how those chords behave as you move up through a given scale. I can’t say I fully understand the relationship between the transpose and the key knobs, but I did get a lot of fun out of simply hitting the random button and driving Chord with a sequencer (as has been used to great effect in the ‘Marathronic’ demo .ksd).
Music geeks, here’s Jonathan’s music-theoretical discussion of how he’s working:
This ensemble expresses my preference for baroque melody over modern chordal terminology. The ‘chords’, or shall we say intentional vertical harmony, is created from 3 voices each constrained to a musical scale. If each voice is assigned the same scale and key but with transposing of 0,4,7; you get a typical major triad that should be avoided like milk on one’s chin. Ed.: I love baroque harmony, but I wouldn’t go quite that far, Jonathan! Then again, I have been known to get milk on my chin. Interesting. Excuse me while I get another glass of milk. -PK
Rather, there is the possibility that each voice can have its own scale and key defined so the harmonies produced indicate anything but a diatonic bias, but having tonality. For more on this subject, read Paul Hindemith’s book, A Composer’s Way. If you are looking for some ‘chords’ to select from as a shortcut because you don’t know how to make them yourself, this ensemble is not for you.
The MIDI Monitors get top marks for usefulness. I found MIDI Monitor Z to be more useful, as it shows the last 20 MIDI messages, giving a good picture of how the data is flowing.
Notes – Of course, being a free pack, the tools vary in their degrees of usefulness. The Notes ensemble, which is simply a Reaktor text box for writing notes into your .ksd/.kpe, is an example of an excellent idea which isn’t quite as practical as it could be in that you can’t type directly into the text box, and the Reaktor header unavoidably takes up a bit of screen space which it doesn’t need to. Of course, this might not bother you, but if it does you could always try building on the idea in Reaktor or in other tools, and its simplicity may make it a good model for tools of your own.
On the other hand, there are two .ksds in the Toolpack which you definitely don’t want to overlook – the All Effects and Effects Groups sounds. These serve the purpose of moving Kore 2’s internal effects out of the menu and into your Sound Matrix. This makes it much easier to audition and compare Kore 2 effects, and they also raise an interesting question: does all of your organization and really have to be done within the Kore browser? (The answer is, of course, not necessarily.)
The way Jonathan has grouped similar types of FX makes it very intuitive to enable/disable each in turn and audition them. Having several types of sounds laid out in front of you invites experimentation and makes it easier to try out different routings and combinations, although it might end up taxing your CPU more.
To give you an idea of how this might be useful for other types of sounds, we have included a .kpe of the entire toolpack laid out on the Sound Matrix so you don’t have to load them up individually (note you’ll need to have installed the toolpack first for this to work). Be warned however: Launching this file could lock up your PC completely – it routinely crashes my 1.5Ghz single core Centrino laptop with 1.25GB RAM, but works fine on a 2Ghz Core 2 Duo with 2GB.
Transformer – This ensemble can lock incoming MIDI data to fixed values, message types (hit the Fix button), or Control Change (CC) numbers and MIDI channels. When processing MIDI data, it can also transform notes to CCs or vice versa.
This ensemble is not to be confused with Kore 2’s own MIDI transformer, which also allows you to re-channelize data, but in addition has velocity curves and ranges/limits (Kore 1 users will recall these were previously built into each sound’s MIDI routing/player page). The Reaktor Transformer complements the existing Kore tool. In a future article we’ll be discussing how to use these tools together with Kore 2’s sequencer (or any other MIDI sequencer) to sequence elements like a filter’s cutoff.
Program change – Simply a preset of the Transform tool, which generates Program Change messages.
Random Guitar 1 & Random Guitar 2 use the physical modeling instrument Steampipe to demonstrate the SQP & Scale sounds.
Bank – As described on the toolpack’s info page, this sends and recalls Bank and Program Change Messages, for automating changing sounds on Kore or even an external instrument.
Clock LED – This tool is simply a visual reference for the beat, and is much easier on the eyes than trying to follow the Kore toolbar. It’s also a good, basic example of how to use graphical feedback in Reaktor.
DEXFX – The user documentation really covers it all here – all I’ll say is you owe it to yourself to check out GLEX, the excellent granular instrument.
Rig Control V2 – I don’t have a Rig Control to try this out myself, so I’ll revert to the user documentation here:
This ensemble allows you to use the Rig Control version 1 controller to send Midi within Kore 2. Or out of Kore2. The ensemble allows each RC control to send any single midi message or increment independently, or you may send multiple messages from a single RC control. The A view shows a graphic of the controller with sensitivity knobs for each button, a calibrate button and a selector for the control tone input. The B view contains the midi out modules and the RC control sends so you may freely assign the RC controls to any module control or output. For example you could send program change increments with RC buttons 1 and 3, use buttons 2 and 4 for notes, and the pedal for volume #7.
To Sum Up, it’s only once you start playing with one tool that you realise how useful the others are – when tweaking the Transform device I found myself grabbing two copies of the MIDI monitor and putting them on either end of Transform, to verify that the changes were being applied properly.
Jonathan has given us an exclusive peak at what’s coming in the next update to the Toolpack — some juicy-looking stuff in here:
- Event-based midi filter: individual Control Changes or notes.
- Simple conditional MIDI filter: for conditions “is”, “is not”, “between”, “outside”, “above”, “below.”
- Kore2midiX8 midi learn (done)
- Audio to MIDI triggers for drum replacement or live performance with Native Instruments’ Battery
- Controller templates for popular MIDI-only plug-ins
- MIDI Out function generator simple
- MIDI Out function generator complex
- More scales and chords
- Velocity randomize
- Scale 2: New Scale ensemble that adds pitch inversion with center note, and inversion probability.
- Bank: extend to MSB (control 0) and LSB (control 32) for bank select.
Of course, there’s nothing out there quite like the guitar Rig or Kore2MIDI tools, but there are alternatives for a few of the items mentioned here.
For anything MIDI-related, check out the CDM Post on Free MIDI Plugins. For a (Windows) audio recorder checkout Livesync Recorder or Silverspike’s Tapeit. These could be handy to have around in general, of course. Ed.: We couldn’t think of a Mac-compatible alternative; if anyone knows of one, let us know in comments!
By the way, if you want better metering on Kore’s output you could do worse than to pick up Sonalksis’ FreeG meter/fader (Mac & PC) – it’ll give you your Peak & RMS output values and a finely controllable master fader. It also blends in fairly well with Kore’s muted GUI.