# Keyswitches between instruments in a Multi?



## Christian Marcussen (Jun 8, 2008)

Hi... I really mostly use Vienna Instruments, but I have some Kontakt instruments that I would like ò^I   {„^I   {„^I   {„	^I   {„
^I   {„^I   {„^I   {„ ^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {„^I   {


----------



## kotori (Jun 8, 2008)

Hi Christian
There are three main options: instrument banks (switching using program change), joining multiple instruments into one and setup the keyswitches yourself, use my MIDI Filter script to setup keyswitching between separate instruments (please see the third post in this thread).


----------



## kotori (Jun 8, 2008)

> [edit] Ok. I now make an instrument ACTIVE via keywitch, but how do I make it "unactive" when I press another keyswitch?



The script settings _lower_ and _upper_ determine the keyswitch range and the _CC_KS_ parameter determines the keyswitch that activates a particular instrument. If any other keyswitch in the lower-upper range is activated the filter condition is false, ie. the instrument inactive.

An example. Let's say you want to switch between two instruments using the keyswitches C0 and D0 respectively. You would then use these settings:

Instrument 1:
lower, upper=24 and 26 respectively (C0-D0)
CC_KS=24 (C0)

Instrument 2:
lower, upper=24 and 26 respectively (C0-D0)
CC_KS=26 (D0)


----------



## Christian Marcussen (Jun 8, 2008)

It's working! 

Thanks.


----------



## bryla (Jun 10, 2008)

Was just about to ask the same question!

I am new to Kontakt, and this keyswitching is something that has bothered me.

What is CC-KS, and where do I find it?
Furthermore, you guys have to initiate me into the secret Kontakt world  Where did the numbers '24' and '26' come from?

Any help is appreciated 

Cheers


----------



## Big Bob (Jun 10, 2008)

Hi Bryla,



> Where did the numbers '24' and '26' come from?



24 & 26 are the MIDI Note numbers for Kontakt's C0 and D0. The ScaleTone/Octave format (such as C3) is not uniform among vendors. Middle C in Kontakt is C3, in Giga-Studio middle C is called C4, etc. However, middle C is always MIDI note 60 (or at least it should be :lol: ).

God Bless,

Bob


----------



## kotori (Jun 10, 2008)

bryla @ Tue Jun 10 said:


> Was just about to ask the same question!
> 
> I am new to Kontakt, and this keyswitching is something that has bothered me.
> 
> ...



Hi bryla,

CC_KS is not a native Kontakt setting. It's a script setting in my MIDI Filter script, see the forum post I referred to above. The MIDI Filter script can be used to setup logical conditions for which notes to let through to the instrument to be played and which notes to stop before they reach the instrument so that they are never played.

Some examples of possible conditions:
only let notes through to this instrument if 0 <= CC#1 <= 40
only let notes through to this instrument if the keyswitch C0 was pressed
only let notes through to this instrument if the current note is a legato note quickly following the last note and keyswitch C0 was activated or 0 <= CC#1 <= 40
The CC_KS represents the CC number in case a CC-based condition is used, and the keyswitch midi note number in case a keyswitch-based condition is used.

By loading two instruments on the same midi channel they will both receive the same notes. If you then load the MIDI Filter script on both instruments and setup slightly different conditions for when to let notes through you can effectively switch between them - the notes will always be stopped by the script on one of the instruments and let through on the other. I hope this explains it.

Cheers,
Nils


----------



## bryla (Jun 11, 2008)

Damn I'm a newb 

I open the Script Editor, and choose an empty tab and press edit. I've downloaded the midi filter in a .txt-file, but it can't be copy+pasted into the script editor? What do you exactly do?

Sorry bout the dumb questions! 

I'm a bit surprised that Kontakt, doesn't do keyswitching easier


----------



## kotori (Jun 11, 2008)

bryla @ Wed Jun 11 said:


> Damn I'm a newb
> 
> I open the Script Editor, and choose an empty tab and press edit. I've downloaded the midi filter in a .txt-file, but it can't be copy+pasted into the script editor? What do you exactly do?
> 
> ...



Hey, no problem. Don't worry.

Why can't it be copy'n pasted into the Kontakt script editor? Please note that you can use Ctrl+V (maybe that's Cmd+V on mac) to paste. After you have pasted the code you need to press the Apply button for the changes to take affect and the script to load. 

Keyswitching within an instrument is pretty http://kevintweedy.net/K2T/K2_KeySwitch.htm (easy to setup) in Kontakt. I'm not sure if there is any sampler that natively supports keyswitching between _instruments_.


----------



## Fernando Warez (Jun 11, 2008)

bryla @ Wed Jun 11 said:


> Cmd-V on mac, didn't work :(
> 
> The link you gave this time is what I am looking for! Thanks a lot for your help, and your wonderful site. I just got confused with what was a multi and what was an instrument
> 
> I'm at work right now, but I will do your tutorial when I get home



Actually that tutorial is from Kevin Fletcher Tweedy.

But Nils still deserves our thanks for all the help he's provided and these script.

I'm gonna have to give this a try one day.

Thanks Nils.


----------



## KingIdiot (Jun 11, 2008)

I've been building some tricks in Cubase and Kontakt to do what you're asking, and am leshing out these tricks for an article in VIMag, but I jsut thought I'd throw this idea out

what about using Kontakt bnk files instead of building multis to load up different articulations, and then using program changes to switch between them?

Its something that most people don't even do, and I only recently stumbled on, so I'm using it in some different ways now, and working it into my new template.

anyway, all you do, is create a new instrument bank, then load up nki files into that bank. Use Program Changes to switch to the correct number. I've done some Cubase MIDI Transforming to do even more, but It requires a bit of detailed explanation, and a good undrstanding of how the MIDI transformer works in Cubase (You couldalso do similar stuff in the Logic Environment I'm sure)


----------



## Fernando Warez (Jun 12, 2008)

kotori @ Wed Jun 11 said:


> KingIdiot @ Thu Jun 12 said:
> 
> 
> > anyway, all you do, is create a new instrument bank, then load up nki files into that bank. Use Program Changes to switch to the correct number. I've done some Cubase MIDI Transforming to do even more, but It requires a bit of detailed explanation, and a good undrstanding of how the MIDI transformer works in Cubase (You couldalso do similar stuff in the Logic Environment I'm sure)
> ...



I think this limitation has been fix in C4. In the preference menu you can now have event chase controller. I don't think that was part of C3?... 

I did not use it extensively but it seem to work pretty well. I think it works best if one 
avoids switching too early like right in the middle of a note. 

This thread might be of interest to King.

http://www.vi-control.net/forum/viewtopic.php?t=5531


----------



## kotori (Jun 12, 2008)

Hi Fernando,

I think the chase function in Cubase is completely unrelated to the CC carry-over problem in Kontakt. What the chase function does is that it sends the last sent CCs (as if the song had been played from start) upon playback start. The problem with Kontakt is that this would need to be done on every program change and also not just when playback is stopped/started. Do you think C4 can do that?


----------



## Dan Selby (Jun 12, 2008)

Kontakt banks in conjunction with Cubase/Nuendo (specifically using the input transformer and/or the transformer midi plugin) is a really powerful combination. You can, depending on how you like to work, quite easily:

1. Set up keyswitches to switch articulations within a bank.

2. Use program change buttons on your keyboard to switch articulations within a bank.

3. Keep your articulations on separate midi tracks and whenever you press a key or move a controller on that track have the correct articulation get selected within a bank.

4. Create track folders of tracks (for quick sketching) that will play different banks within specified range - e.g. basses and celli in octaves below G2, violas play between G2 and F3, first violins above F3, sounding an octave higher with second violins sounding a 6th below the firsts. These folders of tracks can be saved as multi-track presets.

Other cool stuff too.


----------



## Fernando Warez (Jun 12, 2008)

kotori @ Thu Jun 12 said:


> Hi Fernando,
> 
> I think the chase function in Cubase is completely unrelated to the CC carry-over problem in Kontakt. What the chase function does is that it sends the last sent CCs (as if the song had been played from start) upon playback start. The problem with Kontakt is that this would need to be done on every program change and also not just when playback is stopped/started. Do you think C4 can do that?



Hi Nils. I think so. I've tested CC11 and it seemed to work. I'll do an other test and come back to you on this.

I wonder if these input transformer are included in C4? I check the manual...


----------



## KingIdiot (Jun 12, 2008)

I have neat little Multi Instrument setup I've been building that allows for Modwhel and CC MIDI messages to pass through to all the instruments on a specific channel, but I've set up a MIDI Transformer setup that allows me to use different tracks for different articulations. Essentially allowing me to have many nki files on one MIDI channel, but using the same CC messages. Its also part of something I'm fleshing out to share as a trick. This also allows for unique layering options, that the bnk file structure only sort of works with.

you can use the Input transformer to create program changes based on key range, velocity range or even your own brand of keyswitches.

all this stuff used in combinationw ith the stuff Nils has provided can prove to be a truly powerful and intuitive way to set up a template!

As I dont use C4 I wouldnt be able to tell you how it works, but in C3 even chasing events wont carry CC over to new program changes


----------



## Fernando Warez (Jun 12, 2008)

King or anyone else, i just want to be clear, can you go in C3/preferences/midi/chase events and tell me if controller is there as an option? Notes, sysex, program change etc.. should be in there but i want to know if chase controller is in C3 or if it's new to C4? There's also an other option under chase controller in C4, a sub option if you will called: chase not limited to part boundaries. 

Thanks.


----------



## kotori (Jun 12, 2008)

@Fernando:
Yes, C3 supports chasing controller messages. I think this functionality has been there for a very long time. Couldn't find the part boundaries option though.


----------



## Fernando Warez (Jun 12, 2008)

[quote:85056a2403="kotori @ Thu Jun 12, 2008 10:12 pm"]@Fernando:
Yes, C3 supports chasing controller messages. I think this functionality has been there for a very long time. Couldnƒæ   ]a   |!i   ^a    |!Ú   _a%   |"   `a%   |"¼   aa(   |#-   ba*   |#ž   ca/   |$   da0   |$‚   ea7   |$ó   fa9   |%d   ga9   |%Õ   ha;   |&F   ia;   |&·   ja?   |'B   ka


----------



## kotori (Jun 13, 2008)

Fernando Warez @ Fri Jun 13 said:


> Cool. So i guess that settles it then. One can use Banks with Cubase without having to worry about CC following when switching instruments.



I don't think that's what Andrew is saying. He explains how you can use keyswitches to switch between instruments in a bank. The chase function means that if you stop playback, move to another position in the song and restart playback you will hear the correct instrument, but you can still get the CC problem.

Chase means: "when the users moves the playback position, look to the left to find the last sent CCs, program changes and any already pressed notes."
Chase does not mean: "whenever there is a program change, resend the last value of all CCs"


----------



## Thonex (Jun 13, 2008)

kotori @ Fri Jun 13 said:


> Fernando Warez @ Fri Jun 13 said:
> 
> 
> > Cool. So i guess that settles it then. One can use Banks with Cubase without having to worry about CC following when switching instruments.
> ...



As usual, Nils is correct.

When you use banks, the program change will be sent no matter where you are in the song, but the associated CCs for that patch may not be "read" by that patch because the patch was not active prior to the program change. 

T


----------



## Fernando Warez (Jun 13, 2008)

OK, thanks for clearing that out for me. I've been trying to figure this out for a while now...

Thanks guys.


----------

