Midi files drop out at the very end

Please let our ADS show!

This sites offers only FREE software and it's supported by a few advertisement boxes (no intrusive popups).
Please:

  • disable your AdBlocker by adding CoolSoft website to whitelist
  • give the proper cookie consent
  • enable JavaScript for this website

This seconds wait is to let you update your browser configuration...

Ok, I've done the required changes... now show me your content!
!!! Please enable JavaScript !!!
Anonymous user
Midi files drop out at the very end

After downloading virtualmidisynth and one of the recommended soundfont banks, I was very impressed with the quality.  After playing several of my midi files, I began to notice that the songs were not quite completing correctly.  I tried changing my default player from Windows Media Player to dbpoweramp, winamp, etc. without any success.  After a couple of days of trying, I started to pour over your coments....all 12 pages....and I saw your comment on this exact problem.  You stated that unfortunately, there was no solution to this because virtualmidisynth runs as a DLL....and Windows 7 clears this out quickly when the song file has completed.  

Before finally giving up on this, I decided to search for other free midi players to see if I could find one that worked.  I ended up with the one you first recommended....namely Van Basco's Karaoke player.
Instead of naming virtualmidysynth as my default, I named Van Basco's Karaoke player as the default.  Voila!  Now I can play music on ALL of my players, Windows Media Player, dbpoweramp, etc. without losing the end of the Midi file.  I also picked up a neat midi program called "Notation Player" that works well, and shows the sheet music.  Everything now runs fine, now that I have set my default player as Van Blasco's Kareoke player.  Technically, I really don't understand WHY this works.....but....it does, and that's fine by me.  I hope this will help others who had this problem.

Best Regards,
Tom Weber

Posts: 1972
Joined: March 25, 2012 - 01:19
Sadly a DLL can't do anything

Sadly a DLL can't do anything to delay its unload: when the EXE order it, it must execute.
VanBasco does not close the MIDI device at all at the end, so it's a great player for VirtualMIDISynth.

The effect if worst if you set an higher output buffer, say 1000ms. When the MIDI client unloads the library, the last 1 second of the song can't be played and gets truncated.
To mitigate this bad behaviour you can:

  • decrease output buffer to 0ms (beware of stuttering)
  • use VanBasco as your MIDI player
  • add an extra 2-3 seconds at the end of each MIDI song (some players can do it)
  • wait for next 2.x version of VirtualMIDISynth that will remove this behaviour by separating the synth from the driver DLL... but this is far to come