Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a program that plays MIDI files and allows me to select from installed MIDI devices on machine. Right now I only have the standard MIDI that comes with windows.

My question is if it's possible to install a 'virtual' device that supports SoundFonts, and it will appear in that program's device list (or tie it up externally)?

Any other workarounds? What if I'm a programmer and the source code of that program is handy, any hints on how to achieve this?

share|improve this question
up vote 1 down vote accepted

The alternatives i've found so far are: (based on BASSMidi, open source) (based on BASSMidi, closed source) (based on timidity++) (discontinued)

share|improve this answer

As per its official site TiMidity++ was last updated way back in 2004. An updated (patched?) version seems to have been released in 2012 (not by the original author), but you might be hard pressed to find a Windows binary for it (especially an x64 version).

Instead I'd advise you to use either VirtualMIDISynth or the BASSMIDI MIDI Synthesizer Driver (open source), both of which depend on the BASS/BASSMIDI audio libraries:

1 2

Once you have either driver installed (here's a handy detailed tutorial for both) you can:

  1. Select it as the default MIDI device in your MIDI player of choice

    3 4

  2. Select it as the default MIDI Out device under Windows so you can use it with all MIDI players, even the ones that don't offer a MIDI device selection option as shown above

    5 6

Note: Vista+ removed the Control Panel option to select the default Windows MIDI Out device, so one is normally stuck with the default (and extremely limited) Microsoft GS Wavetable Synth. You can use either the drivers' own configuration utilities as shown above, or standalone utilities such as Vista MIDI Picker, Putzlowitsch's Vista MIDI Mapper Control Panel, Vista MIDI Fix, MIDI Out Setter (open source) etc.

7 8 9

share|improve this answer
Thank you for your nice and detailed answer. – Shimmy May 20 '13 at 7:30

TiMidity++ supports both Windows (-iW) and ALSA (-iA) virtual MIDI interface creation.

share|improve this answer
1) The program I'm talking about is a synthesizer itself, I just need to install a fake MIDI device that will play using SoundFounts instead of the standard nasty MIDI voices. 2) I'm a .NET developer, I don't know C++ so well, definitely not native. – Shimmy May 19 '13 at 11:22
1) Which part of what I gave doesn't do that? 2) I'm going to presume that C# has a facility for running external programs. – Ignacio Vazquez-Abrams May 19 '13 at 11:29

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .