Sunday, November 23, 2014

Kontakt Demystified: Understanding the Three Different Kontakt VST Plugins

For as long as I've been using Native Instruments Kontakt, I've encountered people confused about the purpose and function of the three different VST plugin files that ship with Kontakt 4 and 5. My goal here is to clear up any misconceptions and show the actual practical differences between the different VST options.

THE THREE PLUGINS

Of the many forms that Kontakt takes (standalone, AU, VST, AAX- and formerly RTAS), only the VST format offers multiple plugin flavors. VST users have the following choices:
  • Kontakt 5
  • Kontakt 5 16out
  • Kontakt 5 8out
When a VST plugin loads in your DAW it has to tell the DAW how many audio outputs the plugin supports. Even though your DAW might never use all the channels the plugin advertises, the plugin still makes them available, and each of these available outputs consumes a small amount of RAM and CPU resources- whether it's used or not. Other plugin formats give your DAW a little more control over how many plugin channels to enable. To give VST users similar flexibility when working on very resource-intensive projects or on older computers with limited CPU and RAM, Native Instruments provides three slightly different VST plugin files.

In the rest of the post we'll look at the specific differences between each of the three versions of VST plugin included with Kontakt, but here are some things to remember:
  • The three VST plugins are identical, except in the number of output channels they make available to your DAW, and their factory default output configurations. There are no other functional differences.
  • All three VST plugins are capable of delivering audio on separate output channels. The 8out and 16out plugins are not the only "multi-output" ones. In fact the regular "Kontakt 5" plugin offers more outputs than both of the other two combined!
  • Your DAW sees each plugin flavor as a different "product." You can have instances of all three VST plugins in the same DAW project, and they will all have their own settings.
  • Each plugin flavor can have its own default output setup. (Note: This can be a complex topic, which I hope to talk more about in a future post.)

THE DIFFERENCES EXPLAINED

Here we'll look at the visible, measurable differences between each VST plugin file in Kontakt 5. You will see similar results in Kontakt 4, although actual RAM and CPU values may be different. First, let's get some terminology and concepts out of the way, since the way outputs work when Kontakt is running as a plugin can get a little complicated.

Here we have a Kontakt multi rack with four instruments loaded into it. Each instument has been assigned to its own output channel, and each output channel is named after the instrument routed to it. The Output list shows the channel name and plugin output number for each of Kontakt's current channels.

I have customized the channel names to match the instrument names. Often the channels will have more generic names, like "Inst 1" or "st. 1"

Here's a portion of the Kontakt Outputs Section showing the different output channels for the four instruments. The channel names appear at the top of each output channel column, and the plugin output numbers appear at the bottom. These are all stereo channels, so each channel uses two plugin outs. NOTE: The channel name is not always necessarily the same as the instrument name, so in the Output list above and the channel columns below, you might see different, often more generic, names for each of your channels, until you configure them otherwise.


This Kontakt instance is loaded in Cubase, and along the left we see the stereo VST output channels, each labeled with their respective plugin output names. These match the names in the "physical out" list in the Channel Output Configuration dialog of Cubase. This is a stereo channel (so it contains 2 Kontakt audiochannels). This is the only place in Kontakt where we see how the plugin out name (which is what your DAW sees) maps to Kontakt's channel name and plugin output number (which are what Kontakt displays in the Outputs Section).


Here's something to remember: The names of Kontakt's output channels (which route instrument output through plugin output) are easily editable, but the actual plugin output names are not. As a result, is possible to have a Kontakt aux channel send output on a "Kt. Inst" channel in your DAW and for an instrument channel in Kontakt to send audio to a "Kt. aux" channel in your DAW. It can get very confusing! There is a way to clear up this confusion, but we'll tackle that topic some other time.

I used Steinberg Cubase 7.5 and Ableton Live 9 to measure RAM and CPU usage. Some quick notes:
  • To measure Cubase RAM usage, I created three different projects, each with a single instance of one of the Kontakt plugins loaded. I activated All Outputs in Cubase for each plugin variety, which created separate VST channels for each plugin output. I compared the RAM consumed for each of these projects against loading Cubase with an empty project.
  • To measure Ableton Live RAM usage, I also created a different project for each plugin variety. Instead of creating additional MIDI tracks for each plugin output, I just created a single additional MIDI track with a single External Instrument device in it. This is probably why Live RAM usage was so much lower; Cubase automatically adds VST channels when outputs are activated in the DAW.
  • To measure CPU usage in Live, I created a different project for each Kontakt plugin variety and loaded a single Kontakt instrument and MIDI clip, then duplicated that MIDI track 9 times, so that there were 10 separate instances of the plugin, all playing the same MIDI clip. I recorded the value of Live's built-in CPU meter while the clips were playing.

THE "KONTAKT 5" PLUGIN

