Contents of the FTP Site

The ftp site contains a variety of things that may be useful to those who wish to run, experiment with, test or use the Melisma system.

Source code. First of all, the site contains all the source code necessary for the running of the five programs which constitute the analyzer. The programs are written in C, and run on a UNIX platform. For each program - meter, grouper, streamer, harmony and key - there is a directory containing the necessary source code for that program; a Makefile for compilation of the program; and a parameter file, currently containing the default parameters for the program. (To compile one of the programs, download the entire contents of the relevant directory; then enter the directory and type "make".)

Utilities. We also provide some simple utility programs for manipulating notefiles:

mftext. This program, which was written by ??? and modified by us, takes a standard file and outputs a "notefile" (a list of statements of the form "Note [ontime] [offtime] [pitch]", suitable for input to the Melisma meter program.

tempo-adjust. This program takes a notefile (or a note-beat file) and adjusts the time points by a certain muliplicative factor, and outputs a new notelist (or note-and-beat list). Run it like this:

        tempo-adjust [-m or -t] [value] [input-file]

If the first flag is "-m", the program will multiply all time-points
in the file by the value specified immediately following. If this
value is 2.0, then, the program will take the line "Note 1000 2000 60"
and output "Note 2000 4000 60". If the first flag is "-t", the program
will assume the following value is a metronome mark; it will assume
that the input has a tempo of quarter = 60, and scale all time values
to the new tempo. If the value is 90, then, the program will take the
line "Note 1000 2000 60" and output "Note 666 1333 60".

time-offset. This program ADDS a value to all time-points in the input file (either a notefile or note-beat file), and outputs the result. Run it like this:

        time-offset [time-offset value] [input-file] 

concatenate. This program takes