Virtual Wind Instruments

June 29th, 2018
music, tech
I've been thinking about what I want in a virtual wind instrument and how it differs from a keyboard instrument. On a keyboard there's:
  • Which key did you hit?
  • How hard did you hit it?
  • How long did you hold it?
A wind instrument adds:
  • How much breath pressure is there?
Your typical virtual instrument (synth) only has one parameter that can be expressively adjusted after the note has started: volume. For example, to simulate an organ with a swell box you can do well with just having volume (dB) vary linearly with pressure:

Most real instruments change their tonal qualities as you increase pressure/force/tension, however, and this is a good thing! It lets you vary the feeling of the instrument much more than by just getting louder and softer. While in acoustic instruments this typically comes along with large variations in volume, we usually adjust that out by adding compression. you generally want volume to increase at first and then level off:

While the tone goes from something clean/sweet/pretty to something a bit harder/dirtier/rougher:

We can call this combined volume and roughness 'intensity', and in these graphs above I've shown intensity rising with breath pressure.

A note generally has two aspects: the initial sounding (the attack) and everything else (the sustain). On a keyboard synth these are controlled together by how hard you press the key. You can't, for example, choose between a low and high intensity attack to pair with a given intensity of sustain. And you can't vary the intensity of the sustain over the course of the note.

Which gets to how I want a virtual wind instrument to work:

  • Breath pressure controlls overall instrument intensity. No breath pressure, no sound. Varying pressure affects notes regardless of whether they've already started.
  • How hard you press the key controlls the attack intensity. This should be a function of the overall intensity: pressing a key forcefully with low breath pressure should give a less intense attack than with high pressure.

This is close to how the saxaphone synth I've been using works, except that attack intensity isn't treated as a function of overal intensity. If you whack on the keys it will make the 'attack' noises even if there's no breath pressure, and to get it to sound good you need to vary your key press pressure along with the breath pressure to keep an appropriate attack intensity for a given sustain intensity.

I'd like to play around with other sounds, but I haven't yet figured out how to find/build something which breaks down the sound this way.

Comment via: google plus, facebook, hacker news

Recent posts on blogs I like:

Development RCTs Are Good Actually

In defense of trying things out

via Thing of Things March 25, 2024

Clarendon Postmortem

I posted a postmortem of a community I worked to help build, Clarendon, in Cambridge MA, over at Supernuclear.

via Home March 19, 2024

How web bloat impacts users with slow devices

In 2017, we looked at how web bloat affects users with slow connections. Even in the U.S., many users didn't have broadband speeds, making much of the web difficult to use. It's still the case that many users don't have broadband speeds, both …

via Posts on March 16, 2024

more     (via openring)