XMPlay MIDI plugin

Started by Ian @ un4seen, 9 Mar '06 - 17:04

saga

Random thought: Maybe the window is positioned off-screen? Do you use GetWindowPlacement / SetWindowPlacement for retrieving the window position? Other APIs may not fully guard against off-screen placement.

winner

Quote from: saga on 30 Jan '17 - 17:33Random thought: Maybe the window is positioned off-screen? Do you use GetWindowPlacement / SetWindowPlacement for retrieving the window position? Other APIs may not fully guard against off-screen placement.
It is possible the midi mixer window somehow got positioned off-screen. Previously I had two monitors on my computer. Ian, I do not see a midi-mixer shortcut in XMPlay's shortcut listing.

deus-ex

The XMPlay.ini entry MixerPos controls where the mixer dialogue appears on screen. Either set it to MixerPos=0000000000000000 to have the mixer positioned at the top left corner, or remove this entry completely. It gets recreated/updated upon each call of the mixer.

Alternatively you can rename your current XMPlay.ini (e.g. XMPlay.ini.bak) to keep your current settings and run XMPlay, which will autocreate a fresh ini file which should fix the mixer positioning issue, too. Then you can reincorporate the settings from your backup ini file.

Ian @ un4seen

Yep, you can remove the "MixerPos" line from your XMPLAY.INI file to reset the mixer window's position.

winner

Quote from: deus-ex on  2 Feb '17 - 13:29The XMPlay.ini entry MixerPos controls where the mixer dialogue appears on screen. Either set it to MixerPos=0000000000000000 to have the mixer positioned at the top left corner, or remove this entry completely. It gets recreated/updated upon each call of the mixer.

Alternatively you can rename your current XMPlay.ini (e.g. XMPlay.ini.bak) to keep your current settings and run XMPlay, which will autocreate a fresh ini file which should fix the mixer positioning issue, too. Then you can reincorporate the settings from your backup ini file.
Thanks!! Removing the MixerPos entry fixed the issue!

Knurek

Is the 'Check for soundfont of the same name as the MIDI file' option broken? It used to work for me, but now it doesn't seem to load anything other than the default soundfonts.
I have B01.mid and B01.sf2 in the same folder, loading the midi file in foobar's Bassmidi player loads the instruments from B01.sf2, but with xmp-midi, it does only load them from the default soundbanks.
I have all three options relating to it checked in the plugin's config dialog.

Lemme know if you want me to upload some samples...

Ian @ un4seen

It seems to still be working fine here, so please do upload the files that you're having the problem with:

   ftp.un4seen.com/incoming/

Also confirm that you're using the latest MIDI plugin version.

Knurek

Weirdest thing happened - I rechecked all three options, restarted my computer in the mean time, and now the soundfonts get loaded.
May just have been some fluke with .ini? Either way, will let you know if it happens again, in the mean time no need to bother with it.

KillerQ13

Revision 15 appears to be loading the drum banks incorrectly (worked in 14).  I have a base SoundFont loaded with another one overriding the drum banks but the override loads the regular instruments instead of drums.  Right now I'm hearing gun shots instead of MT-32 drums. :P The first two drum sets (preset 0 and 1) seem to load as intended but the rest is regular instruments.

KillerQ13


Ian @ un4seen

Please upload your soundfont config (use "Export" option in MIDI config window) and the soundfonts, along with a test MIDI file to reproduce the problem with here:

   ftp.un4seen.com/incoming/

PSXGamerPro1

Sorry about this, but it seems that the MIDI plugin does not support DLS format soundfonts.

Any way to somehow add support for loading the DLS ones if no sf2, sf2pack, or sfz or whatever is not found?

Ian @ un4seen

Yup, the MIDI plugin doesn't support the DLS format. If there's a DLS soundfont that you would like to use, you could convert it to SF2 format with Viena.

brycco

#938
This SFZ (100mb) doesn't seem to want to load, gives this error:

