I’ve had Kontakt for years. I’ve only ever used it with instruments bought either from Native Instruments (the makers of Kontakt, and which came as a bundle with Kontakt itself) or from other companies who specialise in sample instruments. Kontakt’s been around as a software sampler for a long time, and probably for that reason alone it’s become ubiquitous. Also, it’s extremely customisable – that’s what I wanted to understand enough to be able to make my own instruments.
This is a good potted history (I watched it 2x speed with subtitles because people (quite rightly) speak so slowly in presentations and I’m impatient):
I tell you what though… Scripting code in Kontakt is hard. It’s not like I’m a noob to code – I’m fine with HTML, CSS and even a little bit of Javascript on occasion. I think if I had a month to sit with Kontakt’s LUA script I’d probably get the hang of it. I would steal another week to learn Creator Tools and a bit more about the script’s structure but next week I’m scheduled to look at Logic’s Environment and I’ve been curious about it for YEARS so I won’t be putting it off any longer.
I *did* manage to make an instrument though. I recorded and processed a quick violin scale in REAPER (I don’t know why the app’s name is in UPPERCASE – it feels like it’s shouting at me). I made a pseudo-legato version with some very old, free script. I skinned (put a picture on) the UI (user interface). I put a couple of controller knobs on the UI too. The video below was the most useful and I basically followed it as a tutorial:
Here is the instrument:
Click to download my incredibly basic but fully functioning Kontakt 6 instrument, ‘Vegan Violin’. You need the full version of Kontakt for this, not just the player. It’s provided without warranty, use at your own risk.
If you do use it, please credit me or at least let me know what you’ve used it in. I’d love a listen.
Since I’m vegan and so is the carbon fibre violin and bow (normal violins have glues made from dead animals and horsehair from dead horses), I could probably get this certified by the Vegan Society 🎻💚🌿
In action:
Ideally, I’d like to learn how to do keyswitches (to put in some pizzicato and tremolo versions), velocity layer group effects (for portamento at low velocities and more scratchy bow attack at high velocities), crossfading groups using the mod wheel (to vibrato variation)… all that good stuff. The gold standard, though, would be true legato scripting, but that looks hella difficult and would take FOREVER to do all the recording and editing… and companies like Embertone have done it amazingly well already. I’ve a newfound respect for the effort and art that goes into true legato instruments (and a bit more sympathy for the ones that tried and didn’t quite get it right – I’m looking at you 8Dio).
I’m most interested in learning a thing if there’s an obvious use-case, and Kontakt, I think the most obvious one is for sharing/selling instruments. That could be a full time job in itself. Other sampler software I already have (such as the excitingly titled ‘Sampler’ in Logic X) may actually be quicker and more streamlined for making and using my own instruments that I’ve no intention of sharing. But there’s something nice about putting together an instrument that might go off into the world to be used by other composers in new and unexpected compositions. Plus being able to put a pretty skin design on. That was quite fun.
Journal
5/1/22
I’ve made the same instrument in Kontakt 5 (I was working in 6, and the 6 version doesn’t work in 5, and since the point of Kontakt libraries is to share them, and not everyone will have the latest version of Kontakt, well, when in Rome etc.) (also it was useful to jog yesterday’s memory and run through the steps again).
I’ve tried two versions of faking legato following Dave’s video ‘Kontakt Tutorial: How to Add Fake Legato to Your Instruments‘ (Dave Hilowitz is now my Kontakt Guru – his videos are so straightforward, efficient and easy to follow but are advanced enough to not be dull for someone who isn’t a complete beginner)(I don’t think his videos would be great for complete beginners).
I want to add some modulation – like maybe a low pass filter that’s connected to velocity (so a higher key velocity has a brighter sound and vice versa). So I need to add a controller and modify it with velocity…
Let’s see…Done!
Also Cutoff and Resonance control knobs and a lovely skin that I probs spent a bit too long designing in Canva. Still. It’s funky.
I kind of get it. I think I know the theory. But there’s a lot of code involved and it’s easy to mistype, so I *suspect* if I go any further into fancy scripting then I’ll be doing a lot of cut and pasting from other people’s code. Which is a lot like how I do HTML, so that’s fine.
It kind of feels like a lot of this could be a lot more automatic though – like if there’s an effect or something you’ve put in the back end, and you want it to show up on the front end, then there should be a tickbox or a right-click-dropdown-menu or something that places it in the UI for you, and connects it all up automatically in the backend with all the ‘callbacks’ and what have you, and then all you have to do is the pretty design bits.
The ‘Creator Tools’ app might be something that helps with that, though I don’t see it from the little I’ve dug into it this afternoon. That’ll definitely be what I look at next, just in case it speeds things along.
HOWEVER my head is now bursting with all the new knowledge and capabilities of Kontakt scripting and I don’t think I can fit any more in there today. It’s a lot to take in but it’s been nice to see my very own instruments come to life. Updated Vegan Violins are here:
Free use is permitted for non-commercial projects, without warranty, use at your own peril. If you can, credit me. And also tell me if you used it! I’d love to know.
In future, I would like to know how to script a true legato instrument. I bet it’d be hella complicated though.
4/1/22
I did it! I made a Kontakt instrument from scratch! Hah! Here it is (it’s Kontakt 6 and you’ll need the full version, not the player) –
💚 🎻 Vegan Violin 💚 🎻
Woop woop!
I followed David Hilowitz’s brilliant walkthrough of using Reaper to record and prepare the samples for use in Kontakt – How I make sample libraries – 2020 Edition (Kontakt, SFZ, Decent Sampler, Reaper)
Making groups for velocities and articulations looks dead simple so I’m not fussed about actually doing that now. This was involved enough as it was.
This ‘vegan violin’* instrument is as basic as it gets.
Tomorrow I’ll do UI controls and possibly a pretty skin too.
As an aside… Reaper is a very nice, straightforward DAW, very easy to use. Really clean interface but from the little bit of digging around it seems quite powerful. Its most useful aspect is the automatic batch export of multiple regions – in english, it means I can output multiple cut sections of audio (labelled with markers to show start and finish points) into separate files all in one go, rather than manually, one by one, which is (unfortunately) how it often works in Logic.
You can also select which markers to export within the file metadata, rather than all markers. This means, on importing into Kontakt or some other sampler, that your loop marker is automatically set. This is SUPER useful. I’ve set loop points in QLab (a theatre sound app) using Logic, but being able to batch the process for multiple files at once would be fully awesome.
There are methods I think I could find workarounds for with Logic, but it’s nice to know there’s another potentially very useful tool to add to the arsenal now.
*It’s a carbon fibre violin, so there’s no animal glue in it. Same with my bow – no horse hair, abalone or ivory. Normal violins also have rainforest woods in them (ebony, rosewood). Older, second hand instruments are the way to go if you have the choice, but repairs always involve the glue and bows need to be restrung with hair every now and again. It’s just nice to know that I don’t have to have bits of animals that suffered and died in my violin just to make some nice tunes. Plus my carbon fibre violin looks kind of futuristic and I love that stuff too. 🙂
29/12/21
I’m under the weather and watching YouTube vids from bed.
Kontakt in 20min – Guy Michelmore
- basic overview and he does not set up multis the way I do (the way the manual says to). Seems like a messy version of something Logic can set up automatically and gives much easier/logical control over bussing (or I’m just used to doing it my way as a Logic native rather than a Cubaser?)
- Batch resaving instruments. I must try this.
All of the following from David Hilowitz Music:
How I make sample libraries – 2020 Edition (Kontakt, SFZ, Decent Sampler, Reaper)
- Another lovely, straightforward how to/follow through guide
- I think I’ll investigate Reaper – I’ve seen it recommended/required in lots of game audio job ads. I was put off it YEARS ago when there was a chap on twitter who would evangelise about it constantly – popping up in random conversation about other DAWs etc saying 🎵 “Reaper’s the best, better than all the rest” 🎵 (paraphrasing). Maybe they worked for the company. I don’t know. Ready to put down my prejudices now though.
- Once I’m out of my sick bed, I’m going to follow through his guide, and maybe create a ‘vegan violin’ Kontakt instrument. And I’m going to take as long as I want learning how to do it, the schedule be damned. 😱
Procedure (notated on 4/1/22)
- Ideal no of samples? No reduce no of samples, velocities, round robins to make achievable in time available.
- Record into Reaper – clap (waveform spike) for a flub; two of the same note? use the second one
- Noise reduction destructively in RX (Spectral Denoise) as one long file
- Record a bit of silence at the end for reference
- Record velocity layers separately – run through scale at one velocity, then move onto the next
- Duplicate originals for noise reduction processing just in case
- Apply noise reduction separately for different mics (if used)
- Replace file reference in Reaper with new RXed
- ‘G’ to group tracks (can do this in Logic?)
- ‘D’ to dynamically split each note (can do this in Logic?)
- Tuning and Pitch detection (I would do this differently with Melodyne after noise reduction)
- Click ‘Tuner’ and manually label and retune with custom scripts to adjust by cents
- Snap Sync Point end point to end of file if length changed with retuning
- X-Raym – Reaper scripts (paid for and free) to automate batch tasks
- Select all items and run script – it exports and runs through a command line library called Abiyo (sp?) which is more accurate than in-DAW
- ‘Insert separate regions for each selected item’ – creates ‘parent’ marker regions and names them according to the selected item (can Logic do this?)
- Remove bowings manually with X-fades. Check for phasing/noticeable transitions.
- Manually create loop point by copying a section near the start, pasting and crossfading at the end and creating (shift-R) a loop region marker (this is separate to the parent region marker) that will be output to the BWAV metadata for later samplers to read. Move the parent region end marker (‘shrink the parent region’) to the end of the loop region.
- Call loop region #loop. Any hashed label will be output to metadata. Kontakt (like QLab) will read the marker as a loop point
- There may be an automation script to do the loop creation if you have a large number of samples
- Region Render Matrix – for export options. Click to export all parent regions, not loop regions, then ‘Render’. Select Region render matrix for ‘Source’.
- Filename = wildcards for region and any other labels (eg tracks for different dynamics, mics, styles).
- Write BWF chunk (for metadata) and select numbers and regions starting with #
- Open Kontakt (in Reaper if you like)
- Drag all the samples to Kontakt, Right click select ‘auto map – setup’ –
- Kontakt reads all the ‘tokens’ within the filename and gives options – in this case first token is ‘Set to Single Key’, second is ‘ignore me’ (ignores midi note name). Anything further can be made into a group for velocities/modulation
- Kontakt glitches and stops processing when it has to create groups (which I won’t do on this occasion? Or maybe I will) so you have to re- control click and select ‘Auto’ button again
- Select all zones – batch tools, move root keys to centre
- select all but end notes and click square ++ button to fill gaps
- Lengthen release time and attack time to smooth start and lengthen end
- Add any effects to sends or inserts
- Look at sample waveform, loop has been automatically applied from marker made in Reaper
Everything beyond this point in the video isn’t about Kontakt so I’ll end this here!
Intro to Kontakt Scripting: Adding your first Knob + FREE KONTAKT INSTRUMENT
- really snappy, straightforward tutorial. Learned a lot and completely demystified Kontakt scripting (which I currently know zero about).
So what *is* the Kontakt 6 GUI Designer? Here’s how it works (Kontakt 6 Creator Tools)
- Note to self: What is ‘sublime text’ program/app for scripting? Investigate
- **Creator Tool means no need to script controls within Kontakt** (but you still need to script callbacks to the backend)
How to Automatically Map Your Samples in Kontakt 6
- More useful stuff on Creator Tools and modifying pre-made scripts
Apple just released a new Sampler plugin! (Logic 10.5)
- This is over a year old and I’m good with the new multisampler – it’s really straightforward, but I’m curious how this chap compares it to Kontakt and all his other sampler programs
- Logic’s Multisampler is MUCH easier to use to create sample instruments (simple ones)
- BUT can it do legato scripting (I’m super intrigued by this)?
- Logic’s Multisampler is not really designed for sharing widely as .exs format isn’t used outside of Logic/Apple stuff, whereas Kontakt libraries are really meant for sharing.
How I made those pads aka the magic of auto-sampling (Kontakt/SFZ tutorial)
- Autosampler in Mainstage – makes EXS files
- Valhalla shimmer looks nice (it’s a reverb plugin)
- Translator 6 – converts EXS to any sampler format eg .sfz
- Import into Kontakt 5 (not 6 – why? check this)
13 Tips for promoting your music
- Vizy? for videos – in Distrokid
This day of just watching ‘How to’ videos was super useful in helping to decide how to structure the next lot of learning.
Next steps:
- Read through/skim Kontakt’s manual and Creator Studio documentation too.
- Download trial of Reaper – if this isn’t intuitive (though it looked like it was) spend a little time upfront with the manual