10
Support the development: Black Bass Script - script for Scarbee Black Bass. PMI Baroque Organ script - registration presets and voice saving for PMI Baroque Organ. Crossfade - modwheel controlled velocity layer crossfade on/off for any instrument. Matrix alternation - articulation switching inspired by Vienna Instruments. Alternation - setting up sequences of articulations (for a single key-switched VSL instrument) MIDI Filter - switching articulations using conditions (for multiple non-keyswitched instruments) Speed control - switching articulations using playing speed (for a single key-switched instrument) RAM Manager - group level purging, using any sample in a group will mark the group as used Part Maker - ensemble parts without phasing problems. Velocity Test - test the velocity response of your keyboard. Release trigger bugfix - workaround script for the Kontakt 2 release trigger bug. FX Morph - morphs parameters between fx presets. Transpose Range - transpose certain key ranges (eg. to move keyswitches). Black Bass Script - script for Scarbee Black Bass This is the official script for Scarbee Black Bass implemented by me and being the result of a fruitful collaboration with Thomas Hansen Skarbye at Scarbee. The script is integrated into Scarbee Black Bass. It is not downloadable from here so this particular script just serves as a showcase of my work and as a way to spread the word about this cool instrument. Black Bass features four sampled strings and the script automatically determines the left hand position and which strings and frets to use as you play (also manually overridable using keyswitches). Each string is monophonic just like on a real bass, so a new note stops an earler one when necessary. Legato playing automatically triggers hammer-on/pull-off articulations and legato playing with the pedal is pressed triggers realistic sampled slides with speeds anywhere between 60 and 280 bpm as determined by the velocity of the slide note. The slides employ a new technique invented by Thomas and me that reduces the RAM usage and allows for the continous variation of speed with preserved sound quality. There's a special chord mode which ensures that the string selection works even when chords are played a bit sloppily and the notes do not arrive at the exact same time. To my knowledge this is the first script to use the UI technique which enables us to visually display articulation dependant symbols on top of the strings in the way shown above. For a more complete list of features please see www.scarbee.com or download the press release. Script for PMI Baroque Organ - registration presets and voice saving for PMI Baroque Organ This script gives you an overview of all the stops of PMI Baroque Organ. You can turn each stop on or off by clicking or keyswitching at any time, and also load and save registration presets. The script automatically detects combinations of stops for which combination samples exist and uses these samples instead of playing each stop individually in order to reduce polyphony. Huvudvaerk/Rygpositiv/Brystvaerk (main page) & Pedal and keyswitch/midi settings (second page): Ads by ViewPassword Ad Options Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter 1 de 10 24/06/2014 09:13 p.m.

Nils Liberg's Kontakt scripts.pdf

Embed Size (px)

Citation preview

Page 1: Nils Liberg's Kontakt scripts.pdf

Support the development:

Black Bass Script - script for Scarbee Black Bass.

PMI Baroque Organ script - registration presets and voice saving for PMI Baroque Organ.Crossfade - modwheel controlled velocity layer crossfade on/off for any instrument.

Matrix alternation - articulation switching inspired by Vienna Instruments.

Alternation - setting up sequences of articulations (for a single key-switched VSL instrument)MIDI Filter - switching articulations using conditions (for multiple non-keyswitched instruments)

Speed control - switching articulations using playing speed (for a single key-switched instrument)RAM Manager - group level purging, using any sample in a group will mark the group as used

Part Maker - ensemble parts without phasing problems.Velocity Test - test the velocity response of your keyboard.

Release trigger bugfix - workaround script for the Kontakt 2 release trigger bug.FX Morph - morphs parameters between fx presets.

Transpose Range - transpose certain key ranges (eg. to move keyswitches).

Black Bass Script - script for Scarbee Black Bass

This is the official script for Scarbee Black Bass implemented by me and being the result of a fruitfulcollaboration with Thomas Hansen Skarbye at Scarbee. The script is integrated into Scarbee BlackBass. It is not downloadable from here so this particular script just serves as a showcase of my workand as a way to spread the word about this cool instrument.

Black Bass features four sampled strings and the script automatically determines the left handposition and which strings and frets to use as you play (also manually overridable using keyswitches).Each string is monophonic just like on a real bass, so a new note stops an earler one when necessary.Legato playing automatically triggers hammer-on/pull-off articulations and legato playing with thepedal is pressed triggers realistic sampled slides with speeds anywhere between 60 and 280 bpm asdetermined by the velocity of the slide note. The slides employ a new technique invented by Thomasand me that reduces the RAM usage and allows for the continous variation of speed with preservedsound quality. There's a special chord mode which ensures that the string selection works even whenchords are played a bit sloppily and the notes do not arrive at the exact same time. To my knowledgethis is the first script to use the UI technique which enables us to visually display articulationdependant symbols on top of the strings in the way shown above.