---------------------------
Missing samples
---------------------------
The following samples can't be found/loaded:

C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-01.ogg
C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-02.ogg
C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-03.ogg
C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-04.ogg
...

The paths are valid - is OGG not supported?

This one also seems to not work, the samples are inaudible: https://www.pianobook.co.uk/library/church-steinway/


Here's the SFZ files for both:

https://pastebin.com/yvrZy59s (Binaural Upright Piano)
https://pastebin.com/dJCNbEJ6 (Church Steinway)

This one has a same problem as Church Steinway... loop/starting positions in wav must be not read properly. It's rather large but a good piano sound: https://www.pianobook.co.uk/library/the-9000ft-piano/

Ian @ un4seen

Quote from: brycco on 18 May '20 - 03:07This SFZ (100mb) doesn't seem to want to load, gives this error:

---------------------------
Missing samples
---------------------------
The following samples can't be found/loaded:

C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-01.ogg
C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-02.ogg
C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-03.ogg
C:\SFZ\Binaural Upright Piano Ver 1.1\SFZ\Samples\NorSus\NorSus-04.ogg
...

The paths are valid - is OGG not supported?

OGG samples indeed currently aren't supported by the MIDI plugin, unfortunately. The reason for that is that plugins don't have access to XMPlay's built-in decoders, so the MIDI plugin would need to include its own Ogg Vorbis decoder for them. The FLAC/WV/OPUS/MPC plugins do give access to their decoders, so samples in those formats can be used with the MIDI plugin.

Quote from: brycco on 18 May '20 - 03:07This one also seems to not work, the samples are inaudible: https://www.pianobook.co.uk/library/church-steinway/

That is working here (it is pretty quiet though). Make sure you put the SFZ file in the "Instruments" folder.

Quote from: brycco on 18 May '20 - 03:07This one has a same problem as Church Steinway... loop/starting positions in wav must be not read properly. It's rather large but a good piano sound: https://www.pianobook.co.uk/library/the-9000ft-piano/

This one is working too (SFZ file in "The 9000ft PIANO" folder), or at least making sound. Notes sound choppy with both these SFZ files though - I'll look into that.

brycco

Strange, here is a short MIDI file and two OPUS files showing how they sound using the two SFZ files. I also tried moving the .SFZ into the Instruments folder (I simply created a SFZ folder previously). It does find the samples, it just seems to play the wrong slices of them. I'm using rev.16a of the plugin and xmplay 3.8.3.4.

Ian @ un4seen

When you said they were "inaudible", I thought you meant there was no sound at all, so figured you may have put the SFZ file in the wrong place. Anyway, these SFZ files are working properly with the latest BASSMIDI build, so the problem has apparently been fixed and that just needs to be copied to the XMPlay MIDI plugin. I say "just" but there have actually been quite a lot of changes. I will try to get that done this week.

Ian @ un4seen

Here's an updated MIDI plugin that should work properly with those 2 SFZ files:

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

Let me know if you still see any problems.

Regarding OGG samples, a Vorbis decoder was recently added to the OPUS plugin for WEBM files, and it may be possible to extend that to handle Ogg Vorbis samples for the MIDI plugin too. I'll look into it.

winner

Hi all,

I just wanted to put a word in for a soundfont I've been using lately with XMPlay, which has become my favorite single GM/GS soundfont.

Over the past several years I've been experimenting with complex soundfont layers and instrument selections in order to obtain satisfactory overall GM/GS rendering and compatibility. The footprint of attached soundfonts has been up to several gigabytes in size. This has been an interesting hobby. But recently I sort of lost my midi configuration and decided to search again for a soundfont to start with.

Eventually I happened upon the WBS Reality 100MB soundfont.

I believe I had downloaded this soundfont before, but probably hadn't tested it thoroughly. I have now tested this single soundfont on many of the midi music files and styles that I have, from classical to carousel to rock to TV and movie. In all cases I have not heard a glaring omission of instruments or bad samples. Sound effects are included, which are important for songs like Ghost Busters and Thriller.

