First post, by szevvy
Hey all,
I'm the author of Wombat, which is an asset extractor for a bunch of old DOS games - the full list is at https://szevvy.com
One area that my tool has always been less-good at is music. I support IMF (Monster Bash, Commander Keen etc) as it's just a stream of OPL3 instructions that I pump out to a NukedOPL dll and pull back in as raw audio data that can then be saved as a .wav
However, most of the games I handle use midi/ctmf/xmi, which are all midi-like. I'd like to be able to be able to do the same with these (get the full song back out as baked audio data).
I understand that most games that use these kinds of music have soundbanks, which I'm happy to handle. The bits that I don't know:
- Would OPL3 be a reasonable way to bake out midi-like data? If so, is there an example somewhere of how to convert MIDI data to data OPL3 emulation can handle? It's fine if it's specific to a particular file format, I can work the rest out. I'm assuming soundbanks from say a ctmf file are basically data that can be thrown directly at an OPL3 emulator and have it ready to go? I'm totally happy to write soundbank loading for each game that I support.
- If not OPL3, what's a better alternative? Is there an opensource library that I can build out to a dll and distribute with my program that would be better than OPL3 for this job?
- If the better solution is 'soundblaster emulation'...is there a default set of instruments that should be loaded in? Where can I see what those are?
Thanks in advance!