For a more complete list of features please see www.scarbee.com or download the press release.

Script for PMI Baroque Organ - registration presets and voice saving for PMI Baroque Organ

This script gives you an overview of all the stops of PMI Baroque Organ. You can turn each stop on oroff by clicking or keyswitching at any time, and also load and save registration presets. The scriptautomatically detects combinations of stops for which combination samples exist and uses thesesamples instead of playing each stop individually in order to reduce polyphony.

Huvudvaerk/Rygpositiv/Brystvaerk (main page) & Pedal and keyswitch/midi settings (second page):

Ads by ViewPassword Ad Options

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

1 de 10 24/06/2014 09:13 p.m.

Page 2: Nils Liberg's Kontakt scripts.pdf

Usage:Click a button to determine whether the stop is active or not. In the preset menu up to the left youcan save and recall presets. To specify which keyswitch should be used to activate the current preset,press the Learn button and then the note you want to use. This way you can setup and easily switchbetween a set of presets. It's also possible to toggle each stop dynamically using another set ofkeyswitches. Choose between Pedal, Huvudvaerk, Rygpositiv and Brystvaerk using keyswitches F5,G5, A5 and B5 respectively and then toggle a stop of the selected division using keyswitches C6, D6,E6 and so on. Please note that when one toggles a stop by clicking on a button the change isautomatically saved in the current preset, but when a stop is toggled using a keyswitch the change isnot automatically saved (to make it easier to use keyswitches in pieces without changing the basepresets).

It is possible to use different MIDI channels for the divisions by setting the instrument to receive onchannel Omni and then specify the channels one wants to use on the second page. The midi channelsettings are global and not preset-specific.

How do I install it?SampleTekk/PMI has not yet provided the latest update in Kontakt format, so begin by downloadingthe Giga update (50MB) and import this to native Kontakt2 format. This will give you a file called RP37 krumhorn 8.nki and a folder called Samples. Move these two into the Baroque Organ MAIN folder.Then move up one level (out of Baroque Organ MAIN) and download and extract this file there. Nowopen Kontakt and load Baroque Organ All.nki (the script is integrated into this patch).

If you like this script please consider making a donation to support my script development.

Crossfade script - modwheel controlled velocity layer crossfade on/off for any instrument.

This script can be used on any instrument with multiple velocity layers to crossfade (equal-power)between velocity layers using the mod-wheel. Moreover, the crossfade mode can be switched on andoff dynamically at any time using a MIDI CC of your choice. It handles instruments with up to sixvelocity layers.

How to setup the scriptSet the Kontakt intensity slider of any velocity->volume modulation in your instrument to 0%(show me how).

1.

Enter the number of velocity layers into No. Layers.2.Lookup the top velocity of each layer in the mapping editor and enter these values into Layer 1,Layer 2, and so on starting with the lowest layer. The top layer is implicitly assumed to have127 as its top velocity so you don't have to enter its value (and it's not even displayed). There'san animated guide showing how to perform step 2 and 3.

3.

Now you can play and use your mod-wheel to crossfade between layers.

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

2 de 10 24/06/2014 09:13 p.m.

Page 3: Nils Liberg's Kontakt scripts.pdf

velrange

The dynamical range determining how much note velocity influences volume.modrange

The dynamical range determining how much the mod-wheel influences volume.The higher the dynamical range the quieter the softest notes will be. The maximum volume isconstant.

How to install the scriptDownload the script preset file for Kontakt 2.2 and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Performance folder (or the OSX equivalent). Then restartKontakt2 if it's running, and you'll see the script in the script presets menu.Only the K2.2 version has support for release samples.

Did you find this script useful?Please feel free to make a donation to support the development.

AcknowledgementsMany thanks to R.D.Villwock aka. 'Big Bob' for developing his amazing math library on which thisscript heavily relies for doing equal-power crossfade.

Matrix alternation - articulation switching inspired by Vienna Instruments.This scripts works for instruments with multiple groups and lets you specify a matrix of articulations(a couple of rows and columns). Each item in the matrix corresponds to a group of your instrument.By controlling the horizontal and vertical choice by MIDI CC, playing speed or keyswitches you selectthe articulation you want to use. The script is inspired by Vienna Instruments and uses new scriptingfeatures in Kontakt 2.1 which make flexible user interfaces possible.Performance view:

