VOGONS


Reply 1120 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Meowdori wrote on 2020-09-25, 02:45:

Small feature request i guess, but it would be nice if it was possible to deregister FSMP as the keyboard media keys' handler in the OS, so that i could control an external player sending MIDI to it instead. I have a feeling that this might already be implemented but i can't find it for the life of me 🤣

Hi, you can disable registering global multimedia keys either in the registry or in midiplayer.ini file depending on the setting of Main menu -> Storage of Settings (Store settings in registry/Store settings in INI file).
In both cases the key name is GlobalMMkeys and you should set its value to 0 (zero). Registry settings can be found in HKCU\Software\falcosoft\MidiPlayer. MidiPlayer.ini can be found always in the same folder as the main executable (midiplayer.exe) if 'Store settings in INI file' is the active option for storage.

@Edit:
I have made a new menu entry for this option under Main menu->Compatibility Settings. I do not remember clearly why I skipped creating a menu entry for this option before but the reason could have been that you cannot change this setting real-time so you have to restart MidiPlayer for the changes to take effect:
http://falcosoft.hu/midiplayer_58_test.zip

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1121 of 1699, by Meowdori

User metadata
Rank Newbie
Rank
Newbie

First off, thank you very much for the info and for implementing it as a menu option! <3

Second (it's gonna be a long one) this is more of just my rambling than anything else, and it might or might not be related to FSMP, since it's something hard to debug.

For some time i've been noticing weird issues while playing MIDI (specifically XG stuff) from external player software like MIDITrail or WinAmp, with FSMP running in the background as a host for Yamaha S-YXG50 and listening on software MIDI input.

After playing a certain amount of tracks, the sound starts deviating from correct in weird ways - pitch bends sound wrong, resonance strength sounds incorrect on some instruments, some instruments have bends when they shouldn't, and very often the synth stops reacting correctly to the volume fadeout messages at the end of the song, so the track is likely to just end abruptly, etc.

My first thought was that maybe it's the S-YXG50 itself entering an inconsistent state either as a result of the songs not sending proper XG reset or an internal bug in the software.

I wanted to exclude or confirm that possibility so i started sending an XG Reset between songs either by pressing Stop button in FSMP window or explicitly going to the Send Custom SysEx menu and sending an XG reset (even cycling through other resets like GM and GS before sending the final XG in hope for a more thorough synth state flush)

That didn't seem to have helped much, neither did stopping the VST and starting it again in the VST window do anything, so i restarted the entire FSMP, which finally did the job.

The weirdness about the whole thing is that the playback in the FSMP itself doesn't seem to be affected, and songs play correctly from its own playlist even after a long period of time. It only seems to be happening if FSMP is listening to MIDI input from other software.

I considered the possibity of loopMIDI being buggy, but the issue disappears for some time after restarting the FSMP as i mentioned before, so this probably rules out loopMIDI as the potential culprit. I would need to conduct some tests with MIDI Yoke as the piping software instead.

I'd be interested to hear if anyone else ever experienced similar kinds of issues as these, which hopefully would help to narrow the problem down to the root cause, since it's really frustrating, especially if i want to do a lengthy YouTube recording of MIDIs.

Here's some details about my configuration:

  • Windows 8.1 64bit Basic Edition
  • FSMP v5.7 32bit (32 bit required to host S-YXG50 which itself is 32bit)
  • loopMIDI v1.0.16 (27)
  • MIDITrail 1.2.3 both 32- and 64bit tested
  • WinAmp 2.91
  • Receiving SysEx enabled in FSMP for MIDI Input
  • Players send SysEx correctly (confirmed with MIDIOX monitor)
  • FSMP forced to run on single CPU core (enabled in options)
  • "Apply Controls to MIDI In" disabled in options
  • "Set Missing Default Patches" enabled

Reply 1122 of 1699, by Meowdori

User metadata
Rank Newbie
Rank
Newbie

Another interesting thing just happened very much on accident - i was playing a MIDI from MIDITrail while i accidentally triggered FSMP via keyboard media button, which started playing XGroove.mid from its own playlist. I stopped MIDITrail first while XGroove continued to play erroneously (which was to be expected due to earlier mixup of MIDI data from FSMP and MIDI Input coming at the same time).

But I decided to stop and replay the XGroove again.

And to my surprise it sounded wrong this time as well, despite a fresh XG reset having been sent, which really brings me back to thinking it might be an internal issue with the Yamaha SoftSynth not being able to recover correctly. Restarting the entire FSMP restored the normal behaviour.

I really wonder why pressing the VST Stop button (as in this picture https://i.imgur.com/3dTjBby.png) and then restarting the VST does nothing though. Does it only halt the plugin, remembering its memory state instead of truly restarting?

I'm attaching the recording of the affected song as it sounded before i restarted FSMP

Attachments

  • Filename
    XGroove_erroneous.ogg
    File size
    2.95 MiB
    Downloads
    66 downloads
    File comment
    Direct FSMP recording
    File license
    Fair use/fair dealing exception
Last edited by Meowdori on 2020-09-26, 00:25. Edited 1 time in total.

Reply 1123 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Meowdori wrote on 2020-09-25, 20:50:

I really wonder why pressing the VST Stop button (as in this picture https://i.imgur.com/3dTjBby.png) and then restarting the VST does nothing though. Does it only halt the plugin, remembering its memory state instead of truly restarting?

You should wait for at least 5 seconds before pressing the play button again. It's because unloading and loading the plugin's dll itself is not without risk so it does not happen immediately. Not to mention that there are plugins that cannot be unloaded completely (or even crash when you try to load/unload them repeatedly).
Earlier there was a more obvious feedback about this behavior as you can see in this video but later it has been shortened (lack of space) :
https://youtu.be/mzZhhLXG0kk?t=50

You can also test with a different VSTi plugin to determine if it is S-YXG50 specific problem or not.

BTW since you missed to attach the original Midi file your recording did not help much 😀

Last edited by Falcosoft on 2020-09-26, 08:07. Edited 1 time in total.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1124 of 1699, by Meowdori

User metadata
Rank Newbie
Rank
Newbie

I might have tried to reload the VST a bit too fast then (around 2 sec wait), will wait for a bit longer next time. Also definitely need to try with a different VST or try S-YXG50 in another host (like SaviHost) to rule out the possibility of FSMP being at fault.

PS. Attaching the original file i forgot before. The site won't allow .mid extensions for some weird reason, so i just renamed it to .zip (not an actual ZIP file)

Attachments

  • Filename
    Xgroove.zip
    File size
    131.91 KiB
    Downloads
    71 downloads
    File comment
    Actually a MIDI file, please rename the extension
    File license
    Fair use/fair dealing exception

Reply 1125 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Meowdori wrote on 2020-09-26, 00:36:

I might have tried to reload the VST a bit too fast then (around 2 sec wait), will wait for a bit longer next time. Also definitely need to try with a different VST or try S-YXG50 in another host (like SaviHost) to rule out the possibility of FSMP being at fault.

PS. Attaching the original file i forgot before. The site won't allow .mid extensions for some weird reason, so i just renamed it to .zip (not an actual ZIP file)

What should I hear as erroneous and at what time? I do not hear any substantial difference between your recording and my normal playing session in FSMP.
It would have been better if you had also attached the recording of what you think is correct...

@Edit:
I have made a video about my playing session. There is indeed a strange instrument (Doorsqek) at the beginning at channel 15 and the Jazz drum kit at channel 12 has a flanger effect assigned to it but both are intentional and initialized by the Midi file itself:
https://youtu.be/0jO2iYnd7tgit:

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1126 of 1699, by Meowdori

User metadata
Rank Newbie
Rank
Newbie

Hello, thanks for trying it out and recording the video.

I'm aware of the squeaky intro sound effect and the flanging drum kit, that is definitely intended by the author and the entire song sounds perfectly fine in your video. And yes I should have included both correct and incorrect playback examples for comparison earlier, which i'm doing in this post.

The difference can be heard as soon as the additional melody on the channel 2 plays (right after the intro). The much more obvious one starts precisely at 1:00 minute mark, with the piano sounding like there's way too much chorus (?).

Either way, please, don't feel obligated to try and solve this if you don't have the time for it. Besides, today i ruled out the possibility of FSMP being at fault here, so there's nothing you could do about it. I'm writing about it though, because now i'm curious if other people experienced something similar with this synth. I can't believe i could be the only one.

I conducted a test in which i set up two instances of S-YXG50, one running in FSMP and another one in SaviHost. I simultaneously fed them the same MIDI tracks via the same loopMIDI port. FSMP was recorded directly using its own record feature, and SaviHost audio was fed into VB VoiceMeeter and recorded from there.

I found out that both synth instances significantly deviated from the expected playback after some time (SaviHost one broke even faster!). Then i did the same test except using MIDI Yoke to connect the software instead of loopMIDI and both experiments yielded similar results.

My conclusion is that either S-YXG50 is bugggy or the MIDI files don't handle things as they should (less likely, not investigated in-depth by me so far), thus FSMP is completely fine.

I'm linking the 7zip archive with full recordings from both VST hosts of the session made with loopMIDI, for anyone interested and attaching a picture ilustrating the test setup. There's also short excerpts that pinpoint and highlight the problems after the playback deteriorates.

https://drive.google.com/file/d/104B45FZqeLov … ew?usp=drivesdk

Attachments

  • Routing.png
    Filename
    Routing.png
    File size
    518.69 KiB
    Views
    2075 views
    File comment
    Test setup
    File license
    Fair use/fair dealing exception
  • Filename
    XGroove_erroneous.ogg
    File size
    2.95 MiB
    Downloads
    73 downloads
    File license
    Fair use/fair dealing exception
  • Filename
    XGroove_correct.ogg
    File size
    2.48 MiB
    Downloads
    70 downloads
    File license
    Fair use/fair dealing exception

Reply 1127 of 1699, by PoulpSquad

User metadata
Rank Member
Rank
Member

Hello,

A quick question if I may:

How do I minimize MidiPlayer to the tray from the command line?

I need to run it from a batch file and I'd like to send it minimized to the tray.

Is that possible without using a 3rd party program?

Thank you.

Edit: /tray does it. Thanks a bunch Zoltán!

Last edited by PoulpSquad on 2020-10-14, 21:08. Edited 1 time in total.

Reply 1128 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
PoulpSquad wrote on 2020-10-14, 20:47:
Hello, […]
Show full quote

Hello,

A quick question if I may:

How do I minimize MidiPlayer to the tray from the command line?

I need to run it from a batch file and I'd like to send it minimized to the tray.

Is that possible without using a 3rd party program?

Thank you.

Yes, you can do this by giving Midiplayer the '/tray' command line option: midiplayer.exe /tray

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1129 of 1699, by PoulpSquad

User metadata
Rank Member
Rank
Member

Hello again.

I'm in need of help about an issue I have with my MIDI config in DOSBox.
I am trying to run Roland SOUND Canvas VA 1.16 in MidiPlayer 5.7 x64.
I have loopMIDI 1.0.16 installed.

My problem is that DOSBox displays this message when I am trying to play games that use General MIDI: "MIDI: Can't open device:win32 with config:0", and "MIDI: Opened device:mt32".
Microsoft GS Wavetable Synth works fine, I can use it without a problem.

Yesterday I had the same issue after unplugging an UM-ONE interface connected to a SC-55. When I plugged it back, Windows couldn't install the drivers for it, and after some persuasion, I started getting the MIDI can't open device win32 message. I had to restore my computer from backups I had, and today it is happening again.
I've tried re-installing loopMIDI, MidiPlayer, SOUND Canvas VA and with SAVIHost instead of MidiPlayer.

Thank you for your time reading this. I whish I could understand why this system of mine can't open device win32.
I am not sure what information you would require, and I am not even sure it is the correct sub-forum for posting this, so I apologize in advance.

Reply 1130 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
PoulpSquad wrote on 2020-10-16, 00:27:
Hello again. […]
Show full quote

Hello again.

I'm in need of help about an issue I have with my MIDI config in DOSBox.
I am trying to run Roland SOUND Canvas VA 1.16 in MidiPlayer 5.7 x64.
I have loopMIDI 1.0.16 installed.

My problem is that DOSBox displays this message when I am trying to play games that use General MIDI: "MIDI: Can't open device:win32 with config:0", and "MIDI: Opened device:mt32".
Microsoft GS Wavetable Synth works fine, I can use it without a problem.

Yesterday I had the same issue after unplugging an UM-ONE interface connected to a SC-55. When I plugged it back, Windows couldn't install the drivers for it, and after some persuasion, I started getting the MIDI can't open device win32 message. I had to restore my computer from backups I had, and today it is happening again.
I've tried re-installing loopMIDI, MidiPlayer, SOUND Canvas VA and with SAVIHost instead of MidiPlayer.

Thank you for your time reading this. I whish I could understand why this system of mine can't open device win32.
I am not sure what information you would require, and I am not even sure it is the correct sub-forum for posting this, so I apologize in advance.

Since this problem has nothing to do with Midi player (it's definitely OS and/or driver related) moreover I have no UM-ONE to test with this topic is really not the best place to get help with your problem.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1131 of 1699, by PoulpSquad

User metadata
Rank Member
Rank
Member

Ok thank you. I have no idea how to tackle this problem so I thought I'd ask here for starters.

This problem is happening now without an UM-ONE connected. I was giving context about how it started.

Thank you for your help.

Reply 1132 of 1699, by PoulpSquad

User metadata
Rank Member
Rank
Member

Hello,

Is it possible to minimize multiple instances of Midi Player to tray from the command line?
/tray will only work for the first instance in a batch file. Following ones will complain there Midi Player is already minimized to tray.

Thanks!

Reply 1133 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
PoulpSquad wrote on 2020-10-18, 21:13:
Hello, […]
Show full quote

Hello,

Is it possible to minimize multiple instances of Midi Player to tray from the command line?
/tray will only work for the first instance in a batch file. Following ones will complain there Midi Player is already minimized to tray.

Thanks!

Hi, It was programmed this way because of an explicit request. It seems to be reasonable because by default on modern Windows when Midiplayer runs in background/tray there is nothing that shows you that an instance is already running/loaded. You have to explicitly tell Windows to show Midiplayer always on tray, otherwise it's hidden (and you have to click on 'Show hidden icons' to see it). So this warning is to avoid loading multiple instances accidentally that can also cause problems when same Midi IN/OUT port configuration is used (depending on port capabilities).
But of course there can be cases when it is really intended to run multiple instances on tray so I have added YES/NO buttons to this warning dialog. But I will not completely remove this warning because of the above written.
Here you can download the new test version with the YES/NO buttons:
http://falcosoft.hu/midiplayer_58_test.zip

Also just a remark: I do not think there are many cases when running multiple instances in background is justifiable. Midiplayer is versatile in the sense that you can change its configuration remotely from a DOS batch file with SysEx messages. So running multiple instances is not needed. More info:
Re: Falcosoft Soundfont Midi Player
https://www.youtube.com/watch?v=6CdJ7sEt8UM&feature=emb_logo

And the starter pack that you can use to activate different profiles from DOS batch files
download/file.php?id=34344

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1134 of 1699, by PoulpSquad

User metadata
Rank Member
Rank
Member

Hi, It was programmed this way because of an explicit request...

Indeed, it makes sense and it's obvious now that I think of it. I guess I was trying to use it as if it were SAVIHost... Thank you very much for your time compiling this test binary, I am going to check it out in a moment.

But I will not completely remove this warning because of the above written.

Would you consider adding a setting inside Midi Player?

Also just a remark: I do not think there are many cases when running multiple instances in background is justifiable. Midiplayer is versatile in the sense that you can change its configuration remotely from a DOS batch file with SysEx messages. So running multiple instances is not needed. More info:

I stumbled upon the post where you explain how that works, and I've been setting stuff up. I am blown away, it works flawlessly from a batch. Just configure each VST, save its preset, and run the adequate SysEx from DOS. Simple as that!

And the starter pack that you can use to activate different profiles from DOS batch files
download/file.php?id=34344

Yep, got those and I "assimilated" the first 3 for my own use. Works without modifying anything. I guess they would work fine also with any utility capable of sending SysExes.
So now I got a single instance of MidiPlayer running, with VSTs configured for SC-55 (with capital tone fallback, even!), MT-32 old and MT-32 new.

Is there a way to know the posible parameters Midi Player accepts?

Man, MidiPlayer is awesome, thanks a lot for it, and everybody else involved with this project of course!

I'm going to wrap it all up now and try out your binary. Thank you again and good evening/night!

Reply 1135 of 1699, by Wanderer

User metadata
Rank Newbie
Rank
Newbie

Hello Falcosoft, thank you for the player and for including so many nice features in it.
I have two suggestions / complaints, hope they haven't been mentioned previously.

1. Shuffle playback mode still has a lot to improve. Apart from issues described in kvasar's post (1-3), there is one more: once last track (lowest in the playlist) is played and finished, the program considers the entire playlist done and doesn't proceed to other tracks.

2. Not sure if this applies to every system, but, on my PC, the format for audio recording by the MIDI Player is limited to 44.1 kHz 16-bit or lower. Thus the player cannot record hardware soundfont synths at native 48 kHz. Could support for higher sample rates be added?

Thanks in advance.

Reply 1136 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Wanderer wrote on 2020-11-01, 16:38:
Hello Falcosoft, thank you for the player and for including so many nice features in it. I have two suggestions / complaints, h […]
Show full quote

Hello Falcosoft, thank you for the player and for including so many nice features in it.
I have two suggestions / complaints, hope they haven't been mentioned previously.

1. Shuffle playback mode still has a lot to improve. Apart from issues described in kvasar's post (1-3), there is one more: once last track (lowest in the playlist) is played and finished, the program considers the entire playlist done and doesn't proceed to other tracks.

2. Not sure if this applies to every system, but, on my PC, the format for audio recording by the MIDI Player is limited to 44.1 kHz 16-bit or lower. Thus the player cannot record hardware soundfont synths at native 48 kHz. Could support for higher sample rates be added?

Thanks in advance.

Hi,
1. You have to right click on the Playlist area and select 'Repeat All Playlist'.

2. The problem is that in the legacy Directsound capture API used by Midi Player when not in Bass mode (Midi Player uses this API because it works from Win 9x to Win 10) unfortunately there aren't caps or query functions , so there isn't a way to tell if a format is actually supported in hardware or not. And the other formats you see in the format selecting dialog are given by the ACM subsystem of Windows automatically. I could use 48KHz instead of 44KHz directly but this option would be less compatible with older hardware and pre Vista Windows systems. In case of any such problems recording would simply fail.
So for more professional recording you should use a separate newer recording app while using Midi Player for playback only.
There is no such problem when using the internal rendering/recording of Bass infrastructure (either for soundfonts or VST plugins).

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1138 of 1699, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Ancient wrote on 2020-12-08, 10:42:

I’ve tried this player with SMPTE based SMF.
It play too slow. (Half speed?)

Please, attach your Midi file that you used for testing. BTW, what is your reference player/authoring software that you used and according to you played your file correctly?
Temporarily you can use the tempo slider to set tempo to 200% to compensate this problem.

@Edit:
I have attached a test file that you can use to check your player/authoring software really works as it should.
The attached file has an SMPTE settings of 25 frame per second and 40 units per frame. This means exact millisecond based resolution that is 1000 ticks are 1 second. The overall lenght of the file is 1920 ticks so your player/software should detect its length as 1.92 sec. and it should play this file accordingly.
(Notice that in Midi Player you can change how file length is calculated by toggling 'Main menu -> Compatibility Settings -> Ignore End of Track for Song Length'. In this case this option has to be disabled)

Filename
smpte_25_40_1920t.zip
File size
226 Bytes
Downloads
63 downloads
File license
CC-BY-4.0

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1139 of 1699, by kolderman

User metadata
Rank l33t
Rank
l33t

HI Falconsoft, not sure if this has been reported before, but playing a midi track for many hours will eventually crash the X-Fi and/or computer with Win7. Not sure if a crash in the VSTI plugin or Midi Player.