Monday, December 15, 2014

Haunted Jukebox - sound exploration device

Haunted Jukebox is experimental automaton for generating abstract noise grooves, that I have built in Kontakt sampler. It is not quite a musical instrument, it doesn't take notes as input, rather it works as a jukebox, it takes a number and plays a groove. It generates pure machine music, calculating a sort of composition derived from input token. User can select the token using set of 25 buttons, each button representing single bit in token number. Then the machine creates a program for 8 track step sequencer and modulation programs for each layer, using step sequenced modulators that I used before in Quescape or Bleepman. Each of 8 tracks / layers has 12 independent modulation sequencers running at different speeds and different program length. So generated groove can get quite sophisticated. To make it more funny the machine also generates a name for each groove. It is possible to mix different tokens across layers, which can be done manually or automated with 'evolution' function which will gradually change grooves. All grooves are synchronized with host tempo. Here's a video of the machine in action:

If you'd like to get into details, try these fairly confusing manuals in funny English: operator's manualservice manual.

The machine requires full version of Kontakt 4.2 or possibly newer and considerable amount of CPU, also it relies on transport synchronization with host. It might happen, it won't initialize properly in certain hosts, at least until you start playback. In short, it may or may not work for you, you will need to find it out experimentally.

I created several different setups, which are using different sample sets and different groove generation settings.

Minimal Noise Set is made, as the name suggests, of different noise fragments. This is 10MB download and is free to get and use to make noise, privately or commercially.

Junk Percussion Set is using junk percussion samples that I recorded some time ago. It's also free to get. The download doesn't include the samples, which you need to get by separate download here. Unpack samples to 'samples' directory.

Third download is set of example configurations which are using Kontakt factory samples. Obviously this download also doesn't include samples, you will need to let Kontakt find the samples in factory library. This will work in Kontakt 4, I'm not sure how about Kontakt 5. XT set is special configuration which has 12 layers instead of 8. Extra layers are not quite editable, as the GUI is designed for 8 layers, but they are there and machine will fill them with grooves.

If you like the idea and the machine works for you, you may want to get 'Signature edition', which is available as Bandcamp album bonus, for what you think it's worth. This version, besides special sample set, will let you access configuration menu's (fine-tune engine, midi learn for keyboard automation, groove generator setup). Have fun.

Tuesday, December 9, 2014

Alimchord: Paranoid Edition

This is follow up for Alimchord, imaginary musical instrument for Kontakt. It is built on samples from 7 tone kalimba and a wooden stick captured using various configurations of contact microphones. Paranoid edition has more controls, more samples and a preset memory function.

There is 290MB load of 96/24 wav samples, in three velocity layers and up to nine algorithmic round robins. It sounds somewhat different from regular model, percussive sound partials and release noises are the same, but tone partials is significantly more detailed. It is available as Bandcamp album together with three demo tracks, for whatever you think it's worth (when you download whole album you get samples and Kontakt patch as a bonus). Note that you need full version of Kontakt 4.2 or newer to make it work. Also, this instrument can consume a lot of CPU, there are multiple sample layers and three convolution reverbs in use, if you have doubts, try regular edition first.

Tuesday, December 2, 2014


Alimchord is rare electroacoustic keyboard instrument. Few units have been produced in Poland in late 60s, however most of them broke down rather quickly. Today, I'm happy to bring it out of obscurity with a Kontakt based emulation. It does mimic most of 262144 valve switches combinations, although some of them appear to be broken. Here's screenshot and sound example.

Operating the instrument is quite simple, the set of switches will change the sound, in more or less apparent way each combination has a unique vibe. Two additional switches can be used to reset pattern or shuffle switches in random way. Ambiance knob will set the amount of ambiance effect, Stereo adjusts microphone placement and panorama and Tension will influence keys sensitivity, like a velocity curve.
This fine instrument is available free of charge, get it here, 15MB compressed archive. You need full version of Kontakt 4.2 or newer to make it work. Note that due to its triple convolution design, it is not recommended to those faint of CPU. Have fun.
If you like to have more control and more detailed sound, try paranoid edition.

Monday, October 20, 2014

Automatable MIDI channel router script for Kontakt

This is my first exercise in writing a multiscript for Kontakt. It's a little tool to route MIDI messages between channels inside Kontakt. Possible application is switching instruments with keys or controllers while playing. Maybe it can prove handy for someone. The GUI looks like this:

The top row of buttons is where you select the destination channel, these buttons can be automated, with keys of CC controllers. There are two routing modes: single channel is where you redirect midi messages to a channel of choice, in multi channel you can select multiple channels as destination, so you can reprogram a multi instrument setup live.
There are three ways of automation. Use keys, is where you assign keyboard keys as channel switches. You set (manually or by learn button) "start_from" parameter to point to first key number to use, from now on following 16 keys will be used to toggle channels switches. If you don't need to automate all 16 channels, or don't want to trade off so many keys, you can reduce automation range with "size" parameter. You can do the same using CC controllers, "use multi CC" option. Or, if you only use "single channel" destination, you can "use single CC" controller to set destination channel. Automation source can be assigned to any port / any channel, or a specified channel. So you could for example use one controller to play and another controller to select instruments.

If you'd like to try it out, get it HERE. It should work in Kontakt 4.2 or newer, I'm not sure about earlier versions. I tested it roughly and it seems to work, but there are no guarantees, so use it at your own risk. Also remember that it is multiscript, you insert it in multi rack, on top of all instruments (use the "scroll" button to activate multiscript rack).

Wednesday, October 8, 2014

Mufftronic Percussion and FX

