quattj's MIDI-MIS for Windows (MIDI Musical Instrument Switcher)

Joined
Apr 22, 2021
Messages
16
Reaction score
1
Introducing quattj's MIDI-MIS for Windows!

===================================================
| ]:eek:_ _o:[ |
| |O = The Master Cow’s MIDI Instrument Switcher = O| |
| |_o= =o_| |
===================================================

ABOUT
=====

This program is a passion project, providing functionality I have been unable to find in a good
(free) MIDI editor over the past lots and lots of years or so, give or take a few.

MIDI-MIS can be used to easily switch which instruments (programs) are played in a MIDI file.

Changes can be made to the selected instrument on one channel, an identical instrument across
all channels, or to the group of instruments that matched the selected instrument when the
file was first loaded.

Most standard MIDI files are supported (.mid, .midi Type 0, 1, 2), as well as karaoke files
that use the standard MIDI format (.kar). Files in extended MIDI formats (XG, GS) may or may
not be fully changeable, depending on the file. Instrument bank selection in a file will
remain unchanged - therefore, a file that uses bank selection may produce some unexpected
instrumentation results in the final file.

Non-musical MIDIs may also work (lighting controllers, etc) if they use the standard MIDI format
for the control scheme.

The program is currently in BETA, so please save a copy of your original files before editing.

It was written in GML (a C/C++ like programming language) using Game Maker Studio 2.

It currently runs only in Windows.

Contact me at quattj at yahoo . com with any questions, suggestions, or bugs.

It may be downloaded from

https://drive.google.com/drive/folders/114K2TuMGXu7w_vX-iBWI0Kf9RCb9wi6K?usp=sharing
 

Attachments

  • 01 MIDIMIS_Logo.png
    01 MIDIMIS_Logo.png
    8.8 KB · Views: 60
  • 02a DMED load.png
    02a DMED load.png
    92.7 KB · Views: 60
  • 03a DMED page.png
    03a DMED page.png
    85.1 KB · Views: 60
  • 04a DMED edit.png
    04a DMED edit.png
    114.2 KB · Views: 63
  • 05 DMED edit.png
    05 DMED edit.png
    114.9 KB · Views: 56
  • 06 DMED after.png
    06 DMED after.png
    93.7 KB · Views: 61

SeaGtGruff

I meant to play that note!
Moderator
Joined
Jun 6, 2014
Messages
4,147
Reaction score
1,780
Is this something you plan on selling, or will it be a free utility?
 
Joined
Apr 22, 2021
Messages
16
Reaction score
1
It depends on the reception it gets, and if there's enough interest. Currently, I'm the only one who has used it. I have a few features that I'd like to add eventually, including bank selection and presets. Donations welcome ;)
 
Joined
Apr 22, 2021
Messages
16
Reaction score
1
I've been working on it since the initial release. I downloaded tons more publicly available MIDI files for testing. I found and fixed several bugs, and am in the process of:

- Adding complete bank support (a doozy!)
- Adding SYSEX reset switching (for example, original file was clearly made on a Roland GS device, but the file is saved as GM)
- Adding missing program changes to files with none (track has notes, no program change)

- Now has a preview option to load the current file in your default midi player
- Supports percussion on all channels (custom per midi file format)
- Now has track name display

This version is not complete yet. However, I wanted to share some progress screenshots. The initial release took about a month to make. This version has been in development since then (about 5 additional weeks so far). I am hoping to find a few people willing to test it out (besides myself) when it is complete.

1 - XG file loaded
2 - Editing instrument via menu
3 - XG file reloaded as forced GM
4 - XG file reloaded as forced GS
5 - Editing percussion via menu
6 - XG SFX channel
 

Attachments

  • 01 - Loaded.png
    01 - Loaded.png
    87.9 KB · Views: 50
  • 02 - Edit W Bank.png
    02 - Edit W Bank.png
    102 KB · Views: 51
  • 03 - Reload GM.png
    03 - Reload GM.png
    96.6 KB · Views: 51
  • 04 - Reload GS.png
    04 - Reload GS.png
    72.7 KB · Views: 51
  • 05 - Percussion Sets.png
    05 - Percussion Sets.png
    171.7 KB · Views: 49
  • 06 - XG SFX.png
    06 - XG SFX.png
    77.9 KB · Views: 48

happyrat1

Destroyer of Eardrums!!!
Joined
May 30, 2012
Messages
14,235
Reaction score
5,723
Location
GTA, Canada
Have you considered porting this over to WXPython so it could run on EVERY platform?

Not some proprietary Windows Interpreted language?

Gary ;)
 
Joined
Apr 22, 2021
Messages
16
Reaction score
1
Have you considered porting this over to WXPython so it could run on EVERY platform?

Not some proprietary Windows Interpreted language?

Gary ;)

I'm not a "programmer" per se, as much as I do some programming. I've never used python, wouldn't know where to begin. :p