Here's the info on the VST plugin that's just called "Kontakt 5". This one defaults to delivering 8 instrument channels and 4 fully mapped aux channels.
  • Output channels available: 12 stereo pairs, 40 mono outputs, 64 outputs total.
  • RAM used in Cubase 7.5: 117 MB
  • RAM used in Live 9: 68 MB
  • Live CPU usage (playing 10 plugin instances): 22%
 Default Outputs Section layout:

Default plugin output list:
Note that it's scrolled to the bottom of the list.

Cubase output selection list:
Note that it's scrolled to the top of the list.

Live output selection list:
Live does not appear to give access to all possible channels of the "Kontakt 5" plugin. Note that this screenshot is from the Audio From list in an additional MIDI track in Live. The MIDI track that hosts the plugin always gets Kt. Inst 1 (main outs). Other MIDI tracks can only access the outputs beyond Kt. Inst 1.

THE "KONTAKT 5 16out" PLUGIN

The Kontakt 5 16out plugin defaults to a single stereo instrument channel, plus three mapped aux channels, but gives you some room to add additional channels and aux mappings. Unlike the "Kontakt 5" variant, the 16out plugin exports the first instrument channel as "Kt. st. 1" instead of "Kt. Inst 1."
  • Output channels available: 5 stereo pairs, 6 mono outputs, 16 outputs total.
  • RAM used in Cubase 7.5: 69 MB
  • RAM used in Live 9: 67 MB
  • Live CPU usage (playing 10 plugin instances): 21%
 Default Outputs Section layout:

Default plugin output list:


Cubase output selection list:


Live output selection list:

THE "KONTAKT 5 8out" PLUGIN

The Kontakt 5 8out plugin only maps outputs for the first instrument channel. You can use the remaining outputs for other instruments or aux channels as needed. Like the 16out variant, the 8out plugin exports the main outs as "Kt. st. 1" instead of "Kt. Inst 1."
  • Output channels available: 4 stereo pairs, 0 mono outputs, 8 outputs total.
  • RAM used in Cubase 7.5: 61 MB
  • RAM used in Live 9: 66 MB
  • Live CPU usage (playing 10 plugin instances): 20%
 Default Outputs Section layout:

Default plugin output list:

Cubase output selection list:

Live output selection list:

CONCLUSIONS AND RECOMMENDATIONS

You may have noticed that the difference in RAM and CPU impact between the three VST plugin options is actually quite small. If you normally work on small-to-medium size projects and you have a fast and powerful DAW computer, you can likely safely use the full "Kontakt 5" plugin all the time without problems.

The default output mappings of each plugin type do lend themselves to certain workflows, though, so I can suggest some cases where you might consider using a specific VST plugin, without getting into the potential messiness of setting up your own output configurations inside of Kontakt.
  • If you normally only use a single Kontakt instance in your projects, and you set up Kontakt multi racks to support multi-timbral use, the regular "Kontakt 5" plugin is probably best. A single instance of Kontakt uses less RAM (and a little less CPU) than adding separate instances for every instrument, and the default output mappings for "Kontakt 5" give you 8 stereo instrument channels and all 4 aux channels, with no special tweaks required. Do note that some DAWs or plugin hosts might not be able to access all of the channels the "Kontakt 5" plugin can offer. For example, Ableton Live 8 and 9 have a hard limit of 32 audio channels (16 stereo pairs) per VST plugin (confirmed with Ableton Support in November 2014).
  • If you prefer to load a new Kontakt instance for each Kontakt-based instrument you use in a project AND you also like to use Kontakt's built-in effects, "Kontakt 5 16out" is a good choice, since it automatically gives you a working instrument channel and three aux channels, and it does use less memory and CPU than loading full "Kontakt 5" for each instance.
  • If you like using a single instance of Kontakt for each instrument, but you don't usually use Kontakt's built-in effects, then "Kontakt 5 8out" is a solid choice, because it uses the least amount of RAM and CPU per instance, and the default output mappings support only a single instrument channel, which is all you'll probably need for most cases- although you CAN add up to 3 extra stereo channels if you ever need to layer parts.
In all of the above cases, you can set up different Outputs Section configurations that suit your most common setup preferences (for example, maybe the first two channels could be for instruments, and then you'd use the remaining plugin outputs for the aux channels), and you can set up a different default configuration for each of the three plugin types.

In a future post, I hope to cover the strange relationship between Kontakt's "plugin outs" and the output channels that your DAW sees, but the above information will serve you as long as you stick to Kontak'ts "Kt. st.," "Kt. Inst." and "Kt. aux" outputs.

3 comments:

maraboe74 said...

Very informative, thanks!

vastman said...
This comment has been removed by the author.
Jerry said...

Thank you so much for this article on the Kontakt VST Plugins. I've been scratching my head for days because I absolutely KNEW that I have used 16 stereo channels (32 outs) from the Kontakt VST in the past... but recently when I used Sonar's "friendly names" to rename them and started using the 16-out, I couldn't figure out how I had 32 outs in the past. (I was thinking the "regular" version was just 1 out or something. Your article cleared up everything for me. Thanks so much for taking time to write this article. I know how time consuming it can be to research and write an article like this. Jer from the Chimera.band