MIDI Velocity Scaling for Soft Sample Libraries

MIDI velocity scaling is the process of altering the incoming velocity data from a MIDI controller before it triggers a virtual instrument, effectively reshaping how hard you must strike a key to produce a given volume or timbre. For keyboardists with a naturally heavy touch, delicate virtual instruments—such as felt pianos, intimate strings, or subtle woodwinds—can be frustratingly difficult to control because normal playing easily triggers harsh, loud sample layers. By applying a custom velocity curve, players can remap high physical strike forces to lower output values, allowing them to perform with their natural physical weight while consistently accessing the sweetest, softest layers of their sample libraries.

Understanding MIDI Velocity and Dynamic Layers

Every time you press a key on a MIDI keyboard, it transmits a velocity value ranging from 1 to 127. Virtual sample libraries rely on this data to determine not just how loud a note should be, but which recorded audio sample to trigger.

Most modern sample libraries are multi-sampled across multiple dynamic layers:

When an instrument is programmed specifically for soft, ambient, or cinematic playing, the most desirable tonal characteristics often reside strictly within the lowest velocity values.

The Challenge of a Heavy Touch

Pianists trained on acoustic grand pianos or heavy hammer-action keyboards typically play with substantial finger weight and arm gravity. On a physical acoustic instrument, this technique produces a rich, resonant tone.

However, on a standard MIDI controller with a default linear response (a 1:1 ratio where an input of 60 equals an output of 60), a heavy touch frequently registers values between 80 and 115, even during moderate passages. When playing a library designed for soft, expressive playing, this causes several issues:

How MIDI Velocity Scaling Works

Velocity scaling remaps the input-to-output relationship between your hardware controller and your software instrument. Rather than sending raw data directly to the sound engine, the data passes through a mathematical curve or offset.

1. Scaling Curves (Logarithmic / Convex)

In a linear setup, input directly mirrors output. By switching to an exponential or convex curve (often labeled as "soft" or "heavy" depending on the software manufacturer), you require higher physical force to achieve higher output numbers.

2. Velocity Offsets and Clamping

Scaling can also set fixed boundaries on incoming data:

Where to Configure Velocity Scaling

Velocity scaling can be implemented at three different stages in your production chain:

By utilizing velocity scaling, you decouple your physical technique from the mechanical limitations of the software. You retain the freedom to play with natural weight and emotion while forcing the sample engine to deliver the delicate, whisper-quiet tones you intended.