A4 Edit for Kontakt 5.3

Hi All,

I’ve built an instrument editor to make sound design easier for myself and thought I’d release to anyone who wants to use it. It’s built using Kontakt Scripting and so requires a full version of Kontakt 5, but at least it’s cross platform.



There is no manual yet so I’ll do a quick guide here:

The main goal was to get all parameters on a single page and provide some randomization options. Unfortunately there doesn’t seem to be NRPNs for some stuff such as everything on the Velocity/Aftertouch/Mod Wheel destinations menu and so this will still have to be done on the machine, but everything on the 6 main edit buttons is covered though.

I’ve also built 2 way NRPN communication into it as well so when input and output are connected to the A4 the GUI knobs update the A4 and the Knobs on the A4 will also update the Kontakt GUI. VST Automation is fully supported for all knobs which is another very useful feature, and because the A4 knobs are recognised you can record the automation using them :slight_smile:

The editor works by taking over the track you point it at and so when it loads up it will set the A4 to whatever the GUI knobs are set to, this way it can be used in DAW projects to automatically set the parameters when loaded. Because of this be aware it will automatically change whatever Kit it is pointed at so save the Kit first if you care about it!

There is an internal Preset system which allows saving presets, I’ve included a few to give some examples. Clicking on the Browser button will show a file browser displaying the Preset folders (which are located in the Data Folder). Save will allow saving the current state to a preset which can be located in an existing sub folder or you can create your own folders etc…

The layout mimics the Machine screens for the most part so it will feel natural for anyone used to using the A4. Each section has a Randomize button, a set section to default button and an ‘X’ button which decides whether this section should be included in the Global Randomize. The Global Randomize Randomizers all of the selected sections. The Default buttons set the machine to a useful start point (although you can always make a template/templates to load instead of the Global Default).

Randomize has 2 settings which is adjusted via the Rand Mode Knob. Setting the Knob to Full On allows total randomization which will just randomize the values. Anything below this is a scaled randomize function which will change the existing values by a scaled random amount. The scaled randomize doesn’t work with all parameters however, setting such as Waveform, Sub, Destinations are still randomized in the normal way. Some parameters are ignored such as Tune/Fine/Detune on Oscillator 1 based on the idea that you would mostly want 1 Oscillator in pitch. I’ve tried to make it so that random patches will be musical for the most part.

If you are wanting musical presets I suggest using the Global default button and then Global randomize, this will then drift from a good starting point if using the scaled randomize.

To use you need to point the Kontakt output to the Analog 4 either by the USB Midi in or the Hardware Midi In. Optionally you can direct the A4 midi Out to Kontakt’s Midi In if you want the Knobs to control the GUI. In Kontakt set the Midi channel of the A4 track you are targeting, ie Channels 1-4 by default. Load a Preset and it will update the A4 Instrument.

You can use multiple Editors by assigning each one to channels 1-4 respectively. Note that Kontakt will filter the Midi Input coming from the A4 knobs and direct it to the correct editor, in other words the channel you set for the Kontakt instrument locks it to that midi Channel for both input and output which works out well for this purpose. Because of that however, if you want to use the A4 Midi knobs to automate Kontakt, you need to be sure you have pressed the correct Trk Button on the A4 first!

The saved Presets are just snapshots that update the settings of the script.

The delay setting is in Micro Seconds and is the delay between each sent NRPN, I’ve found 100 works great for me, but you may need to increase it if you get some lost messages.

The Knobs have fine control by using the SHIFT Key whilst click dragging, also CTRL + Click will set the Knob to default. The Knobs actually have the same resolution as what the A4 sends, but to achieve fine values you must use the SHIFT method to overcome the resolution of the GUI Graphic itself.

On the A4 you MUST make sure that it is set to send and receive NRPNs otherwise it will not work.

phew, I think that will do for now! I’ll set up a proper page for it soon but in the meantime download from here:

http://hgsounds.com/downloads/A4-Edit.rar

Andy

I’ve also noticed that there is a bug on the A4 with Sub Oscillator 2 whilst building this script, it doesn’t happen with all patches but sometimes the OFF and the 5th Locations are reversed, so that OFF = 5th. I’d love to know if anyone else experiences this? It happens on the machine itself without using the editor.

This sounds great. I’ll test it out over the weekend.

I have been using a M4L editor someone else posted up, but would rather a Kontakt based one since I can use it in other DAWs.

It will be excellent to have instant recall and patch saving.

Thanks very much for giving this away for free as well! It will make the wait for Overbridge all the easier. :slight_smile:

I’ve just had a thought, is there no way the A4 can update the editor aside from manually adjusting one parameter at a time? If not, then I guess you can’t use any sounds saved on the A4 with this?

