Originally posted by MrMrMANGOMILK
Just make sure your MIDI is exactly correct with its note lengths. PetiteMM is quite picky about what it actually converts, and the formatting is all wrong for some reason, so you'll have to fix it manually.
I didn't do a thorough test (in case it's lenient) but you should probably make certain of these 3 things.
1. Your channels are numbered 1-8.... ideally
2. Channels are monophonic. Don't include chords, remove them. I cannot attest to the behavior of chords but it'll likely use one of the two notes. Not by random but consistently the top/bottom.
3. Don't use more than 64th notes when each beat is a quarter note.
There are command-line parameters to making PetiteMM behave "better."
java -jar PetiteMM.jar --dots 1 --octave-reverse myMidi.mid
--dots 1 will limit the amount of dotted dotted notes to 1. Example is you might have a note that looks like this
Using --dots 1 generally looks nicer. Apparently the program outputs the wrong octaves which is why we add --octave-reverse. You can also adjust the timebase which can effect the mml output. If the midi's tempo is too fast you won't be able to get the MML to proper speeds, thus using a higher timebase can change a c4 to a c8 effectively halving your required tempo.
I think it's good to write code by hand but it seems the program, PetiteMM, gets way too much negative flack.