registered members don't get popups... just sayin

I've spent my life trying to make things simpler. Because I find ultimately that complicated doesn't reach the heart. (c) Hans Zimmer

Samples » Kontakt
Piano By MS screenshot
This is my first sampled instrument from start to finish. I've always wanted to have a go at sampling a piano and have found out how hard it is. I haven't got a piano to start with so had to find one to sample, then to make a clean recording was next to impossible with all the background noise. This is the end result, more an experiment than a instrument. I've found it good for fast moving music but if you listen to the demo straight from midi it did good with a slow movement.

The piano is a new Kawai upright, using the only microphone I have the Zoom H2n I took relatively short recordings to minimise passing cars and people shouting in the street. I recorded at 24bit 96KHZ trying to sample each key. The full size on HDD is only 127MB and 16MB loaded in memory. I've added scripts to add more reverb and Sustain that you can change.

download from free file storage
download from Usenet - 14 days free access +300GB By MS
download from any file hoster with just one LinkSnappy account
download from more than 100 file hosters at once with LinkSnappy.


  Resident 21.10.2016 39 101
Slight Updated NKI

Download Link

Extra demo of faster tempo music

  Resident 5.12.2012 778 6476
  Resident 1.10.2013 4718 7864
.......:::::: UPLOADED / RAPIDGATOR ::::::........__________ROCKFILE / UPLOAD-ROCKET___________
✸ ✹ ✺ ❚ AUDiOZ ❚ ✺ ✹ ✸

❤ ❤ ❤ BEST WISHES ❣❣❣ ❤ ❤ ❤
  Member 3.08.2012 75 16714
  Member 20.10.2016 22
Thank you, great job!
  Resident 21.10.2016 39 101
Add in a Peddle script

Download Link
  Resident 25.07.2014 77
Impressive work, a more than decent sound here, thank you!
  Resident 22.11.2009 188
nice one, thanks!
  Member 25.05.2014 28
sounds very natural .. just make it deep plz
  Resident 21.04.2014 1345
The most important tip for pianists: "The independency control of left and right hands".
The dynamic independence of the left and right hand, when you are right handed, you will not have an easy left hand velocity control, so your piano interpretation will sound like this awful Demo from 'Beethoven's Piano Concerto No. 5 in E ♭ major, Op. 73 - II Adagio '.
Notice that the left hand accompaniment are louder than the right hand, a gross mistake at the piano. A good care with Demos, help a lot. One question, all this dirt, hiss and noise are also on the piano samples, or is it a bad rendering result?
Listen to a good balanced left hand for this same track, left hand must sound almost fading, can hardly be heard. After time [1:53] Not only in Beethoven, but all kind of pieces you play, or prefer to play the amazing 'Boogie Woogie'.

By the way, this Beethoven Adagio introduction inspired 'Bernstein' 'Somewhere', from 'West Side Story'
Beethoven or "Beernsthein", pure inspiration.

I tested and did not feel a good control of dynamics, we have better pianos.
A piano with a few megabytes will never be able to play left-hand ppp to fff dynamics, but use volume auto control, maybe these pianos will work for pop music etc. I know, rock ears will contest me.
  Resident 21.10.2016 39 101
I'll Try and sample a piano from ppp to fff but it will take some time to do, I agree the demo wasn't the best using a midi file to save time.
  Resident 21.10.2016 39 101
the Comment has been Removed
  Resident 21.10.2016 39 101
the Comment has been Removed
  Member 10.02.2015 248
Thanks mate the sound of the 2nd demo is very sweet indeed.
Tested it myself and so far sounds very good to my ears. Full tight high notes (c6, c7) and low notes sound good too. Thanks a lot for this share, I cannot fathom the words to describe how much I liked it but I liked it loads.
  guest -- 0
Real cool 2 see and great work.
Always good 2 see people doing stuff like this.
Some constructive criticism - Scripting is a bit off & in parts non-functional.
Only looked quickly but noticed quite a few errors on first quick scan.
Is not bad by any means

First main mistake is values with regards setting range with regards to knob limits.
Don't set your range like you have.
Many use such a method as a primitive way of limiting range but don't do it that way.
Will save you lot's of heartache in the future.
Remember also many Knobs in Kontakt exponential in function.
Rather than say set range as (800000,1000000,1) set as simply declare 0-1000000.
Set default values etc instead as a way of setting ranges etc.
Way you have done it leads to non functional ranges and gives wrong readings on labels etc.
If you need to find a value etc use the following command on an empty script slot and target required engine parameter

on init
message(get_engine_par( $ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN,-1,1,0))
end on

Also some wrong values. i.e reverb wet - You missed a - sign leading to wrong display, ie u put
set_knob_label($reverbwet,get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, 1,0,1))

Should b -1,0,1)

Your release control is pretty useless and again the envelopes not been renamed correctly
Leads to various script errors and warnings with regards to groups etc.
You need to rename much more methodically & remember that release will apply or should be controlling say not just one group etc if u get me.
When it comes to things like targeting internal\external modulators etc you be in real trouble unless u a lot more methodical
Whole script for release etc needs reworking really and maybe think about including some other controls that would make it functional.

