Hello!
You just can edit your MIDI's to fit them into ADLMIDI synthesiser:
(I always editing my MIDI's to make beutiful sound on specific synthesisers. And my favorite fun is random changing instruments to take a new sound of same music, etc.)
My notes for you:
1) ADLMIDI is NOT sound font-bases synthesiser, it's
OPL-Synth (a.k.a. Frequency Modulation Synthesiser based on Yamaha OPL3 chip) emulation which working on ADLMIDI code.
FM Synthesis is a GENERATION OF SOUND FROM SCRATCH BY FORMULAS!2) ADLMIDI has 67 various hardcoded FM banks from various DOS games and some extra others. By default working a bank #58 which is same as hardcoded in Windows 95/98 drivers for Sound Blaster sound cards. But I think, bank #59 would sound much better, but in some cases need to fix octaves in tracks (I'll try to fix octaves in banks to avoid those edits)
3) ADLMIDI alone library which supports internal loops
4) You always can edit your MIDI file (change instruments into any others to take best sound) in any MIDI editor which you like (for example, simple and free is
http://midieditor.sourceforge.net/, but if you looking for professional and advanced things, I suggesting a Cakewalk Sonar, but you even can use FL Studio, but with important note: you must re-save FL-Studio saved midi-files via MIDI-Editor tool, because FL Studio making MIDI files with a wrong tempo format, therefore saved by FL Studio MIDI Files will be played with a wrong tempo).
Don't forget that you always can pre-listen your midi files in
PGE MusPlay tool (included with latest PGE package, I recomend you to take it from laboratory).
- My small gift for you:
- Also, if you wish prelisten every instrument, you can take this collection of test MIDI's:
http://wohlsoft.ru/docs/Music/MIDI/MIDITEST.zip
every MIDI file tests one of 128 various instruments available in GM (General MIDI) standard. XG/GS standards are gives exchanged things, but there are available only on professional hardware (as alternate you can look up for a software Yamaha XG which you can use for a fun, BUT, it works on 98/2000/XP, on Windows 7 troubles are possible with it!)
Current SMBX 1.4.2 uses my 'SDL Mixer X' library which has three built-in synthesisers:
-
ADLMIDI - FM-Synth emulation based synthesiser. Has 67 various FM banks with different sounds. Has a support of loopStart/loopEnd tags with a true loop (examples of those MIDI's are MIDI's from Final Fantasy VII - there are used this trick first time).
-
Timidity - WaveTable synthesiser which uses banks in GUS format (Awave Studio - example of a tool which can create and edit those files). With PGE (Editor, Engine, Musplay) you can use one of those banks if you will extract them into PGE directory:
http://wohlsoft.ru/docs/Music/Timididy_banks/ . With SMBX 1.4 there are will not work until 5438A38A will not call a function to add custom timidity banks path to allow looking for timidity banks from app directory. Alternate way - C:\Timidity folder, but it's not good way.
-
Native Midi - use built-in synthesiser on your operating system (Windows, Mac OS X, haiku, etc.)
ADLMIDI using in SMBX 1.4.2 by default because ability to toggle synthesiser is not implemented yet in SDL Mixer X (that possible with Mix_setMidiDevice function of SDL Mixer X library API), BUT, I planned to implement ability to toggle synthesiser and it's preferences by same way like you toggling NSF tracks in the custom music field. So, wait my update and then will be possible to define synthesiser preferences per every MIDI File individually (use ADLMIDI for looped songs and for songs which are sounds perfectly and beutifully on it, toggle another bank for another MIDI's or use timidity for other songs and native midi (be sure that on platforms where is no built-in MIDI output devices or has no configured it, recent worked synthesiser will be used instead) ),
Timidity and Native MIDI are not supports loopStart/loopEnd, so, your whole MIDI File will be looped.