Wind instruments and R-phase

I was doing some work with FluidSynth yesterday, and I had a problem with the release phase of the volume envelope.
First, some background…

With wind controllers the control sequence goes like this:

  • CC2’s start and rise as the player starts to blow a note
  • the note-on is issued when the velocity can be reliably calculated (usually after about 20msec), and the note starts to sound
  • the CC2’s continue as the note is played
  • the player stops blowing and the CC2s decline to zero
  • the note-off is issued

The release phase of the ADSR envelope is triggered by the note-off command. When you are playing a wind sound with a keyboard you need the release phase to make it sound like a wind instrument because the volume is still high when the noteoff is issued. That’s not true with a wind controller - the note-off only occurs when the volume (CC2) has reached zero, so the release phase is never heard.

With the soundfont I was using, the release was too long (0.4 sec) and it meant that I had a problem playing play quick staccato notes. I was hearing the release phase of the previous note as the CC2s for the new note were starting (before the note-on). It was there for only a short time, but I could hear it clearly.

I hadn’t appreciated this subtlety before, and I realised that the volume envelopes for keyboard playing and wind controller playing should be different.


1 Like