Today, I am happily proud to present the mufftronic percussion set, which takes electronic drum kit idea to another level of quality. These sounds have been generated by mighty analogue table modular system, consisting of module 1: Korg Monotron Duo; and module 2: Big Muff Pi. It has been nicknamed The Mufftron and it delivers fuzzily pristine low fidelity bleeps.

It sounds like this:

There sure is some flavor of 80's arcade games / chip-tune madness in there...

The kit contains 182 samples in wav format, 44.1 kHz, 16 bit. Samples are named in somewhat abstract manner, so don't be surprised, if you pick a sample named 'snare' and you get a bleep. Volume envelopes have been superimposed digitally, either edited by hand, or copied from acoustic hit sounds (mainly junk percussion kit) via envelope follower.

You can get it here. 5MB RAR file, 12MB when unpacked. Free to download and free to use in your bleepings.

Tuesday, September 30, 2014


Scape-O-Matic is sound amusement, gambling device, for Native Instruments Kontakt sampler. It generates random weird and spooky sounds and soundscapes from a button press. If you like to just spin the wheel and see what happens, you may enjoy playing with it.

Here's a preview:

This machine has no user manual, so one needs to figure it out by herself/himself. I can offer few tips though.
  • Press the red button, then play the keyboard.
  • The equalizer works on dry signal only.
  • There are hidden buttons.
  • The machine will build sound out of a number of voices. Each voice is likely to have different settings for volume envelope and glide, although you only see setting for the first voice.
  • If it sounds really out of tune and you don't like it that way, try setting glide amount to zero. Even, if it seems be be set to zero already.
  • There are ways to edit single voices.
  • There is a 'data box' labeled 'lucky number', if you feel lucky, you can type in a number there. It will be used as a token for creating next sound (or for performing any randomizing procedure). Same token always creates the same sound.
Here it is. Free of change, but full of little critters. Use it at your own risk. You will need full version of Kontakt 4.2 or newer to make it work.

Thursday, September 18, 2014

Key shuffler script for Kontakt

Another little Kontakt script today. This one will reorganize key-note assignments within an instrument. It can turn a pop ballad into modern atonal composition, or it can be lots of fun on drum kits. It looks like this:

Quick manual. 'Shuffle range' - here you set the range of keys to shuffle, set the lowest and highest key. To set it up quickly, use 'learn range' button, then press two keys one after another (in any order), the script will set the knob values accordingly. 'Shuffle intensity' - set how much shuffled you want keyboard to be. In one round the script takes two keys and exchange their note assignments. 'Shuffle method' - here you set the starting number for calculating key numbers to shuffle. When it's all set press 'shuffle keys' to perform the operation, or press 'restore keys' to return to 'un-shuffled' keyboard state. The shuffle is not random. It's calculated from range, intensity and method, so you can easily get back to a result you like, or you can automate shuffling in DAW. There are 1000000 possible combinations for each note range.

Here's how it works applied to one of Kontakt's factory drum machines. This machine is using 'drum computer' to create rhythms, so the notes can be shuffled. In this video I keep one rhythm pattern going while trying out different shuffle parameters.

If you like the idea, you can get the script here. It should work in Kontakt 4.2 or newer. Have fun.

Update: Revision A.

After a while of playing with drum kits, I though I would explore this idea a little further. I attempted to expand this script functionality.

First, I wanted to leave some keys out of the randomizing process. So I could e.g. have a bass drum and a snare going on, while randomizing sounds for the rest of drum pattern. I introduced two new buttons to script. 'Learn exceptions' - turn it on, now press the keys you don't want to be affected by the script, turn it off when finished. This procedure won't change the way keys are shuffled, it will just disable note properties modifications for keys in exception list. Exceptions list can be cleared any time with 'clear exceptions' button.

Another new feature is randomizing sound pitch, which can be quite fun with drums. Now every time 'shuffle keys' button is pressed, the script will create a pitch map for all keys, which will be derived from 'shuffle method' number (this is not depending on number of rounds). You can then control how much of the pitch modification to apply with 'shuffle pitch - range' knob. Also you can change pitch map polarity with the switch, mysteriously named 'pitch md. polarity'. Note that once pitch map is written, it will affect sounds also after you un-shuffle keys with 'restore' button. Pitch will be drawn from range of -24/+24 semitones. You can change maximum pitch range in the script, by editing $DETUNE_RANGE constant.

Get the expanded version of the script here.

Update 2: Small changes.

I make two small changes to the script... I have been testing its usability as a de-tuner. You can put a little life into some instruments (particularly synthetic) by de-tuning notes a little. Try this procedure: select a method number, shuffle keys, restore keys and move 'pitch range' knob just a little bit.
Some Kontakt instruments, like pianos, generate several notes, on one key stroke. It was quite disabling 'learn note range' function. As a workaround I added a condition to not to accept the same note as the second note of the range in learn function.
Another change is note range functionality, thus far it was only used when shuffle button was pressed. I added a condition, so the range is checked each time a note is played. Now you can manipulate range button while playing a shuffled keyboard, so you can automate restoring some keys original assignments and tuning.
The download link has been updated.

Update 3: Revision B.

Wouldn't it be handy, to trigger some of those buttons by a key? My controller has only knobs and sliders. Automating buttons with CC is not quite comfortable, so... Excuse me for yet another incarnation of this script. This one has 'key-learn' function for shuffle, reset and polarity buttons. They are color coded on virtual keyboard, red for shuffle, green for reset and yellow for polarity. Note that key assignments may interfere with instrument's key switches handled by other scripts, so it's best to make sure the key of choice has no other function.

Key shuffler script, revision b, download link.