As is, with a few extra lines of code I should be able to compile it for Windows, MacOS, and Linix, (I might also still have Html5 output ability?) though I have no way of testing non-windows versions. Game Maker Studio is cross-platform, so technically if someone had the other format outputs in their license, it might be usable on others as well (android, IOS, I think a few others).

Alternately, when it's complete if someone wishes to attempt porting it, I could potentially be persuaded to supply the source code. It's written in GML, a C++-like language. But that's still a little way away. ;)
 

happyrat1

Destroyer of Eardrums!!!
Joined
May 30, 2012
Messages
14,235
Reaction score
5,723
Location
GTA, Canada
If the Game Language is already cross platform then chances are the compiler is written in Python already.

If you need a Linux Beta tester, I'll happily volunteer. :)

Gary ;)
 

happyrat1

Destroyer of Eardrums!!!
Joined
May 30, 2012
Messages
14,235
Reaction score
5,723
Location
GTA, Canada
Actually if GML is C++ like, then it's probably written in C++ using the WXwidgets toolkit.

That would mean that GML is probably already available as a Linux port.

Either way, I repeat, I'm volunteering for the Linux Beta Versions.

:D

Gary ;)
 

happyrat1

Destroyer of Eardrums!!!
Joined
May 30, 2012
Messages
14,235
Reaction score
5,723
Location
GTA, Canada
Sorry. Take my name off of the Beta List. I researched GMS2 and found out it's demo software unless you pay for it..

That's totally against my religion :D :D :D

I'll stick with open source WXpython thanks :)

Gary ;)
 
Joined
Apr 22, 2021
Messages
16
Reaction score
1
Sorry. Take my name off of the Beta List. I researched GMS2 and found out it's demo software unless you pay for it..

That's totally against my religion :D :D :D

I'll stick with open source WXpython thanks :)

Gary ;)

Haha, well, *I* have the paid license, and am developing it. You wouldn't need Game Maker at all, just test it and tell me if anything is amiss. That being said, my compile options are Windows, macOS, Ubuntu, and HTML5. My brother can do the compile for macOS. I can do HTML5 without anything extra (but I'd have to work around file access limitations of HTML5, currently file loading doesn't work, so there's that...). Apparently I need to set up Ubuntu on a separate machine for the compiling threads for Ubuntu. So maybe after it's fully done...

I originally considered using Visual Studio and doing straight C++/C#, but got frustrated with that pretty quickly.
 

happyrat1

Destroyer of Eardrums!!!
Joined
May 30, 2012
Messages
14,235
Reaction score
5,723
Location
GTA, Canada
I'd suggest setting up a Virtualbox Ubuntu installation on your machine. I use one for occasions when I absolutely must run Windozer but it can be a pain for time sensitive applications like MIDI sequencing.

Otherwise, however, it does behave pretty much as it should.

If you can compile for Ubuntu without creating a dependency hell though, then I'd still be interested in doing your beta test.

Gary ;)
 
Joined
Apr 22, 2021
Messages
16
Reaction score
1
I have the current Windows work in progress versions of this available for download on my Google drive. *Perpetual WIP.

See the included release notes for current version info. My main focus has been on the GS portion since getting most things to work properly, so some functionality may be lacking for XG (mostly to do with custom naming schemes and file SYSEX type conversion (GM -> GS and XG -> GS are implemented, but not the other way around). I use this for editing my instruments in my SNES MIDI Remaster Project I am working on.


 

Attachments

  • 05a - Hyrule Castle.png
    05a - Hyrule Castle.png
    75.9 KB · Views: 10
  • 05a - Hyrule Castle2.png
    05a - Hyrule Castle2.png
    207.2 KB · Views: 10
Joined
Apr 22, 2021
Messages
16
Reaction score
1
3 years have passed since this thread opened.

Is the software still relevant?
Of course :) Still working on it (when I need to, like I found another bug today that I need to track down and fix), and I use it every day to edit my MIDI project files. Every file in the SNES MIDI Remaster Project (~3000 MIDI files from start to finish thus far) has passed through MIDI-MIS many many times on the way to the final product. That's with about 6.5 of the 30 or so soundtracks complete. My most recent version is from Jan 4 2024, shiny and new! If it wouldn't be relevant in such a short time I wouldn't have spent my time making it ;)

Much further along than from when I originally posted, it can now also change note pitch of any/all instruments, has custom instrument names support (to match your MIDI device, sample files included for the 5 main soundfonts that I use), and other stuff I'm sure to be forgetting. My main goal was to simply be able to change the instruments in GM MIDI files, but it branched out to cover all three main formats, and I add other random features as I come across the need for them when editing.

It will always be relevant as long as I am, or someone else is, still using it 😁
 
Last edited:
Joined
Apr 22, 2021
Messages
16
Reaction score
1
If you are interested to see it in (very fast 24x speed) action, you can check out my 46 hour time-lapse from my latest project. Current version 20240213.

 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
14,399
Messages
89,673
Members
13,349
Latest member
jsfmedida

Latest Threads

Top