In order to manage volume across all played music, I am using the dynamic volume amplification provided by XMPlay, in combination with a volume equalizer hosted with the VST Host DSP 1.1.6 for Winamp plugin.

I don't know if I'll need to enhance my soundfont configuration anymore. Until I find a problem, I'll be happy to leave the WBS Reality 100MB soundfont as my single default soundfont.

So if you too have been looking for a good GM/GS soundfont, I highly recommend this one!

Maestrobob

Hello, is there a way to set a soundfont to a single drum preset that's not 000?

For example, I have two soundfonts in bank 000, which also show up in d000. Preset 000 in d000 shows properly as "Standard" drum kit for soundfont 1, however when I set drum preset 001 to use soundfont 2, it displays instrumental presets (Piano 1) instead of "Standard".

Is this a bug/limitation or am I missing something?

-Rob

Ian @ un4seen

When a soundfont is assigned to a specific preset and the soundfont does not contain that preset, then the MIDI plugin will use the first preset from the soundfont. Here's an update for you to try, which should use the soundfont's first drum preset if it's a drum preset that's being assigned:

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

Note when I say "first preset", I mean whichever preset happens to be defined first in the soundfont, not necessarily the first numerically. So you might still not get the "Standard" drum kit in your case (if that isn't the first one in the soundfont).

Maestrobob

Quote from: Ian @ un4seen on  6 Jul '20 - 16:52When a soundfont is assigned to a specific preset and the soundfont does not contain that preset, then the MIDI plugin will use the first preset from the soundfont. Here's an update for you to try, which should use the soundfont's first drum preset if it's a drum preset that's being assigned:

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

Note when I say "first preset", I mean whichever preset happens to be defined first in the soundfont, not necessarily the first numerically. So you might still not get the "Standard" drum kit in your case (if that isn't the first one in the soundfont).

That makes sense. After messing around a bit more, I found the problem in the soundfont itself using Viena (the presets were fine, but the some of the samples were missing) and now it's working perfectly. Thank you so much for the quick response and updated .dll (which works fine btw)!

Maestrobob

#947
So I'm using the MIDI plugin to play .xmi from an old game that used EMU8K soundfont (Everquest). I've patched the synthusr.sf2 so that the inherited rom samples from 1MGM are fixed, but it seems like some of the controllers aren't playing back properly - most notably mod. wheel CC01 doesn't seem to work at all.

I know Creative cards use a custom NRPN for certain effects, but isn't CC01 a standard MIDI controller mapping? Or maybe it's the way EMU8K LFO works that's not implemented? I could be completely mistaken.

Ian @ un4seen

If CC1 is having no vibrato effect, it could be that has been disabled in the MIDI file via RPN 5 (or GM2/GS/XG sysex), or possibly disabled by the vibrato LFO settings in the soundfont. Is CC1 having any effect with other MIDI files?

Maestrobob

#949
Quote from: Ian @ un4seen on 27 Jul '20 - 16:47If CC1 is having no vibrato effect, it could be that has been disabled in the MIDI file via RPN 5 (or GM2/GS/XG sysex), or possibly disabled by the vibrato LFO settings in the soundfont. Is CC1 having any effect with other MIDI files?
Thanks for the reply, Ian.

It does work with a different soundfont loaded (tried it with an SC-55 sf2) using the same MIDI file. I also created a single channel MIDI that tests CC1 explicitly. What's weird is I can load synthusr.sf2 into Vienna Soundfont Studio or into an Audigy Rx bank and CC1 works as expected. I am not sure what is going on that's so different. From what I can tell, both sf2s have mod wheel assigned to vibLfoToPitch in the same way.

Edit: I was able to find the problem - The sf2 was limiting VibLFOFreq to 0.001hz per individual instrument sample, even though the instrument global was set to the correct value.