Sevish Music

2 features we need in MIDI 2.0

MIDI has served musicians well for decades, but everyday microtonalists are struggling to make electronic music within the limitations of the MIDI spec. These limitations may not be apparent to your everyday musician, so I thought I would highlight some of the problems that are faced by those working in this field.

We have a problem with MIDI note numbers…

The existing MIDI standard allows you a mere 7 bits to store the value of the note being played. That gives us 128 notes in total. Oh don’t get me wrong, 128 notes is more than enough for standard tuning, but this isn’t 1890 anymore. People are starting to want something more than standard tuning.

128 notes simply isn’t enough for large microtonal scales. If I have 200 notes per octave, then to get a full piano range of 8 octaves I already need 1600 notes. If we were to represent every pitch of this scale with a MIDI note number, then note numbers would have to be represented by at least 11 bits (2048 notes).

But having all those note numbers (and a tuning table with 2048 values) isn’t an efficient solution. Bandwidth is now cheap – so let’s forget about MIDI note numbers altogether! We can just send frequencies directly as single floats.

Lose the MIDI note numbers – adopt frequencies!

Consider that we have a MIDI 2.0 system where frequencies are sent instead of note numbers. On a standard MIDI 2.0 keyboard controller you press middle A and it sends a note on message with a frequency value of 440.0. A connected MIDI sound module receives the message and starts outputting a sound at 440 Hz.

Now consider how easy it is for the microtonalist – they only need to purchase a single MIDI keyboard controller that allows them to set up microtonal tunings, and then it automatically works with every MIDI 2.0 sound module! That’s a great leap ahead of the mess we have today, where all MIDI controllers output note numbers 0-127 and each sound module has its own quirky method of assigning frequencies to those notes.

Polyphonic pitch bend

Pitch bend in the current MIDI spec is monophonic, so it affects all notes on the channel at the same time. This is fine if you’re playing lead keyboard for an 80’s disco funk band, not so cool in the 2010s. If I’m playing a chord and I want to bend one pitch up while another pitch gets bent down, the only way to do it is to put each note on its own individual channel. It’s quite an insane way to work, and you can see why it’s difficult to use pitch bend to play microtonal polyphonic music.

If it were possible to assign pitch bend data for each individual note, then even synths which didn’t support microtonality could be forced to play microtonal scales easily – as long as they supported the pitch bend correctly.

The only way to play polyphonic microtonal music using the pitch-bend method today, is to put each voice on to its own MIDI channel, of which there are a maximum of 16. So already you’re now limited to 16 note polyphony, and this will only work with multitimbral synths (i.e. they can receive data on all 16 channels and output all notes at the same time).

What we can do before MIDI 2.0 release date

We can always write to developers thoughtfully, and ask them to add features the microtonalists need, with reasons why those features are helpful.

For now we’re stuck with the original MIDI, which to be fair is still an awesome spec. It allows us to connect pieces of kit from various manufacturers, and it all just works. So if you’re looking for ways to make microtonal music with MIDI instruments, here they are:

If you’re using hardware, then try to get hardware that can load and store tunings. Some synths support the MIDI tuning standard (MTS) which uses SysEx data to send note frequencies. It’s not commonly supported in most synths, so do your research before you buy.

If you’re working in a DAW, there are many VST instruments that can support microtonal scales. Sure you’re limited to 128 notes and monophonic pitch bend, but these instruments can set any frequency you like to each of the 128 notes. That’s a good start, and should keep you busy until we get a very microtonal MIDI 2.0.

EDIT: I’ve just been made aware of a new tuning method for MIDI synths. Worth a read!

I have written about my own workflow for microtonal composition using Ableton Live, Scala, and VSTs.


2 thoughts on “2 features we need in MIDI 2.0”

  1. Gabriel

    Yes, this must happen! Cubase 7.5 already had a workaround for polyphonic note expression in the editor. And the MIDI note number issue is simply embarrassing. People engaged in sampling will still want to have specific values in integers corresponding to physical keys on a controller. But nobody in their right mind would let this limit the necessity of establishing a new note standard.

    There must be change, and I’m very glad there is involvement.

    Reply

    1. Sevish Sevish Post author

      Hey Gabriel,

      You make a very good point about people engaged in sampling. There is a lot more to consider than what I was able to cover in this article for sure. I’m also pleased to hear about Cubase, and I’ll have to do some research on their polyphonic note expression in the future.

      When the opportunity for change arises, we should be quite vocal about our own needs and make sure that there is some provision made for microtonal musicians. Let’s stay in touch and keep the buzz going for microtonal features in music technology.

      You might be interested to join the MIRAGE (Microtonality Request Action Group Effort) group on Facebook if you haven’t already: https://www.facebook.com/groups/1072547846145752/
      Some folks are using the MIRAGE group to discuss ways to raise awareness about microtonal features to music tech developers.

      Reply

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*