Blocks are great for the kind of freeform music making I like but one thing that’s bothered me is the maximum 64th note resolution of the util clock block. I miss the 1/96, 24 ppqn (pulses per quarter note) resolution of Reaktor’s MIDI timing, which makes it easy to do triplets. You have to have triplets or things won’t swing.
I dug down into the master clock to see how much fuss it’d be to modify and it was surprisingly easy. I changed the panel controls:
…and added a couple of values to tables in the Core macros:
And just like that, I had a 1/96 clock. In order to divide that into musically useful timings, use a standard Blocks clock divider. As you might expect, a 24 ppqn clock will play quarter notes when you divide by 24. So half notes are a division by 48, eighth notes by 12 and sixteenth notes by 6. Triplet eighth notes are a division of the 96th clock by 8. Try different multiples of 2 and 6 as divisors to see what happens.
Note that changing the values in the clock divider will require a clock restart. So will changing snaps if the divisors change. This isn’t a bug in the 96th clock hack, it’s how the clock divider works. If you’re using “ext” mode in the clock block, just hit option (alt) -space to restart the clock. You can also activate the reset on the util clock, set to 96, but that will have the effect of setting long looping patterns to reset too quickly. IMHO.
I’ve uploaded a demo ensemble to the Reaktor user library showing a couple of beats made by dividing a 1/96 clock. Download from there, or try following the instructions above to do it yourself if you enjoy a challenge.
To Do: fix the graphic display for the 96th ring, and adjust reset values higher for longer intervals between resets. I’d also like to rework the clock divider for larger divisions, and clock the controls so they change synchronously and don’t put the sequence out of time when you adjust them, necessitating a clock restart.
Just drop it into your Blocks ensemble and use the output to drive, for example, some drum sounds. User Daniel Wincott uploaded an ensemble to the user library demonstrating how to do this.
Now Martin has graciously shared with us a couple of other tools. One is an update of his sample map builder, which now comes bundled with a built in Java runtime in the OS X version so you don’t have to fiddle around with installing and configuring a JRE.
Another is a node.js based tool to generate Reaktor multitext macros from a text file. This is a command line tool but it’s extremely simple to use if you’ve ever run anything from a command line, ever:
I think this highlights the need for a scripting language built into Reaktor just as one is in Kontakt – the ability to address text fields from a script would overcome hours of wrist strain from laboriously entering data in MultiText modules. And that’s just one usage example. In the meantime Martin’s tool is a great shortcut Reaktor builders can use right now.
Reaktor 6 is here! This is the first new major version of Reaktor since 2005, and expectations are high. Does Reaktor 6 satisfy our lofty expectations? Here’s what’s new:
Reaktor Blocks 1
Reaktor Blocks 2
Reaktor Blocks 3
Reaktor Blocks 4
The big wow-factor in R6 is Blocks, which is a set of synth modules implemented as connectable units on the instrument level, mimicking the style and functionality of hardware modular gear. Blocks is exciting for a number of reasons.
It sounds awesome! Blocks comes not only with its own new and great sounding modules but borrows bits and pieces from Monark, Rounds and Driver. Did I mention that it sounds awesome? The oscillators and filters in this package are among the best I’ve heard.
It’s easy to get started. Compared to building your own instrument, even using stock macros, this is a lot simpler… deceptively simple, perhaps. There’s deep potential lurking under the simplicity. And the ease of adding and connecting blocks will help casual users discover those depths.
It allows audio rate modulation of parameters. This is fun and encourages experimentation. You can plug anything in anywhere. Audio rate filter modulation? Yes indeed. And that’s just the most obvious option.
Speaking of audio, you can easily build Blocks effect chains to process incoming audio. Run your guitar or voice through the Monark filter, modulate its filter cutoff with an LFO, then run the result through the Rounds delay – it takes a few seconds to drag Blocks from the sidebar into an ensemble and patch them together, then create modulation routings.
There’s a flexible 8 step sequencer, a clock divider, and a pitch quantizer – if you want to do the kind of self modifying modular composition that’s next to impossible in a linear DAW, Blocks will get you there. Simple example: you can modulate the offset controls in the sequencer and the quantizer for hypnotic morphing sequences that walk the line between order and chaos.
There’s a framework for creating your own blocks. I can only imagine what this is going to mean for the Reaktor user library – I predict we’re going to see some mind melting uploads from users. Remember, everything’s easily interoperable with everything else in Blocks, so even Block creators will have little idea what strange purposes other users will find for their creations.
Table Framework: A New Sampling Paradigm for Reaktor
From the documentation:
“Table References are a new signal type in REAKTOR 6. They allow flexible and efficient shar- ing of data in the structure.
“A table is a two-dimensional array of data, and Table References allow you to access this data anywhere in the structure. These properties make the Table Framework ideal for working with samples.
“Core Cells read tables from a Table Reference like they have always handled tables and arrays. The advantage is that a Table Reference can exist in the Primary level, thus it can be used to share data between Core Cells, and can be stored in a Snapshot.”
TL;DR: it’s a whole new sampling paradigm. The primary-level sampler modules are sealed black boxes, whereas core cells are user-modifiable and buildable. The table framework is designed to get sample data into Core cells easily. This is a big, exciting change. Reaktor 6 comes with example sampling macros to give you a starting point. The new paradigm comes at the expense of CPU – the new sampling macros use more horsepower than the primary modules – but the trade off is arguably worth it since users can forge their own knives and blenders to chop and warp samples.
New Look and New Building Features
Reaktor 6 has an updated GUI, but it’s not just a change of skin. The structure cables now behave differently, curving to more easily show you what’s connected where. And the cables change colors to indicate what kind of signal they’re carrying.
One of my favorite new features is in-place editing for macro, control, and port names, and constants. No more jumping between the properties palette and the modules to change names and values.
Like to design panels for your own instruments? You can finally turn off the 4 pixel snap-to grid and place panel elements freely. There is also support for changing font face, colors and sizes in the text and multi text modules.
A neat feature you’ll notice quickly when using Blocks is that instruments and macros can be set to “flexible” mode in structure view, allowing them to stretch to accommodate larger icons and longer names for ports.
In a DAW, you can now drag the Reaktor plugin window larger in edit mode by grabbing the bottom right corner. Great! No more fussing with auto-resizing and setting static window sizes in the preferences. Very handy for building or tweaking in your favorite host.
New Core Features
The cornerstone of the future of sound since Reaktor 5 has been Core, and there are new building features here, too. Bundles pack and unpack multiple wires, keeping your cells organized. And scoped buses work a little bit like variable scope in a programming language, making connections between different layers of a Core structure. Scoped buses can send bundles. In-place editing works in Core too, allowing you to quickly change macro names, constants and quickbuses.
Two features that will excite Core builders are the ZDF (zero delay filter) and envelope toolkits, providing elements to more easily create your own filters and envelopes. If filter design is not your thing, the reorganized and repopulated library of core macros is stuffed with ready made oscillators, filters and effects begging to be Frankensteined together.
Reaktor now includes an event watcher debugging tool, based on a macro originally developed by Reaktor user Chris List which I’ve used often in the past when designing new instruments. This is a super handy tool for anyone who needs to wrangle Reaktor events and is wondering why things aren’t working as planned. There’s also a comprehensive MIDI monitor, redesigned scope and a 2048 band spectrum analyzer with A and B inputs whose signals can be compared, added and subtracted.
My goodness, what ISN’T in this release?
It’s not all cake and ice cream, sadly. I’m disappointed that some features and fixes were passed over.
Abstractions: Reaktor needs a class / object hierarchy in its macros, so that modifying a macro doesn’t require editing or replacing every copy that’s hardcoded throughout an ensemble. My wrist is aching just thinking about it.
Scripting: some programming chores are clearer and simpler in a textual language. Kontakt has KSP; Reaktor deserves some RSP.
Sampler bugfixes: the primary level grain cloud sampler has a bug involving detection of sample length. I’ve had to code workarounds for years. The table framework is the new hotness, but there are hundreds of great sampling ensembles in the user library that were built with the primary sampling modules, and they could use a little love.
MIDI out tightness: Reaktor’s MIDI out timing has jitter proportional to the audio buffer size, and this can be noticeable when driving external hardware and software.
Multi-core support: would have been sweet, especially for running standalone, but I can imagine this would be a nightmare for NI to implement in the infinitely flexible Reaktor engine, if it’s even feasible. Maybe someday. I’d rather see abstractions and scripting first.
Putting aside the gripes, though, this is a solid Reaktor update, and I expect to see people building tremendous new ensembles with the table framework and Core additions, as well as quickly learning to make music with Blocks – whose ease of mix and match patching will probably attract a new population of users, and perhaps lure them into diving deeper.
I love Reaktor, I’m passionate about it, and NI’s dedication to keeping it fresh means that my love affair can continue. Between that and the new features, I’m very happy to see this new release.
What do you think? Do the improvements and additions outweigh the gripes?
Vectorspace is a CPU friendly sample based ensemble for Reaktor whose sound at any given time is a superposition of gestural sequencers and effects. It also includes a sequeggiator – a probabilistic sequenced arpeggiator – that plays staggered chords as polyphonic sequences, creating a constantly evolving blend of rhythm and harmony.
Vectorspace is ideal for transforming an acoustic instrument or synth sample plus a simple chord progression into the rhythmic and harmonic scaffolding of a track – just add some drums and bass.
It can also be played as a more traditional sampler, a soundscape creator or as a physically modelled synth using the sampled material as an exciter and the resonator effect as a body. The resonator is polyphonic and responsive to note and chord changes. Its partials can be tuned, damped and skewed to create bell, percussion and drum sounds, or abstract reverberations.
The sample position, sample length, grain spacing and envelope parameters can all be automated, as can the resonator, growl, filter and delay effects. Each XY fader can run in smooth or quantized mode, and quantized mode allows you to set individual clock speeds and sequence lengths for the X and Y axes of each automated fader. Quantized mode also gives you the opportunity to edit and fine tune the level of each step in a fader’s X and Y sequences. This makes it easy to create gated rhythmic filter effects or gradual changes. Sample position and automated fader controls can be controlled by MIDI (see mappings on panel B) or OSC.
It is impossible to predict precisely what sounds will be produced when you have various effects activated with different sequence lengths on different parameters. But at the same time, the gestures and sequence settings are under your control, so the end result will be a blend of your intent and the superposition of the cycling sequences. Think of it as an “inspire-o-graph” for sound, a machine collaborator to bounce back your ideas transformed. What it’s not good for: wobble basses, control freaks, type “A” personalities. Loosen up!
Vectorspace also features a compressor to even out the sound, and a microtuning macro that allows you to define any equal tempered tuning in either cents or Hz. Set a 5 or 7 tone scale for an easy exotic sound with no wrong notes or choose a 17 note octave division as the basis for an Eastern tuning.
Update: Vectorspace 1.0.1 is now on the server – download notifications to existing users will follow shortly. New features include an intensity control for the Growl macro, allowing you to set a more moderate upper limit to the sound mangling while still using the pad’s full range of travel:
1.01 also includes mappings for Antonio Blanca‘s Lemur template The Ring, which you can download at Twisted Tools, and a few new snapshots created by warping parameters with The Ring. Here’s how I’ve mapped the parameters:
…and one of Antonio’s other great templates, SQU4R-3
The Lemur templates are meant to control Vectorspace strictly in OSC mode. You may want to turn off MIDI output from Lemur to Reaktor, especially with The Ring which sends a note on touch.
Speaking of control surfaces, here’s how the Vectorspace parameters are mapped in Konkreet Performer, and some updated Performer templates. (these ones are prettier, like in the picture below)
Konkreet Performer is almost always the first control surface I map my ensembles to – it’s simple, elegant, quick to configure and yields awesome leverage over sound.
Please note: Vectorspace requires the full version of Reaktor 5 version 5.9.2 or better, not just Reaktor player.Full versions of Reaktor 5.9.2+ acquired with Komplete will also work, of course.
Buy Vectorspace here for $39.75 $26.50 USD by using the discount code VECTORSPECIAL:
Please use a valid email address to receive Vectorspace and updates! Immediately upon completion of payment, you will receive a link to an archive containing Vectorspace, the manual, and control templates for Lemur, Konkreet Performer and QuNeo.
Reaktor friends, you should check out what David Elson is up to in the user library.
David has taken my Roux sequencer macro and run with it, and is doing things with it that are very interesting. Sequencing granular parameters? Sequencing beats? Hell yeah, that’s what you do with it. His choice of sampled material and sound design for the Slicer ensemble is particularly nice, too.