Your reverb is always switched on. Can do that but not the best idea in general.
Why not include a switch and target bypass?
Can do it also in much more practical & useful ways also i.e declare a preset menu and switch on or off using a command such as maybe

if ($DELAY2_presets=1)
end if
if ($DELAY2_presets # 1)
end if
end on

Need to name correctly & target correct parameters of course
Loads of other fairly basic mistakes & that can be corrected pretty simply though. To much to explain in small paragraphs etc.
Not being nasty either as if you're fairly new to scripting etc was a real great effort and much credit to you for doing stuff like this and making it available.
Takes a load of effort & nerve so well done

If u want a few pointers or stuck with anything etc PM me
  Resident 21.10.2016 39 101
Hi Kloud,

This is my first attempt at scripting and its hard to understand how it works for me. I'm just trying my best to get something to work at this point, but I do find it fun to learn. I was going to put in a bypass switch but didn't find clear example of how to do it. Thanks for the information will ask for help when I rework the piano library.

  Resident 21.10.2016 39 101
Download Link

I've put the missing (-) back in and removed the the set perimeters of the reverb back to 0 and I've managed to get a bypass button working. Thanks for your help. I'm having a problem storing last used settings working properly.

I've just worked out how to get this working using 'read_persistent_var' to get old setting back.
  Member 20.10.2016 22
Thank you again!
  guest -- 0
Wrote this today 4 u.

Uses a menu and functions to show controls etc and turn reverb on & off.
The ONLY ranges u really want to limit are dry level & send level.

Set these 2 397000 or if +24dB it gonna CLIP HUGE lol.

Also use sliders. If u want 2 use custom graphics u have to declare a slider instead. Has different consequences but in main range is just 0-1000000 and u need to declare labels etc to show your values.

This uses just one label and a function to show ALL values. Is simpler that way.

Also real important is the use of FUNCTIONS. Use functions to optimise your code wherever possible. Less code -> Less memory usage -> Works quicker & slick lol.

LOADS of stuff to think about and loads of options.

Best way is just give u script & jump in there.

Ideally u want to be using reverb etc as a send effect rather than an insert. Keep in mind placement and fact that certain controls only should really go in certain places. I.E Surround panner -> Group Insert FX. EQ -> Logical Choices. Send FX -> Send FX lol. U done real well considering it early on & good 4 u.
Insert this instead of your reverb etc & give it a study & ask about anything u not sure about as will save u huge time in long run.

I did everything wrong lol at first like everyone does and whilst shit lol helps u learn I guess. Still do loads wrong & that just the nature fo scripting lol

Reverb Script

Wouldn't let me drop code direct so had to use pastebin lol

As I said u done real well considering and is so cool 2 see this stuff. Well is 4 me anyway lol. Ask if anything u not sure about
  guest -- 0
Keep in mind it only a rough draft & may contain a few errors here & there wrt default values or something similar

Think it works pretty much fine though not tested it much
  Resident 21.10.2016 39 101
Looks great, the code looks very advanced, I wish I could get that good, but I think I'll be struggling to get anywhere near to this. Thanks for the script, will add it to my library. I'm Not to sure how I'm going to implement the graphics with it now.
  guest -- 0
Graphics are ok & u get specialist people in that area obviously that do that sort of stuff who way more advanced say that basic sort of stuff most people can do.
First of get the free version of Knobman or JKnobman.
It's a really underrated program and fantastic for kontakt stuff.
There a learning curve with Knobman and the GUI looks a bit suspect first look but of course never judge on looks and that.
People use Photoshop a lot and photoshop is great & has some good templates 4 Kontakt.
However there are also some great free programs. GIMP gnu image manipulation is a real good free program that can do a lot of what photoshop does. Your Background the easy bit unless of course you are using say clips etc. Couple formats used really either mainly .png or .tga
TGA takes up a lot more space in general but the quality a little better sometimes I guess. Compression the important thing there and just like say wav -> .ncw, pictures can also be compressed to save space. Might not think they add up to much space but they actually can do lol. If say you're using a load of custom labels and different backgrounds etc adds up pretty quickly.
For buttons and say sliders you got to think of em like little movie clips I guess. The important thing is that the the image HAS to contain a vaild .txt file etc that describes the properties of the knob i.e whether it got Alpha Channel, Number of horizontal\vertical frames etc and a few other bits. You need to include the text file with the knob in the resources folder or Knob won't work correctly. Typical descriptor would be say

That's all u need but frame number gotta be right or it will display all messed up. U can also use .png sprites & a few other bits. Use .png mainly. All these files gotta be placed in the correct folders in your resources folder. Keep in mind that graphic files, IR samples etc are sometimes encoded into the final .nkr and not located in the resources folder etc. That's partly why 5.5.2 & below was messing up certain GUI elements and commands in certain libraries in the context of direct extracion from the encoded .nkr itself. As a basis you can always use graphics you find lying about in say other library resource folders etc
i.e navigate on PC to
C:\Program Files\Common Files\Native Instruments\Kontakt 5\pictures & you find all the factory pictures & text files. Obviously the final product u gotta make you're own etc but there no harm in using some as quick goto resources etc.
This location is where Kontakt will look by default. i.e not sure of order but basically it will search .nkr itself -> Then Resources folder in the root folder of the library -> then say C:\Program Files\Common Files\Native Instruments\Kontakt 5\pictures. Then it will say can't find the pictures lol. This also why certain libraries have messed up GUI elements. The old shitty 8Dio installers for example used to install pictures needed in the wrong location & kontakt not find them :-D
You can also make stuff online i.e Knobman site u can actually render your own animations etc online & download. They are actually a lot easier to make than you think all though the experts in graphics always make them somehow appear like awesome lol. Graphics the fun bit really & often pretty cool 2 turn to when say u need a break from like scripting. If u can't find any files I send u a load.
Think some user here actually was making a gallery of buttons etc but can't quite remember.
Would be a really useful resource library actually
To start with just borrow some from NI lol.
They won't mind lol
Then replace them later as u make them. i.e navigate to

C:\Program Files\Common Files\Native Instruments\Kontakt 5\pictures & borrow a few lol
  guest -- 0
As for implementing the graphics themselves you simply include str command that references the name etc. Kontakt automatically look for the graphics name & find it ie code for say declaring a switch or a knob would simply be something like

Important thing to remember is firstly that for custom graphics with a knob you have to declare a slider lol. Stupid but imagine it's maybe to do with imaging of frames or something similar
Also important is to learn the differences say between a switch & a button. You can automate a switch for example but you cannot automate a button. Certain rules also exist for say menu's etc. They all listed in KSP reference, mostly
You can always introduce workarounds also and invent ways of doing things. i.e you can declare a button and use it for many things it not designed for.
Other things like using image placeholders and invisible\transparent .pngs or buttons to lock certain GUI elements etc. Whole different world but real interesting.
Would also recommend if you gonna get serious about it then check out some of the excellent tutorials on youtube and read as much as you can.
The ADSR tutorials are really worth going through.
Anything by Xtant Audio\David Healy or Wil Bedford is normally fantastic
Anything by say Mario Krušelj (Hollow Sun & loads more)
Also for scripting itself think about using Sublime Text 3 text editor with a plugin such as Koala or the excellent Nils Liberg sublime text 3 plugin. Compilers can be real useful
Also read everything Nils ever written lol & visit his site
  Resident 21.10.2016 39 101
Thanks for the information, I've just downloaded Knobman and it looks like it will do the job, just need about a year now to learn it all lol I'll check out the tutorials and spend some time studying.
  Moderator 21.01.2012 899 7918
Fantastic collaboration here ... That's great to see this at AudioZ
  Resident 21.10.2016 39 101
Download Link

I've managed to get the graphics to work with your script, some head scratching but I got it in the end. I've uploaded the whole piano again so everyone can download it. Your help been fantastic and I'm starting to get into coding. I used Photoshop to modify some found elements to make them look right in the design.
  guest -- 0
quote by Michael SaxDownload Link
I'm starting to get into coding..

Excellent - So cool your getting into it as it will open up a whole new world that a lot of fun. That's what it all about & if you getting into it so cool. Who knows
Get your head down and maybe in a year or so you can get some of your own products out there on the market which would be a huge achievement.
Nothing as satisfying as say building a whole complete instrument from nothing other than a bit of code, some graphics & a few audio samples.
Photoshop is great for certain things and once you get that going as well you have most of what you need.
Will download it now, check it out and see what you could think about adding
I think a certain user criticised stating you can't get ppp to fff dynamics from a few megabytes?
Well that's a very simplistic and shallow assumption in my own opinion.
That would be the whole idea behind inserting a velocity control script.
This will immediately reflect dynamics in that it will take note of the manner in which you strike the keys and apply due processing. It's relatively simple to achieve
Whilst you might not have every dynamic sampled in terms of raw samples the whole point of using a sampler is to MODIFY the playback of the content itself.
There are some absolutely incredible applications that use minute amounts of code & sample content that yield fantastic results.
As was argued in another thread the future is not plain sampling & playback as the process itself is impractical and self limiting.
Most people who actually code applications themselves openly admit that the future lies in taking a sample and applying methodology.
Any old piece of junk can simply play back a sample.
The whole point of utilising a sampler however is to apply a certain process & methodology to the sample content itself to yield a desired result. Simply collecting more & more raw data is definitely NOT the way forward I'll download it now & have a look what can be done.
Great work

Oly - Thankyou for the kind words
Is great to collaborate & create something like you said
Nice one

related posts

Chocolate Audio The 88 Series Pianos Steinbach Upright KONTAKTChicago Fire: A Dance Music Anthology1700 acapellasAcousticSamples Kawai-EX PRO Concert Grand Piano MULTiFORMAT and Patches[dead] Captain Audio - Pedal to the Metal [wma]

Spread the Word