Edit view:

RequirementsFor the script to work you need to deactivate any key switches since these interfer with the script. Todo this open your instrument in edit mode, in the group editor activate 'Edit All Groups', expand thegroup start options and change any 'start on key' option to 'always'.

How to use the scriptSelect the size of your matrix and then specify the groups you want to alternate between. Thenconfigure how you want to alternate within the rows and between the rows. You can use MIDI CC,playing speed or configurable keyswitches to do this.

How to install the scriptDownload the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Performance folder (or the OSX equivalent). Then restartKontakt2 if it's running, and you'll see the script in the script presets menu.If you like you can download the background image as well.

Did you find this script useful?Please feel free to make a donation to support the development.

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

3 de 10 24/06/2014 09:13 p.m.

Page 4: Nils Liberg's Kontakt scripts.pdf

This script lets you configure alternation for key-switched instruments. It's meant to implement thefunctionality of the alternation mode in VSL's performance tool. You can use the script to specify theorder in which to switch between a set of articulations, eg. first 2 notes staccato, then tremolo andthen a pizzicato note, and so on. Furthermore, each such alternation set is called a line and you cansetup multiple lines and use key switches to change between them. Each line can hold up to 20different articulations, and you can use up to 27 different lines.Download the script, version 1.3 (unzip the file and place it in C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Instrument specific and restart Kontakt2).

Here's a demo (mp3) of the script in action. Key switches used to change articulation line areindicated with a "ding"-sound. The sceenshot above shows the settings for the first part.

The script is still in a development phase, but it's working pretty good so I'm releasing it to get somefeedback. So far the instruments supported are VSL Opus 1 instruments (some brass instruments stillmissing) and all the VSL instruments in the Kontakt2 Library. It's pretty easy to add support for anykey-switched instrument should there be an interest.Although there are many complex scripts out there, this script utilize the user interface in some newways that might be interesting to K2 scripters.

UI documentation:

Alternation pageSince NI has limited theuser interface area, it'snot possible to show all articulations of a linesimultaneously. Therefore, they are split up into fourpages. Page 1 shows articulation 1-5, page 2 showsarticulation 6-10 and so on.

AlternationsHere you set thearticulations that youwant to use, and for howmany notes they shouldbe active before the nextarticulation is selected.You can also choose todelete the current articulation or insert a new emptyarticulation before the current one. Articulations thatare not available for the current instrument areautomatically remapped to similar ones that are.

DisplayA display of the list of all articulations.The one that will be used for the nextnote is indicated with >>.

Matrix lineWhich line (set of articulations) to use.You can change this manually, or usingkey switches.

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

4 de 10 24/06/2014 09:13 p.m.

Page 5: Nils Liberg's Kontakt scripts.pdf

and changeit's value using the edit control. For key switches youcan press the learn button and then key. Belowthere's a text explaining what the setting means.

InstrumentWhich instrument to use. This affectswhat key switches are used for thearticulations and what articulations areavailable. Articulation which do not exist for aspecific instrument will be automatically remapped tosimilar but existant ones when you set up yourarticulations. The instruments prefixed with "K2"correspond to the orchestral part of the Kontakt 2Library. If you use an instrument bundled withKontakt 2 please choose one of those three. Theunprefixed instruments are for Opus 1 instruments.

MIDI FilterThis script blocks MIDI data that doesn't meet a set of condition/rules that you setup. For exampleyou can specify that speed, velocity or some MIDI controller have to be within a certain range fornotes to play back. This can be useful if you load multiple instruments on the same MIDI channel. Youcan then configure mutually exclusive filters for each one of them, so that each instrument only isactive when you want.

Here are some examples of what's possibe:Key switching between instruments - key switch notes are fully configurableAutomatically switch between instruments based on playing speed, note velocity or the value ofa MIDI controller of your choice. For each of these you specify for each instrument the rangewhere it shall be active.Any combination of the above, eg. you may load 8 instruments in two "layers". Pedal downactivates four of them, and pedal up activates the other. Within each of these two groups youcan then change articulation with key switches, the mod-wheel or based on your playing speed.

Download the script (you can paste this into an empty script slot in Kontakt)View the script source in readable format (this is before compiling the script in my editor)

This is how you use the script:Load a couple of instruments, all on the same MIDI channel1.Load the script for each instrument2.Setup filter conditions that gurantee that only one instrument is active at a time (if that is whatyou want that is).

3.

Documentation of user interface:There are three condition lines. If the condition on line1 and line2 or line3 are met, the notes will bepassed on and not blocked. You don't have to specify all three conditions if you don't want to.

