Why only 4 MIDI devices?

It seems you're using an AdBlocker or JavaScript is disabled!

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

This 10 seconds wait is to let you update your AdBlocker whitelist...

Got it, show me the content...
Please enable JavaScript!
Posts: 8
Joined: June 2, 2018 - 06:58
Why only 4 MIDI devices?

I am curious is there a reason to allow only 4 MIDI devices? It should be easy to enable more, right?

Posts: 1536
Joined: March 25, 2012 - 01:19
Re: Why only 4 MIDI devices?

Yes, should be; but will require much more memory and, mostly, CPU cores.
Actually each virtual device has its own IPC message queue on a dedicated thread.
Using CPU affinity, each thread is run by a different core; since many of the available hi-end CPUs have up to 4 (physycal) cores, that's why I've limited it to 4 devices.

PS: I suppose most of VMS users still don't know there's a multi-device feature and, probably, will never need it ;)

Posts: 71
Joined: September 25, 2013 - 16:38
Re: Why only 4 MIDI devices?

Maybe this similarity is not intentional, but also some GS devices like SC-8850 and XG Level 3 devices support 64 channels (by 4 ports).

https://en.wikipedia.org/wiki/Comparison_of_MIDI_standards

So it's possible that some Midi files intended to be played on these devices use 64 channels by distributing tracks on 4 ports. 32 channel/2 port Midi files are known to exist. I do not know popular HW synths with more than 64 channels/4 ports.

Posts: 1536
Joined: March 25, 2012 - 01:19
Re: Why only 4 MIDI devices?
falcosoft wrote:
Maybe this similarity is not intentional, but also some GS devices like SC-8850 and XG Level 3 devices support 64 channels (by 4 ports).

You're right, its not intentional ;)

Posts: 71
Joined: September 25, 2013 - 16:38
Re: Why only 4 MIDI devices?

Nevertheless it's a wisely chosen value, inspired by the Gods :)

Posts: 8
Joined: June 2, 2018 - 06:58
Re: Why only 4 MIDI devices?

Software is much more capable then hardware, no reason to do hard limit in software :-)

I am using VMS for organ and extended organ features, and each channel for me is one stop (in organ terminology), so more channels allows to me to have more stops. We are also dicsussing SysEx messages to modify VMS configuration, but that probably won't be done anytime soon, so more channels allows me to load more sound fonts, and do the rest from my program (selecting sounds by setting presets on each channel).

This looks like one line change in .Net, so could you just check number of processors available and allow that many MIDI devices? I have plenty CPU and RAM, and I am sure that many other people have too.