View Issue Details

IDProjectCategoryView StatusLast Update
0000124OpenMPTFile Format Supportpublic2016-08-16 23:25
ReporterCassualboy Assigned ToSaga Musix  
PrioritynormalSeverityminorReproducibilityunable to reproduce
Status resolvedResolutionfixed 
Platformx86OSWindowsOS VersionXP
Product VersionOpenMPT (upgrade first) 
Target VersionOpenMPT / libopenmpt 0.3.1 (upgrade first)Fixed in VersionOpenMPT / libopenmpt 0.3.1 (upgrade first) 
Summary0000124: Different Result While Converting MIDI to IT

I try to converting my MIDI to Impulse Tracker format, but the IT output has different sound from the MIDI input.

Steps To Reproduce
  1. Start OpenMPT; 2.Open; 3. Choose my MIDI file 4. Compatibility Export.
Additional Information

I attach these files, so I hope you can analyze what my problem was.

TagsNo tags attached.
Attached Files (124,585 bytes)
Has the bug occurred in previous versions?Yes
Tested code revision (in case you know it)


has duplicate 0000744 closed Inaccurate MIDI Import 
related to 0000418 closed MIDI Import makes wrong Events in the Pattern. They are not in time. 
related to 0000261 closed missing instruments on imported midi 
related to 0000462 resolvedSaga Musix MIDI Import: channels mashed up regarding drums 


Saga Musix

Saga Musix

2011-05-05 13:53

administrator   ~0000190

Well, this is a well-known limitation; Module formats and MIDI don't have very much in common so the conversion can never be exact. The MIDI import code will probably be rewritten and improved at some point, but don't ask me when that will be.



2011-05-05 18:57

reporter   ~0000191

Thank you for your attention. I would really wait for further developments.

Ryan Albano

Ryan Albano

2016-01-29 16:21

reporter   ~0002240

I have to agree with him here. MIDI import's been a problem with the tracker ever since I've used it.
I think you could make 'Note Delay' more fine and possibly add a 'Note Boost' or something that allows notes to jump in ahead of time also.
I think that would do it, at least for the timing issue--which seems to be the most serious issue by far.

Saga Musix

Saga Musix

2016-01-29 16:34

administrator   ~0002241

The timing issue cannot / should not be resolved by note delays; the problem at hand is a completely different one, described in the thread that also gives you a tool to fix your MIDI files to be imported more nicely into OpenMPT:

Saga Musix

Saga Musix

2016-08-10 00:35

administrator   ~0002587

r6840 introduces the long-awaited fixes for MIDI import. It will be up at within the next few hours, so please try it and see if you can spot any MIDI files that still sound very broken.



2016-08-15 03:17

reporter   ~0002603

Wow. Finally, the long awaited features is come.
Thank you very much for the fix, Saga. It makes me almost cry when know about this.

Just a little more request before you release the 1.27 version.
Please translate the CC#111 event in MIDI file as a loop point in the resulting module. The CC#111 event is not a standard way for MIDI loop, because unlike module, there is no such thing as loop point in MIDI, but it seems a standard way for looping MIDI in some Japanese software, especially RPG Maker game engine. The other software known to support CC#111 MIDI loop are Sekaiju, Foobar2000, and smfplayer.js.

I understand that we can manually add loop point later after conversion, but it can save huge time if it can be done automatically, especially if we have large collection of looped MIDI that needs to be converted to module file.

For reference I attached a sample of looped MIDI file (try Sekaiju to play its loop point). This MIDI file has CC# 111 event and will play from beginning for the first time, but will loop to the loop point after it reach the end, without starting again from the beginning, therefore the game music can be played infinitely.

Best regards,
RyanBram (2,904 bytes)
Saga Musix

Saga Musix

2016-08-15 11:36

administrator   ~0002604

I know about CC#111 but I did so far not implement it because it would conflict with e.g. how Doom supposedly used the CC. I will think about it though.

Saga Musix

Saga Musix

2016-08-16 23:25

administrator   ~0002609

Implemented in r6892.

Issue History

Date Modified Username Field Change
2011-05-05 07:32 Cassualboy New Issue
2011-05-05 07:32 Cassualboy File Added:
2011-05-05 13:53 Saga Musix Note Added: 0000190
2011-05-05 18:57 Cassualboy Note Added: 0000191
2013-06-30 12:18 Saga Musix Relationship added related to 0000418
2013-06-30 12:18 Saga Musix Relationship added related to 0000261
2015-06-26 23:41 Saga Musix Relationship added related to 0000462
2016-01-24 14:31 Saga Musix Relationship added has duplicate 0000744
2016-01-29 16:21 Ryan Albano Note Added: 0002240
2016-01-29 16:34 Saga Musix Note Added: 0002241
2016-08-10 00:35 Saga Musix Assigned To => Saga Musix
2016-08-10 00:35 Saga Musix Status new => feedback
2016-08-10 00:35 Saga Musix Target Version => OpenMPT / libopenmpt 0.3.1 (upgrade first)
2016-08-10 00:35 Saga Musix Note Added: 0002587
2016-08-15 03:17 Cassualboy File Added:
2016-08-15 03:17 Cassualboy Note Added: 0002603
2016-08-15 03:17 Cassualboy Status feedback => assigned
2016-08-15 11:36 Saga Musix Note Added: 0002604
2016-08-16 23:25 Saga Musix Status assigned => resolved
2016-08-16 23:25 Saga Musix Resolution open => fixed
2016-08-16 23:25 Saga Musix Fixed in Version => OpenMPT / libopenmpt 0.3.1 (upgrade first)
2016-08-16 23:25 Saga Musix Note Added: 0002609