Page 1 of 1

Added NOTE_OFF support to MidiConv

Posted: Sun Feb 19, 2017 3:51 am
by Artcfox
There are multiple ways to specify a MIDI note off, previously the only one supported by MidiConv was a NOTE_ON command with a volume of 0, and that is also the only thing that the Uzebox kernel supports.

This change simply transforms any ShortMessage.NOTE_OFF commands found in the MIDI stream to ShortMessage.NOTE_ON commands with a volume of 0 before converting them into the Uzebox format, so MIDIs exported by Rosegarden (an open source MIDI sequencer for Linux) are compatible with the note off command line flags supported in MidiConv.

This change also adds a powerful MIDI debugging aid named MessageInfo (written by IBM), to MidiConv, which is what I used to figure out why my NOTE_OFF commands had been getting ignored. To enable it, all you need to do is pass the -d flag when running it. For example:

Code: Select all

java -cp ~/uzebox/tools/JavaTools/dist/uzetools.jar org.uzebox.tools.converters.midi.MidiConvert -d -f 8.5 -no1 -no2 -no3 midisong.mid midisong.h
will print debugging information on the console, as it transforms the MIDI.