We have a graphic of MIDI
velocities of the same piece, played
on three different instruments. I tried to obtain the same acoustical
results, adapting my playing to the characteristics of the pianos. As
you can see above, the result is puzzling. The graphic refers to three
pianos, a Yamaha PF85, an good stage digital piano, a much cheaper keyboard
(Roland), and in middle the fabulous Bösendorfer
290 SE, the rarest and most expensive piano in the world (therefore
theoretical, at least for the most of us...).
In order to visually emphasize the different velocity
responses, I took out the MIDI velocity range of the melody notes and
the MIDI velocity range of the accompaniment notes. You can see how
little velocity difference there is between the two musical lines for
the Yamaha and the keyboard, while the theoretical piano has much more
velocity difference. This means that the dynamics of the two digital
instruments are are not linear, but more compressed as they should be.
Naturally their internal sound generators compensate these different
responses to velocity, but what happens if we try to use the same midi
output with different sounds?
Here an audio file obtanied playing the same musical
excerpt with the three unedited midi files. First comes the PF85, than
the Roland, and finally the Bösendorfer. The excerpt is taken from the
piece "Turandots Frauengemach" by Ferruccio Busoni (you can find an excellent
recording of it here),
rendered with the Realistic Piano Soundbank (21 MB version),:
F. Busoni , 512 Kb, mp3
Quite disappointing, isn't it? A classical piano piece could be statistically
not representative of the music mostly played by digital piano users,
but classical music often shows better (In My Humble Opinion) where
problems are .
how can we make our piano midi files sound good?
A way could be manipulate the midi values through a sequencer. Cubase
and expecially Logic, for example, have some useful mathematical functions
to manipulate (expand, add, etc.) the numerical midi values. It is quite
difficult, though, to find the right values and it is very time-consumpting.
The easiest and most intuitive way consists of manipulating the velocity
response of the piano soundbank. The key to obtain the best settings usually
lies in the Velocity control button/slider in the soundbank editor .
The Slope setting determines the level of response to velocity. In this case, if set
to 1.00, the soundbank will react to the velocities of the midi file
exactly as they are. If set to 1.50, like in the image above, it will
expand the response to the velocities by 50%: this means that the dynamics
of your midi files will be much increased, compensating the mechanical
flatness of the keyboard (or of the playing...). If the levels are too
loud, like applying a 1.50 Slope to a midi file recorded with a PF85,
where values are already very high, you can adjust them retouching the
Velocity value. This value is added to the velocity treated with the
slope. In case of the PF85 we will need a negative value (-32 works
well) in order to reduce, for the Roland a positive value (+16, for
example). Trimming these two values is easy, intuitive and, over all,
fast! Remeber to activate the Velocity and Slope mostly pressing the button
close to them, and check some Multiedit (or similar) button before you experiment
around, or your changes will affect only one sample! (A piano soundbank
has tipically many of them: the Realistic Piano as more than 20 stereo samples). In
Vienna, the soundfont editor, similar parameters are even easier to
trim and test in realtime.
a word about legato playing... (coming really soon!)