Miditrans 

MidiTrans is an application built on a visual language that supports general processing of standard MIDI files. Unlike most software sequencer programs that have a fixed repertoire of transforms, MidiTrans allows any transform to be implemented using the elements of a visual data-flow language. 

MidiTrans allows conditional transforming, and thus has much more of the flavor of a programming language. It allows transforms like: "In this interval in these tracks, if the top note is less than a fifth away from the next highest note, then transpose it up an octave, unless this results too high a note". 

A MIDI file is processed by MidiTrans as a structured stream of MIDI commands using the generator/collector metaphor. Arrays and lists are supported as polymorphic structures, and the basic data types include MIDI events and timestamps, both important in MIDI files. MidiTrans can be compared to OpCode's MAX, and Cakewalk's CAL. MidiTrans runs on the Windows 95 or NT platforms. 

If you have the Acrobat plug-in, you can: 
see the function factorial 

see a MIDI compressor function 

see a function that splits a type 0 file into separate tracks 

watch a presentation of MidiTrans. 


If you have questions, or would like to learn more about MidiTrans, mail me at rth@cs.nmsu.edu