Control typeOne of key switch, speed, velocity or MIDI CC.Note: I'm thinking of adding legato and repetition conditions.

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

5 de 10 24/06/2014 09:13 p.m.

Page 6: Nils Liberg's Kontakt scripts.pdf

CC_KS field, the condition be false.

CC_KSIf control type is 'MIDI CC' this is the MIDI controller number. If the control type iskey switch, this is the key switch note.

Learn buttonPress this button to switch to learning mode. This will automatically fill in the rangevalues based on how fast/hard you play, how you change the value of the MIDIcontroller. For learning key switches you are supposed to first press the lowestkeyswitch, then the highest, and then the one you want to use.

Articulation key switchHere you can specify if you want the script to automatically play a certain keyswitch before each note

Valid speed rangeSpeed changes outside this range will be ignored. You can set the min speed toavoid having the speed drop very low after a pause. You can set the max speed toavoid having the speed going very high if you play polyphonically.

Speed control - automatic articulation switching based on speedDownload the script source and paste it into a script slot in Kontakt2 to use it.I made a demo mp3 of what kind of results to expect. Manual keyswitches in the demo are indicatedwith a "ding" sound where they are used, all other articulation switching in the demo is doneautomatically.

Explanation of the user interface:There are four columns where you can specify what four playing styles (articulations) you want toswitch between and speed limits that determine when to switch. If you don't want to use all four, youcan make the same settings (ie. same speed and key switch) in eg. column two and three.

speedThe upper speed limit for the articulation. Playing faster than this will activate some of thearticulations to the right. The speed is given in percent of the time base setting to the right, eg.with time base set to 100BPM playing 100 notes per minute would correspond to 100% speed.If the playing speed exceeds the speed in the rightmost column, the script will be bypassed.This is useful if you play polyphonically since very small intervals between keys in a chord wouldotherwise count as a very high speed. Please adjust this speed to make polyphonic playing worksmoothly.Note: speeds to the right should always be set to higher values than those to the left toguarentee proper function of the script.

key switchThe key switch note that activates the articulation.

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

6 de 10 24/06/2014 09:13 p.m.

Page 7: Nils Liberg's Kontakt scripts.pdf

you want to use articulations from different instruments. Just load the instruments on the sameMIDI channel, load the script and make identical settings. Then mute some speeds of oneinstrument and do the inverse muting for the other instruments.Note: the support for multiple instruments is not yet fully implemented.

is_playing buttonThis isn't a setting. The script updates this to give you feedback of which articulation wasselected.

time baseSelect which speed you want to use as 100% nominal speed. This can be linked to the tempo ofyour song ("Tempo BPM"), always linked to a fixed tempo ("100 BPM"), or you can use a MIDICC to control the articulation switches instead of using playing speed.

key switch rangeYou can tell the script which keys are key switches by specifying that the key switches lie aboveor below a certain key. As with the other key switches, there's also a learn button for this.When you have specified what keys are switches, you can manually use key switches wherenecessary. A manual key switch affects the following note/chord and after that the speed againcontrols articulation choice.

CCIf you chose "CC at max" as your time base you can choose which MIDI controller you want touse to control articulation switching (default is mod-wheel).

RAM Manager - purge on the group levelThe "update sample pool" function of Kontakt works at the sample level. Used/unused samples getloaded or unloaded. This script brings this functionality to the group level. Say you have akeyswitched instruments but you don't use all articulations. Then this script lets you have markers onthe group level. Groups that are not used will be completely purged and groups that are used will staycompletely loaded (all notes and all velocity layers).

How does it work?The script remembers which groups are used and provides a way to trigger all notes of all velocities ofthe used groups. This will update the markers so that either all samples of a group will be marked, orall samples unmarked. Then you can use the ordinary "update sample pool" function.

How does one use it?Play a song to let the script remember what groups were used. Then press the script's "play" button,then press any key on your keyboard or the virtual keyboard to trigger updating of markers. That'sall.

How do I install it?Download the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Utilities folder. Then restart Kontakt2 if it's running, and you'llsee the script in the script presets menu.

Part Maker - ensemble parts without phasing problemsThis script was inspired by J's Ensemble Maker script. This script differ in that it constructs just asingle voice in the ensemble. Both scripts works by transposing notes and then pitch-bending back toavoid phasing problems. While the ensemble maker turns any instrument into an ensemble, this scriptturns any instrument into a part of an ensemble.

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

7 de 10 24/06/2014 09:13 p.m.

Page 8: Nils Liberg's Kontakt scripts.pdf

