Author Topic: XMPlay MIDI plugin  (Read 711035 times)

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #125 on: 5 Oct '06 - 20:27 »
I'm trying to render some game soundtrack MIDI files with the Chorium soundfont to listen to on a portable mp3 player. Everything works fine but some of the MIDI files have no silent padding at the end to allow the instruments to decay and reverb in peace, instead the sound gets cut abruptly. Could there be a manual padding setting in the plug-in, or could the song be automatically given more time to finish smoothly when it's not silent by the time the file time line ends? A bit like the logic behind the track Auto loop function.

Yep, that sounds like a decent idea, so here's an update with a "Wait for ending to decay" option to try...

   www.un4seen.com/stuff/xmp-midi.dll

The only problem is that looping would be affected by the decay, ie. there'd be a gap. The plugin can't automatically decide whether to decay or not, as plugins don't know in advance whether XMPlay will ask them to loop. So an EXE update is also needed to rectify that...

   www.un4seen.com/stuff/xmplay.exe

raina

  • Posts: 1163
Re: XMPlay MIDI plugin
« Reply #126 on: 6 Oct '06 - 15:07 »
Just wow. Works great. There's a minor issue though, it seems if you disable this wonderful feature, there's no way of turning it back on. ;) I had to kill the XMPlay process so the setting wouldn't get saved or anything.

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #127 on: 7 Oct '06 - 13:32 »
Oops! Sorted now :)

   www.un4seen.com/stuff/xmp-midi.dll

Knurek

  • Posts: 535
Re: XMPlay MIDI plugin
« Reply #128 on: 10 Oct '06 - 15:34 »
Umm, I seem to have stumbled upon a bug. I had no problem with the Chorium soundfont, but since I've switched to SGM180 one someone mentioned here earlier (sounds even better, almost like a good module :P), ocassionally on the beginning of a track XMPlay skips for a little while. If I stop and restart the track, the problem's gone, so I strongly suspect it has something to do with caching the instruments... Is there anything that could be done about this?

It's completely random, so uploading examples is out of the question. Like I've said didn't happen at all with smaller soundfonts...

Fraggie

  • Posts: 713
Re: XMPlay MIDI plugin
« Reply #129 on: 10 Oct '06 - 18:15 »
Maybe you've got too little RAM installed? Maybe memory with the instruments loaded got paged to disk...

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #130 on: 10 Oct '06 - 18:58 »
The plugin doesn't actually preload the instruments to memory, it just loads them as they are needed (as seen in the Samples info text). I guess it could be an idea to add a preload option though, although that could mean a little extra delay at the start of playback. I'll look into it.

Knurek

  • Posts: 535
Re: XMPlay MIDI plugin
« Reply #131 on: 18 Oct '06 - 16:30 »
Ian, I've prepared a little XMI package, maybe you could support the format with it.

Included are:

XMIPlay, dos tool for playing XMI files (configured for standard GM passthrough, works fine with DOSBox, though you can change it to fit your soundcard).

Some MID2XMI converter (I didn't include XMI2MID, because this can be done by either Awave or in_midi.dll)

Music files from three games:

The Gene Machine (standard XMI files, GM compatible I guess)

Callahan's Crosstime Saloon (shows XMI pack (37 subsongs) - Winamp plugin can only play/convert the first subsong, I did MIDI conversion with AWave. Also GM compatible, as the name of the XMI file shows)

Card Players Paradise (this one uses non-standard instruments, mapped... somewhere, the Samples window should show where :). I've included the sample patch that was in the game, hope it will help somehow.)

The files are here: www.snesmusic.org/hoot/XMI.zip

The Miles Sound System driver which uses XMI data was used in assload of DOS games, so it would be real nice to have xmp-midi support them.

I'll try to find some examples of Human Machine (HMI/HMP) files later, if you'd be still interested in adding them.

Knurek

  • Posts: 535
Re: XMPlay MIDI plugin
« Reply #132 on: 24 Oct '06 - 18:04 »
Uh, also seems there's an MSS sound format (basically XMI file with merged DLS samples). There's a MIDI to XMI converter here: http://www.radgametools.com/down/MilesSndSys/MilesT32.exe

Hope that helps. :)

Also, I can provide some nifty MSS files if you'd be interested. Almost like modules. :)
« Last Edit: 24 Oct '06 - 18:19 by Knurek »

deus-ex

  • Posts: 288
Re: XMPlay MIDI plugin
« Reply #133 on: 25 Oct '06 - 10:31 »
Media Player Classic was spanked by RAD Game Tools once for providing support for their videoformats Bink and Smacker. Possible spank ahead... (though there are man who likes to be spanked. Ian?) ;D

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #134 on: 25 Oct '06 - 15:20 »
Only at weekends ;)

I guess there's no problem with XMI at least, as there seems to be a few bits of software that support it, including Winamp. If I can find the format specs somewhere, I'll look into it.

Simon Wallander

  • Guest
Re: XMPlay MIDI plugin
« Reply #135 on: 26 Oct '06 - 21:50 »
Wow! Soundfont-compatible synthesizer packed in 16KB! Sounds really great, but is it possible in XMPlay to create DSP configuration just for midis and use no DSP for rest of formats? I'm getting really annoyed, because i have to manually turn the reverb on always when i listen to midis, but formats like mp3 sound just awful with extra reverb added... I tried to put *.mid in "Saved settings" tab in options, with reverb on, and another wildcard config with reverb turned off for rest of files, but apparently it didn't understood that...

