Tutorials » Spitfire Audio » The sustain pedal
In this blog I'll be looking at the sustain pedal - why some Spitfire products have a problem with it, and how this can be fixed.
The sustain pedal and your DAW
If you're a pianist, you'll be familiar with the sustain pedal, but here's a quick crash course for those new to music (or those not familiar with how it translates to use in your DAW). The sustain pedal is a [physical or digital] 'pedal' that can be held down in order to sustain notes without having to hold down the actual keys. For pianists, this is used so that they can play a series of notes and release their fingers from the keys without the notes coming to a stop. I won't go into advanced concepts, or cover the other piano pedals, but it generally 'sustains' in two ways -
- Any notes played while the pedal is already pressed will sustain until it is released,
- Any notes already held while the pedal is pressed will also sustain until it is released.
Your DAW uses a specific continuous controller (CC) to denote whether the pedal is down or up. The MIDI specifications define this as CC64. As with all specs, various manufacturers implement it slightly differently, but the basic idea is that when the value of CC64 is set to 63 or below it's considered up. When it's set to 64 or above, the pedal is considered down. Some hardware pedals switch between two values (ie 0 and 127, or 0 and 64) while others are continuous and blend from 0-127 depending on the position of the pedal. Your DAW can specify any value from 0 to 127:
In the picture above, the first three notes will not sustain, as they were pressed before the pedal (shown in the CC lane) was held down (>= 64). The second three notes will all sustain until the point that the pedal is up (< 64). The last three notes will all sustain (the 7th note was still held at the point when then pedal is pressed down).
Spitfire libraries and the sustain pedal
The sustain pedal can be a bit tricky to script. Conceptually, it's a simple idea - you sustain notes that were pressed when the pedal was down whilst you release notes that weren't. The tricky part is making this work with all-in-ones, and making advanced techniques such as legato work correctly. In general the sustain pedal is not supported in most Spitfire libraries. Whilst it works in many situations, the behaviour can sometimes be a little quirky (weird envelopes, missing release triggers, etc.) and does not work at all with legato instruments. I try to fix any reports I get of the pedal not functioning correctly, but it's just not possible to guarantee this when relying on a third party platform such as Kontakt.