consider this script not a competitor but a complement to Jay's Ensemble Maker.

How does one use it:Set the tranpose value to a multiple of the interval with which your instrument was sampled . Forexample, if you have three voices and your instrument is sampled in whole notes you would loadthree instances of the instrument, load this script for each one and set transpose to -2, 0 and 2respectively. If your instrument has release triggers you'll have to set which group that contain therelease samples. In addition you can use the humanizer settings.

How do I install it?Download the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Harmonization folder. Then restart Kontakt2 if it's running, andyou'll see the script in the script presets menu.

Is the source code available?Sure, you can read it here (colorized version).

Velocity Test - test the velocity response of your keyboardUse this script if you wonder whether your keyboard really outputs all velocities in the 0-127 or if youwant to visualize its velocity response. I think the script is pretty self-explanatory. Here's ascreenshot of the script and an example of a bad keyboard:

(The gaps show velocities that the keyboard never uses)

How do I install it?Download the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Utilities folder. Then restart Kontakt2 if it's running, and you'llsee the script in the script presets menu.

Release trigger bugfix - workaround script for the Kontakt 2 release trigger bugKontakt 2 has a bug which causes release triggers to sound even for sustained notes. Even worse onerelease is triggered for every note, so pressing C3 ten times while holding the pedal will cause tensimultaneous release sounds to be played when the pedal is released. This can be a big problem,especially for piano libraries. This script fixes the problem. No configuration is needed - just load itand you're finished!

Note: this script only plays release samples for notes for which the sustain pedal was not pressed on note-on. Hence, it's whetherthe pedal is pressed on note-on (and not note-off) which determines if you're going to hear any release.

How do I install it?Download the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Utilities folder. Then restart Kontakt2 if it's running, and you'llsee the script in the script presets menu.

Did you find this script useful?Please feel free to make a donation to support the development:

Velocity Test - test the velocity response of your keyboard

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

8 de 10 24/06/2014 09:13 p.m.

Page 9: Nils Liberg's Kontakt scripts.pdf

(The gaps show velocities that the keyboard never uses)

How do I install it?Download the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Utilities folder. Then restart Kontakt2 if it's running, and you'llsee the script in the script presets menu.

FX Morph - morphs parameters between fx presets

This script lets you specify two different instrument effects presets and then lets you continouslymorph between them using the modulation wheel (CC#1). This makes it possible to do interestingtransitions between effects.

Here's is a sample of what morphing between two 3x2 Versatile effect settings can look like:

How do I install it?Download the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Utilities folder. Then restart Kontakt2 if it's running, and you'llsee the script in the script presets menu.

If you like this script please consider making a small donation. No donation is too small.

How do I use it?

Load the script1.Load the Instrument Effects that you want to use.2.Activate "FX Preset 1" and set the effect parameters you want to use in the Kontakt GUI.3.Activate "FX Preset 2" and set the effect parameters you want to use in the Kontakt GUI.4.Use the modulation wheel to morph between the two presets. Simple, right?5.

Note 1: if you load a new effect later on then you may need to touch/change some parameter bothfor preset 1 and 2 to make the script properly register the current settings.

Note 2: some Kontakt effects can exhibit zipper noise when controlled directly by scripts so pleaselook out for this. However, most filter parameters as well as wet/dry and output parameters workwithout any problems as far as I know.

Transpose Range - transpose certain key ranges (eg. to move keyswitches).Sometimes it can be handy to transpose only notes within a certain range rather than all keys. Forexample let's say that you want to move keyswitches up one octave or even move them to the right

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

9 de 10 24/06/2014 09:13 p.m.

Page 10: Nils Liberg's Kontakt scripts.pdf

How do I install it?Download the script preset file (zip) and extract it to your C:\Program Files\NativeInstruments\Kontakt 2\presets\scripts\Utilities folder. Then restart Kontakt2 if it's running, and you'llsee the script in the script presets menu.

How do I use it?The screenshot above shows how you would configure the script to transpose all notes between C0and B0 up one octave (to C1). First you specify the source range by setting the upper knobs and thenthe leftmost key of the target range on the knob below.

The script lets you apply to different transpositions to two separate key ranges. If you only need totranspose one range of keys you can leave the controls to the right as they are.

Links:My script editor

[1] KONTAKT is a registered trademark of NATIVE INSTRUMENTS Software Synthesis GmbH.

Ads by ViewPassword Ad Options

Nils Liberg's Kontakt scripts http://www.nilsliberg.se/ksp/scripts/scripts.html#midifilter

10 de 10 24/06/2014 09:13 p.m.