MIDI & Microtonality
Last check of all links: 2018-07-11
Here's how to implement microtonality in a Standard MIDI File using
pitch-bends instead of the official MIDI Tuning
Standard specification, which is not supported by a lot of hard-
and software.
Microtonality is a large field of musical options,
possibilities and concepts. The following instructions only work for
mono-timbral music based on a 12-tone scale with adjacent pitch classes
(i.e. rising chromatically), e. g.
C | C#/Db | D | D#/Eb | E | F | F#/Gb | G | G#/Ab | A | A#/Bb |
B
or
F | F#/Gb | G | G#/Ab | A | A#/Bb | B
| C | C#/Db |
D | D#/Eb | E
etc.
I know two pieces of free software to implement microtonality in a
Standard MIDI File using pitch bends. The first one, Scala, runs fine
under modern windows, but its solution is not fully compatible with e.
g. Vienna Instruments. The second one, Harmonic/PianoTuner, produces
100%-compatible microtonal Standard MIDI Files, but you have to install
a DOS emulator before you can run this ancient pieces of software on a
modern PC. I won't show you how to do this here, but, believe me,
there's plenty of good tutorials out there in the web.
Eibelstadt, July 2018
Stefan Hetzel
Scala
Here's how to implement microtonality in a Standard MIDI File via pitch-bending using Manuel Op de Coul's software Scala (free software for Windows, tested unter Windows 11 Home 64-bit):
- After you have downloaded and installed Scala and the associated
scales archive
scales.zip
, launch Scala. - Click Open and choose your
scale file (
*.scl
)
- Click Tools / Retune MIDI file...
- Select the Standard MIDI File you want to retune from your hard disk.
- Specify a name and a location for your output Standard MIDI
File.
- Click OK.
- Done.
If your scale doesn't start on middle C
(as is the case
for e. g. La
Monte Young's tuning for "The Well-Tuned Piano", which starts on
Eb
), execute steps 1 to 5 above, then click Edit Mapping, set Key for 1/1 to (in this case) 63 and click OK and continue with step 6.
In Tom's MIDI Player, the result looks like this:
In the screenshot above, Scala only uses seven MIDI channels (1 - 6 + 8) to retune the Standard MIDI File, but Young's scale has twelve different pitch classes, so obviously some MIDI channels are used for several pitch classes. Anyway, when rendering the output file with e. g. Vienna Instruments, audible pitch-bendings occur.
To avoid this, you have to use Harmonic/PianoTuner which allocates a
MIDI channel to each pitch class.
Harmonic / PianoTuner
Here's how to permanently implement microtonality in a Standard MIDI File via pitch-bending using Fred Nachbaur's software package Harmonic/PianoTuner (free software for MS-DOS, no longer in active development):
Take your desired scl
file out of Scala's archive and load
it in Harmonic. It will look like this:
In the screenshot's utmost right column, you can see how in this scale
all E
s are raised by approx. 77 Cents, all F
s
are raised by approx. 4 cents, all F#/Gb
s are lowered by
60 Cents etc.
(Notice that this scale doesn't ascend uniformly. The G#
s
will sound a little bit lower than the G
s and the
C#
s a little bit lower than the C
s. In this
case, you will have to manually assign pitch classes to MIDI channels
using the "+
" and "-
" keys on your computer
keyboard, so that G#
s are placed beneath G
s
and C#
s beneath C
s.)
Now, you can convert the scale to Harmonic's proprietary file format
dat
and hand that file over to PianoTuner.
PianoTuner will assign all notes of your previously specified input Standard MIDI File (which has to be Type 0) to different MIDI channels according to their respective pitch class. Each pitch class is then retuned by inserting a single pitch bend message before the respective channel's first note is played. So, while the music is playing, there is no pitch-bending intermitting.
In Tom's MIDI Player, the output looks like this:
intun
... by Brad Smith (free software for Windows, no longer in active development, tested under Windows 7 Home Premium Service Pack 1) "allows you to alter the tuning of your MIDI device. [...] It works by sending out each note to its own MIDI channel, where a pitch bend may alter the pitch as per the tuning you specify." This is a simple to use software to experimentally implement microtonality in realtime to existing Standard MIDI Files. The Standard MIDI File itself remains unchanged by intun. Great for rehearsals and live performances.