My NP88 sounds much better with a slightly "relaxed" velocity curve. I often play it using my old Yamaha P250 keyboard thru midi, and the improvement in mellowness is striking.
For those times when I carry the Nord alone I developed a Velocity Tool to let me set my own custom velocity curve. If you would like to try it, a download is available at http://www.hayneselectronics.com in standard Mac .dmg format.
Yes, a Mac running 10.6 or higher is required. Actually, this software tool has only been tested on one (1) Airbook running 10.6.8. I've gigged with it and have had no problems.
The software is not considered finished and has a rough edge or two, but it does work - at least for me.
The program does not (yet) work properly on some other keyboards, ie, Yamaha P250.
Try it. It's free. If it works for you it will improve your piano sound. Please post your experience.
Al
9 posts
• Page 1 of 1
Velocity tool for the Nord piano
- The author jazzonebyone was thanked by:
- Mr_-G-
- jazzonebyone
- Posts: 31
- Joined: 23 Apr 2011, 16:34
- Has thanked: 0 time
- Been thanked: 6 times
Re: Velocity tool for the Nord piano
Interesting! Some time ago it was mentioned here that switching Local off an making a midi loop and using the Extern section in the NS2 improves the piano dynamics too.
Unfortunately I do not have a mac to try the program, but I guess that something like this can be written in PureData?
Can you share a bit how you achieved this? Did you use a look up table or a formula to convert the input values into output values?
Thanks in advance.
Unfortunately I do not have a mac to try the program, but I guess that something like this can be written in PureData?
Can you share a bit how you achieved this? Did you use a look up table or a formula to convert the input values into output values?
Thanks in advance.
-
Mr_-G- - Moderator
- Posts: 4616
- Joined: 18 Aug 2012, 16:48
- Has thanked: 1475 times
- Been thanked: 1257 times
- Your Nord Gear #1: Nord Stage 2
Re: Velocity tool for the Nord piano
Hi All!Mr_-G- wrote:(..) I guess that something like this can be written in PureData?
Can you share a bit how you achieved this? Did you use a look up table or a formula to convert the input values into output values?
I am interested too - not much time available to develop such a tool from scratch
NS2 SW73
-
iaorana - Posts: 178
- Joined: 13 Mar 2011, 09:02
- Location: Raiatea (French Polynesia)
- Country:
- Has thanked: 170 times
- Been thanked: 58 times
- Your Nord Gear #1: Nord Stage 2
Re: Velocity tool for the Nord piano
I initially wrote an Applescript with a translation table and used Midipipe, but the table approach was too cumbersome. The Velocity Tool uses a formula read from a graph and lets you easily modify the velocity curve in real time.
The program is written in Objective-C using Apple's Xcode programming environment.
There is a program already available for PC users - http://www.trombettworks.com/velocity.php. I'm not familiar with it, but it claims to do the same thing.
The program is written in Objective-C using Apple's Xcode programming environment.
There is a program already available for PC users - http://www.trombettworks.com/velocity.php. I'm not familiar with it, but it claims to do the same thing.
- jazzonebyone
- Posts: 31
- Joined: 23 Apr 2011, 16:34
- Has thanked: 0 time
- Been thanked: 6 times
Re: Velocity tool for the Nord piano
Here is my first go at a PureData velocity scaler program.
It gets a MIDI in and scales the velocity according to 2 parameters:
MIDI_Out = ((MIDI_In/127)^a) * b
That is it scales down the velocity to the range 0..1, then it raises this to the power of a and it scales it with factor b.
PureData brackets the output to 127, so if the result is >127 it is set to 127.
Here is what the pd module looks like:
Here is the pd file:
--------------------8<--------------------
#N canvas 1208 13 287 268 10;
#X obj 28 -99 notein;
#X floatatom 9 -66 5 0 0 0 - - -;
#X floatatom 44 -66 5 0 0 0 - - -;
#X floatatom 79 -66 5 0 0 0 - - -;
#X obj 25 71 noteout;
#X obj 164 -119 vsl 15 128 0 7 0 0 empty empty Power 0 -9 0 10 -262144
-1 -1 0 1;
#X obj 202 -119 vsl 15 128 100 200 0 0 empty empty Factor 0 -9 0 10
-262144 -1 -1 0 1;
#X obj 44 19 *;
#X floatatom 164 17 5 0 0 0 - - -;
#X floatatom 202 17 5 0 0 0 - - -;
#X floatatom 53 42 5 0 0 0 - - -;
#X obj 44 -31 / 127;
#X obj 44 -6 expr pow($f1 \, $f2);
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 3 0;
#X connect 1 0 4 0;
#X connect 2 0 11 0;
#X connect 3 0 4 2;
#X connect 5 0 8 0;
#X connect 5 0 12 1;
#X connect 6 0 7 1;
#X connect 6 0 9 0;
#X connect 7 0 4 1;
#X connect 7 0 10 0;
#X connect 11 0 12 0;
#X connect 12 0 7 0;
--------------------8<--------------------
And this is the curve for a=2 and b=200:
a=1 and b=127 is the same as no scaling.
I only tried it with my JX-8P and with a MIDI monitor, under linux.
Needless to say that it is required to switch the MIDI Local Off and connect the kbd to and from the computer so PD can see it.
Unfortunately there is a tiny latency, maybe with a faster computer this is not noticed, or perhaps I could simplify the formula to use only one expression to speed it.
Please post any enhancements here.
It gets a MIDI in and scales the velocity according to 2 parameters:
MIDI_Out = ((MIDI_In/127)^a) * b
That is it scales down the velocity to the range 0..1, then it raises this to the power of a and it scales it with factor b.
PureData brackets the output to 127, so if the result is >127 it is set to 127.
Here is what the pd module looks like:
Here is the pd file:
--------------------8<--------------------
#N canvas 1208 13 287 268 10;
#X obj 28 -99 notein;
#X floatatom 9 -66 5 0 0 0 - - -;
#X floatatom 44 -66 5 0 0 0 - - -;
#X floatatom 79 -66 5 0 0 0 - - -;
#X obj 25 71 noteout;
#X obj 164 -119 vsl 15 128 0 7 0 0 empty empty Power 0 -9 0 10 -262144
-1 -1 0 1;
#X obj 202 -119 vsl 15 128 100 200 0 0 empty empty Factor 0 -9 0 10
-262144 -1 -1 0 1;
#X obj 44 19 *;
#X floatatom 164 17 5 0 0 0 - - -;
#X floatatom 202 17 5 0 0 0 - - -;
#X floatatom 53 42 5 0 0 0 - - -;
#X obj 44 -31 / 127;
#X obj 44 -6 expr pow($f1 \, $f2);
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 3 0;
#X connect 1 0 4 0;
#X connect 2 0 11 0;
#X connect 3 0 4 2;
#X connect 5 0 8 0;
#X connect 5 0 12 1;
#X connect 6 0 7 1;
#X connect 6 0 9 0;
#X connect 7 0 4 1;
#X connect 7 0 10 0;
#X connect 11 0 12 0;
#X connect 12 0 7 0;
--------------------8<--------------------
And this is the curve for a=2 and b=200:
a=1 and b=127 is the same as no scaling.
I only tried it with my JX-8P and with a MIDI monitor, under linux.
Needless to say that it is required to switch the MIDI Local Off and connect the kbd to and from the computer so PD can see it.
Unfortunately there is a tiny latency, maybe with a faster computer this is not noticed, or perhaps I could simplify the formula to use only one expression to speed it.
Please post any enhancements here.
Last edited by Mr_-G- on 30 Aug 2013, 00:28, edited 1 time in total.
-
Mr_-G- - Moderator
- Posts: 4616
- Joined: 18 Aug 2012, 16:48
- Has thanked: 1475 times
- Been thanked: 1257 times
- Your Nord Gear #1: Nord Stage 2
Re: Velocity tool for the Nord piano
This might be exactly what you are looking for if you don't want to schlepp your laptop:
http://www.midisolutions.com/prodvel.htm
http://www.midisolutions.com/prodvel.htm
Last edited by organuts on 03 Oct 2013, 22:43, edited 2 times in total.
- organuts
- Posts: 28
- Joined: 29 Apr 2013, 03:39
- Country:
- Has thanked: 3 times
- Been thanked: 1 time
- Your Nord Gear #1: Nord Stage 2
- Your Nord Gear #2: Nord Wave
Re: Velocity tool for the Nord piano
I've got a new version in the works that includes an interface for Mainstage, including Leslie control and a real sustain pedal for the EVB3. Stay tuned !
- jazzonebyone
- Posts: 31
- Joined: 23 Apr 2011, 16:34
- Has thanked: 0 time
- Been thanked: 6 times
Re: Velocity tool for the Nord piano
The midisolutions boxes are look good if you have a PC, but don't appear to give you real-time control.
BTW, I just got the Mainstage interface working. Because the Nord Piano doesn't have a mod wheel, I'm letting the soft pedal toggle the Leslie on & off. And the sustain pedal works properly with the EVB3 organ. While real organ guys will scoff, as a piano player I find the sustain function very useful, especially when layering.
BTW, I just got the Mainstage interface working. Because the Nord Piano doesn't have a mod wheel, I'm letting the soft pedal toggle the Leslie on & off. And the sustain pedal works properly with the EVB3 organ. While real organ guys will scoff, as a piano player I find the sustain function very useful, especially when layering.
- jazzonebyone
- Posts: 31
- Joined: 23 Apr 2011, 16:34
- Has thanked: 0 time
- Been thanked: 6 times
Re: Velocity tool for the Nord piano
I've just posted an enhanced version of the Velocity Tool which provides support for Mainstage. Assume this one to be "Very Beta". I'll gig with it next week and see what happens !
The next thing I want to add is a keyboard split. This will make the NP1 + Mainstage combination pretty much an equivalent to an NP2 !
Mac only, and tested only with 10.6.8.
The next thing I want to add is a keyboard split. This will make the NP1 + Mainstage combination pretty much an equivalent to an NP2 !
Mac only, and tested only with 10.6.8.
- jazzonebyone
- Posts: 31
- Joined: 23 Apr 2011, 16:34
- Has thanked: 0 time
- Been thanked: 6 times
9 posts
• Page 1 of 1
Return to Nord Piano / Grand Forum
Who is online
Users browsing this forum: No registered users and 20 guests