Scala sequence file format

This page describes the file format of the score input files to create microtonal MIDI-files with Scala. The emphasis is on flexible description of pitches and easy experimenting with different tunings without editing the file. To do the conversion, use the EXAMPLE command, or go to the Tools->Transform sequence to MIDI-file dialog.

Statements syntax

Each statement must be put on a different line in the file. Everything after an exclamation mark are comments to be ignored. Parameters between square brackets are optional. time command parameters 0 addtime <time offset> 0 default <filename> 0 division <units per quarter note> 0 equal <division> [<formal octave>] 0 exclude <channel no. (1..16)> 0 frequency <frequency for degree> [<degree>] 0 key <degree/pitch/name> 0 load <filename> 0 lt_gens <formal fifth> [<formal octave>] 0 lt_pars <generator> <division> [lower bound] [<formal octave>] 0 notation <notation system> [<formal octave>] 0 offset [<name>] 0 outfile <filename> 0 relative 0 transpose <degree/pitch/name> 0 val <val> 0 velocity <default onset key velocity (0..127)> <time> bend <degree/pitch/name> <time> chord <filename> <duration> [<degree/pitch/name>] [<offset degree>] [<velocity>] <time> ladder <filename> <duration per note> [<degree/pitch/name>] [<offset degree>] [<velocity>] <time> mnote <channel no. (1..16)> <note no. (0..127)> <duration> [<velocity>] <time> note <degree/pitch/name> <duration> [<velocity>] <time> parameter <parameter no. (0..127)> <value> <time> portamento <degree/pitch/name> <end degree/pitch/name> <duration> [<velocity>] <time> program <program no. (1..128)> [b] <time> tempo <microseconds per quarter note/q.n. per minute> [pm] <time> text <text info> <time> timesig <num/den> [<MIDI clocks>] [<32nd-notes>] <time> touch <value (0..127)> <time> track <track no. (1..16)>

If a zero is indicated above as time parameter, this means that this field is ignored. It does not mean that the statement must appear at the beginning, except for "exclude", "frequency" and "division". The other statements may appear anywhere and more than once and their scope is everything below until an eventual other statement of the same kind. The zero may not be omitted and is reserved for future use. The tempo can be changed independent of the start times.

Explanation of the parameters

Explanation of the statements

The default file extension for scale files in the input file is '.scl' and for the output file parameter it's '.mid'. The input file needs a full name.
If there is an error in the input file, then the message 'Error in file format' will be given followed by the contents of the line that causes the error. If a wildcard is given in the filename, then the first file that matches it will be used.

See also the help text of the EXAMPLE command.

Manuel Op de Coul, 2003-2016.

! Easley Blackwood: Harmonization of a mode in 15-tET.
! Example 29 of "Modes and chord progressions in equal tunings", p. 195.
! Perspectives of New Music vol. 29 no. 2, 1991.
0     exclude   10
0     tempo     750_000
0     velocity  96
0     frequency 261.6255653
0     notation  E15
0     outfile   ex15.mid
0     text "Easley Blackwood: Harmonization of a mode in 15-tET"
0	track 1
0       program   1
0	note C.1	480
0	note E\.1	480
480	note B\		480
480	note D.1	480
960	note Bb/	480
960	note D\.1	480
1440	note A\		480
1440	note C.1	480
1920	note G		480
1920	note B\		480
2400	note F#\	480
2400	note A		480
2880	note F		480
2880	note A\		480
3360	note E\		480
3360	note G		480
3840	note Eb		480
3840	note G\		480
4320	note D\		480
4320	note F		480
4800	note C		960
4800	note E\		960
0	track 2
0       program   1
0	note C		480
0	note G		960
480	note G.-1	480
960	note Bb.-1	480
960	note F		960
1440	note F.-1	480
1920	note G.-1	480
1920	note D		960
2400	note D.-1	480
2880	note F.-1	480
2880	note C		960
3360	note C.-1	480
3840	note Eb.-1	480
3840	note Bb.-1	960
4320	note Bb.-2	480
4800	note C.-1	960
4800	note G.-1	960
Some more sequence files are included with the Scala distribution.

Other software

Other programs which support the Scala sequence file format:

Scala home page