Sorry for my bad English BTW...

piovrauz

  • Posts: 1020
Re: XMPlay MIDI plugin
« Reply #136 on: 27 Oct '06 - 08:23 »
I'm for "separate" DSP for MIDI too, I'm experiencing same thing, and don't feel like setting a lot of presets...  ;)

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #137 on: 27 Oct '06 - 18:11 »
I guess an "Extension" saved settings option could be a good idea... I'll stick it on the list :)

Torkell

  • Posts: 1168
Re: XMPlay MIDI plugin
« Reply #138 on: 27 Oct '06 - 19:28 »
++Extension

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #139 on: 29 Oct '06 - 21:50 »
Regarding the "extension" settings option, here's an update to try...

   www.un4seen.com/stuff/xmplay.exe

CaitSith2

  • Posts: 11
Re: XMPlay MIDI plugin
« Reply #140 on: 30 Oct '06 - 09:48 »
Would it be possible to allow for a single soundfont file to be loaded automatically if present in the same directory as the midi files.         (This would be handy, for cases where a good set of midi files in one directory require a specific soundfont, besides the default loaded creative one, and that specific soundfont is common to all of the midi files.)

raina

  • Posts: 1163
Re: XMPlay MIDI plugin
« Reply #141 on: 30 Oct '06 - 09:51 »
I believe this already works for MIDI files and SoundFonts with the same file name. But yeah, it's not exactly the same and would require duplicates of the SF.

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #142 on: 30 Oct '06 - 12:20 »
I'm not sure loading any old SF2 that's in the same directory would be a good idea, as you'd have to be careful about where you keep your MIDI files to avoid using an unwanted SF2. But here's an update to try, with a "partial matches" option...

   www.un4seen.com/stuff/xmp-midi.dll

For example, if you have "blah.sf2", any MIDI file (in the same directory) starting with "blah" will use it.

Knurek

  • Posts: 535
Re: XMPlay MIDI plugin
« Reply #143 on: 30 Oct '06 - 16:07 »
I'm not sure loading any old SF2 that's in the same directory would be a good idea, as you'd have to be careful about where you keep your MIDI files to avoid using an unwanted SF2. But here's an update to try, with a "partial matches" option...

   www.un4seen.com/stuff/xmp-midi.dll

For example, if you have "blah.sf2", any MIDI file (in the same directory) starting with "blah" will use it.

Works like a charm, thank you for that (I do have a feeling that I know what CaitSith2's had in mind with his request :) ).

I take it that native DLS support is rather out of the question, considering the fileformat (at least for the level 2 specs) isn't free?

CaitSith2

  • Posts: 11
Re: XMPlay MIDI plugin
« Reply #144 on: 30 Oct '06 - 17:56 »
Not working for me at all.

Knurek

  • Posts: 535
Re: XMPlay MIDI plugin
« Reply #145 on: 30 Oct '06 - 18:27 »
Not working for me at all.

It's disabled at default, most probably you need to enable it in the plugin configuration.

CaitSith2

  • Posts: 11
Re: XMPlay MIDI plugin
« Reply #146 on: 31 Oct '06 - 04:42 »
Found something strange.  If the directory name is "blah something", and you have a sound font named "blah.sf2" in the directory containing the "blah something" directory,  All midis within that directory use that sound font, provided there is no overriding soundfont for the midi in that directory.  Was this intentional?  Kind of handy if it is.  (I came across this by accident, from not deleting a soundfont named "ma.sf2",  when I was trying to create a specific "BGM.sf2" in a directory contained within "magical starsign".)

(This should actually apply for full matches as well.  If directory is named "blah", and the sound font in the directory containing it is "blah.sf2",  then it should be considered an exact match in this case, rather than a partial match.)

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #147 on: 1 Nov '06 - 22:10 »
Found something strange.  If the directory name is "blah something", and you have a sound font named "blah.sf2" in the directory containing the "blah something" directory,  All midis within that directory use that sound font, provided there is no overriding soundfont for the midi in that directory.  Was this intentional?

Nope, that wasn't intentional - it's a bug :)

CaitSith2

  • Posts: 11
Re: XMPlay MIDI plugin
« Reply #148 on: 2 Nov '06 - 00:46 »
Here is an example of the "bug" being utilized.  http://ds.caitsith2.net/Club%20House%20Games.7z (Several mid sets, each in their own directories, and accessing a soundfont named the same as the directory.

Ian @ un4seen

  • Administrator
  • Posts: 26173
Re: XMPlay MIDI plugin
« Reply #149 on: 2 Nov '06 - 18:36 »
Here's a fixed version...

   www.un4seen.com/stuff/xmp-midi.dll

I left in the ability to have an SF2 file of the same name as the directory containg the MIDI, but stopped it regressing any further than that.

Btw, I noticed that your example files are pretty slow to load, due to it being a solid archive. So I've tweaked that a bit, and here's an updated 7-Zip plugin to try...

   www.un4seen.com/stuff/xmp-7z.dll