PxPixel
Square One: Scaling Up - EMusician

Square One: Scaling Up

MICROTUNING YOUR SOFT SYNTH IS EASY WITH SCALA
Author:
Publish date:
Image placeholder title
Image placeholder title

FIG. 1: Scala''s main user interface (left) is text based but includes graphic tools, such as a graphic analysis (right) of intervals in the 25-note scale visible on the left.

For musicians who want to explore alternate tunings, computer-based synthesizers are good news indeed. Many software instruments can load small data files that let you tune each key on a MIDI keyboard to any frequency.

Several file formats are available with which to define tunings. The owner's manual may tell you what types your synth supports; however, this is such an esoteric area that some manuals skip the specifics, so you may get better information by posting questions on a user forum.

Start with Scala

The best way to create and edit tuning files is with Scala, a free, cross-platform program packed with utilities for defining and analyzing microtonal tunings (see Fig. 1). Scala uses menus and pop-up windows, but some of its deeper features require that you type commands in a command line.

The Scala Web site contains an archive of more than 3,000 tunings in the SCL format as well as a page giving full details on that format. You'll find tunings by Harry Partch, Wendy Carlos, Ivor Darreg, Easley Blackwood, and other visionaries, along with historical tunings and tunings used in music cultures from around the world.

Some synths can load SCL files, others require a translation into the TUN format, and still others respond to messages in the MIDI Tuning Standard bulk-dump format or in their own SysEx format. Scala supports them all. To consult a long list of both old and new instruments of all these types, type show synthesizer in the Scala command line.

Get in TUN

Both SCL and TUN files are in an easy-to-read ASCII text format, so you can open them in a text editor and see how the tuning is defined. The SCL format can specify the frequencies of notes either as ratios of some base frequency, which is how tunings are defined in just intonation, or in cents. (A cent is 1/100 of an equal-tempered semitone.) An SCL file defines only one range of frequencies, which are then repeated up and down the keyboard. A range doesn't need to consist of 12 notes, however.

A TUN file defines the pitches of all 128 MIDI notes in cents relative to the standard MIDI note tunings. If middle C is left at its default tuning, for instance, the TUN file will include the line note 60=6000. If it's tuned a quarter tone (50 cents) sharp, the line would read note 60=6050. High-precision values are also included in the file for synths that can tune to intervals smaller than a cent.

To translate an SCL file into a TUN file in Scala, create a directory called tun in your Scala directory in which to store the new files. Load an SCL file (or create a new tuning of your own), and type the following commands:
cd tun
set synth 112
set map_freq 440.0 69
set middle 60
send/file filename.tun

The first line changes Scala's output directory to the tun folder you've created. The 112 in the second line is a Scala code that sets it to output in the TUN format, and the third line specifies the frequency in hertz of a MIDI key (in this case, 440.0 Hz for MIDI Note Number 69, which is key A3) that will be used as the reference or center of the tuning. The fourth line sets the starting point for the range of frequencies defined in the SCL file. In the last line, substitute whatever file name you like. After the TUN file is saved, you can load it into your soft synth using whatever menu command the synth provides for that purpose.

The musical possibilities offered by alternate tunings are vast, evocative, and little explored. Earlier composers had to tune their instruments laboriously by hand (or build new ones) to hear these sonorities, but today we can do it with a few mouse-clicks.

Jim Aikin writes about music technology, teaches classical cello, and writes fiction. Visit him online atmusicwords.net.