Hi Barry,

Yes unfortunately it’s a one way process in that sense, it’s a shame the A4 can’t send snapshots…

I really wish that they would do an update that assigned NRPNs to everything currently unassigned like the ARP parameters etc. Also a way to trigger Patterns and Mute Trigs etc… that would open up a world of scripting fun.

Small Update -

[ul]
[li]Fixed a bug where the local randomizers would only randomize if enabled for Global Randomization[/li]
[li]Added a send all button for updating the A4 instantly to the current GUI settings.[/li]
[li]Fixed an out of bounds error when randomizing Filter Envelope Destinations.[/li]
[/ul]

If you want something to use in a Daw, try this for Reaktor. It’s in the files section.


I did see your editor and it’s impressive, but I built this one to be more focused on single Instrument design and to display only the parameters which matter for this process. For me it needs to be as simple as possible to achieve that workflow-wise. I’m using the A4 more for sound design than making music currently.

I tested this out in Live but I could only achieve 1 way connection, which was from the A4 to the editor. Parameter changes on the editor weren’t being passed to the A4.

NRPN for input and output is set on the A4, and the other A4 editor I use (the one for M4L) works fine.

Is this maybe to do with the fact that Live strips out sysex data?

I just tried it in Studio One as well, but faired even worse there. That may well be to do with the fact that I just got Studio One a couple of weeks ago so i’m not as familiar with how to set it up as with Live.

When I turn a knob on the A4, Studio One displays some messages that say ‘NPRN select’ at the top of the plugin but the parameters on the GUI don’t change, unlike in Live, where I at least had it working from the A4 to the editor.

Again changes on the editor do nothing. There’s MIDI out from Kontakt but no MIDI out from the DAW.

I can see Kontakt is sending on MIDI channel 1, but where do I set what MIDI interface it is to send that to?

I must try digging deeper into Kontakt; never knew you could use it like this. Have it for years but just been using it as a mere rompler. Still finding the loop slicer a bit unreliable; though probably cos I don’t use it correctly.

Barry,

In Kontakt Options/Engine/Send Midi to the Outside World, make sure you have Script Generated CCs and Script Generated Notes selected.

It can be a pain setting up Midi VST outputs etc… Here’s a link to the manual from an older product of mine which has sections for setting up Midi VST outputs in various DAWs, Live and Studio One are included.

http://hgsounds.com/downloads/Vortex-Manual.pdf

I would first get it working in Kontakt Standalone to make sure it works, that will at least only leave the Midi Routing inside to Deal with.

There’s no sysex, Kontakt doesn’t support it so it is all just NRPNs.

It is amazing, but not perfect, there are a few holes they have never bothered to fill, but I’m now developing Scripts full time, cuts down product development down by a serious amount of time compared to making VSTs.

Get hold of KScript Editor which makes scripting much easier and more useful.

Thanks, i’ve got it working now. That manual helped me understand the routing I needed to do in Live.
It’s still pretty convoluted though with regards to how I use my A4 in Live, as it means I need 3 tracks for each track of the A4, plus the audio in track that they all route to and the group track!

As you can see below, I have the group the tracks are in, the audio in track, the track the editor is on, the track the MIDI from the editor routes to so it can route to the A4, and the track that my MIDI note data is on.


So, for each MIDI track that I have for the A4 that I want to automate via my DAW, which is often as many as 4, i’d need to add a track with the editor on it set to its respective MIDI track, and an editor MIDI routing track.

Unless there is a less complicated way you can suggest?

Hopefully when I move from Live to Bitwig it will be less complicated, which is actually the main reason i’m interested in this editor anyway since i’ll not be able to use the M4L one anymore.

Unfortunately it is a pain with most DAWs, always seems a bit of an afterthought.

I don’t use Live/Studio One personally but if there is a way to set the midi channels to ALL/OMNI then you would only need 1 in and 1 out to Kontakt, Kontakt internally filters the midi data based on each instruments Midi Channel.

Also not sure how automation behaves in Live, but Generally it is recorded on the Kontakt track itself, so all automation from the Kontakt session is recorded on a single track, I know you probably are but you can just use a single Kontakt for all 4 channels.

There’s all/omni for MIDI in, but it’s routing the MIDI from Kontakt out the A4 I can’t seem to work out an easy way to do without using multiple tracks.

How can I tell Kontakt to send it’s MIDI out to the MIDI interface I want? I’m having to do that with a separate track at the moment which receives the MIDI from Kontakt then routes it to the A4 track I want to control.

Yes, I think that is probably the only way to do it, that is the way it has to be done in Cubase, however the out midi channel can be set to omni so you only need one.

Kontakt only allows using actual hardware ports when used standalone.