Incorrect interpretation of old/exotic midi files

Started by Grandbuldozer, June 20, 2024, 07:40:14

Previous topic - Next topic

Grandbuldozer

First off, I should clarify that this isn't an issue that's exclusive to ModPlug, as I encountered it in a number of midi related programs.
It mainly concerns older midi files, which were usually made with exotic software or extracted from midi centric hardware like the Roland SC-88.
The current version of FB2K's MIDI Player seems to read most of those files properly. On Android Droidsound-E had this exact issue with its older builds.
I included an example midi file, as-well as a lossy converted fragment of how it was supposed to be be interpreted (using the SC-55 EmperorGrieferus SF).
P.S. I was unsure whether this should've been qualified as a bug report or a feature request, since the midi interpreter of ModPlug is a secondary feature the adjustment of which might not be considered as important; Hence the creation of this thread.

Saga Musix

I think the main issue here is that the MIDI file uses two output ports to double the number of channels. It's not really an exotic feature - it's a well-defined part of the SMF specification - but it's not used a lot, so there was no priority for implementing it. I have a half-finished implementation somewhere, I'll see if I can finish that.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

Grandbuldozer

Much appreciated. Hope to see this feature finally implemented one day.

Saga Musix

There wasn't much left to do, so the next version of OpenMPT should play this track in a better way.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.