Many companies have released MIDI interfaces that feature multiple output busses (MIDI OUTS). Most of these models connect to the parallel or USB port. For examples of such models, consult Audio Cards and MIDI Interfaces for a computer.

Note: Do not be confused by MIDI interfaces that have more than 1 MIDI OUT connector but do not have multiple busses. These connectors all tap into one midi bus. What this means is that, at any given time, all of the outputs are pumping out the exact same MIDI data. This is really only a matter of convenience because it allows you to hook up several MIDI devices directly to the MIDI interface as opposed to daisy-chaining these devices to themselves (via the MIDI thru of each device). Big deal. You still have only 16 midi channels, and all of the sequencer data must go out this 1 bus.

What do these multiple busses offer?

Let's assume that we have a device with 3 independent busses (and therefore at least 3 MIDI OUT connectors). At any one time, each of these connectors can be outputting completely different MIDI data. So, you have a total of 48 midi channels (16 per jack). The big advantage is that your sequencer can split up the outgoing midi data for various MIDI devices among those 3 connectors. It doesn't have to pump all midi data out of 1 bus.

What's the significance of this?

Midi is a serial transmission. What this means is that only 1 piece of information can be sent through a single midi cord (or bus) at a time, and it takes a relatively long time to send that piece of info. (It seems like a blindingly fast time to a human, but to machines like computers and MIDI devices, it's quite slow.) For example, it takes a sequencer (at least) 960 microseconds to send a midi note-on to a midi device (ie, play a single note on a midi device). Now, to our ears that sounds instantaneous. Well, what if, on a particular downbeat of a musical piece, our sequencer has to send a 5 note chord to a MIDI piano module, a kick and hihat strike to a drum box, and a bass note to some MIDI bass module. That's 8 midi note-ons that have to be sent out on the midi bus. All of these notes are supposed to sound together; 5 piano notes, 1 kick, 1 hihat, and 1 bass note. But, since midi can only send one note at a time on a single bus, it has to send each of those as fast at it can, one at a time. Well, it takes 960 microseconds to send each note, so by the time that the 5 piano notes are sent, it's already 4800 microseconds later than the downbeat. By the time that the bass note gets sent, it's 7680 microseconds later than the downbeat when it was supposed to sound. We've lost the illusion of "instantaneous" because now our ear can start to hear that the bass note sounds "behind" the first piano note instead of "with it". Quite simply, we tried to pump too much data out of 1 midi bus all at the same instance (ie, the same downbeat). This problem is known as "Midi Data Clog" or "Midi Delays". Technically, we can say that midi doesn't have enough bandwidth to perform what we want well enough to satisfy our ears.

What if we had 3 independent MIDI busses (outputs). Well, we can hook the piano module to one output and tell the sequencer to send only the 5 piano notes to that output. We can connect the drum box to another output and tell the sequencer to send the kick and hihat notes through that output. We can connect the bass module and tell the sequencer to send only the bass note through that output. Now, the sequencer doesn't have to send all of the data over a single bus. The sequencer can send data out those 3 busses simultaneously. In other words, the bass note can be output while the piano notes are being output. As a result, that bass note really does sound at the same time that the first piano note does. (It's true that those 5 piano notes are still sent out one at a time. After all, they're going out of one midi bus, so the 5th note is still 4800 microseconds behind the 1st. But, at least the bass note doesn't have to wait until all of those 5 piano notes are sent before it gets sent. Neither do the kick and hihat notes have to wait because they have their own bus, too. So, things end up sounding much more instantaneous, even if they aren't technically, and the illusion is all that matters to a human).

Of course, a program would have to be specifically written to access the 3 busses of the interface, so obviously you need software (ie, drivers) that utilize a particular devices' busses. If you attempted to use a program not written to control this device, at best, only one of the outputs would work. In other words, it would be no better than an ordinary interface. Most professional sequencers offer support for multiple busses, allowing you to set an individual track to output of any one of the numerous MIDI OUT connectors.

Assume that you have a MIDI interface that has two independent busses (ie, 32 MIDI channels). The first bus happens to be named "MPU-401 Port 1" and the second bus is named "MPU-401 Port 2". (These names are determined by the manufacturer of the interface, and set when you install the interface's driver). Above, we have assigned the first track of Cakewalk to output of the second port, and the second track to output of the first port. This means that even if we use MIDI channel 1 for both tracks, they will actually be different channels. After all, track one is using MIDI channel 1 on port 2. Track two is using MIDI channel 1 on port 1, which is an entirely different channel.

If you're using software that can utilize the Windows MIDI Mapper (ie, any Windows program that uses MCI), then you've already got the ability to adapt your software to use multiple busses. Simply install more than one MIDI interface card (or a card with multiple busses), and route various MIDI channels of the MIDI Mapper to different drivers (ie, different outputs). You end up chopping up 16 channels into more than one output (ie, you don't take advantage of the fact that you could now have 16 MIDI channels per each device), but you get more efficient output for those 16 channels. In Windows 95, you open the Control Panel's MultiMedia notebook to the "MIDI" page, and use the "Advanced Configuration" to route MIDI channels to different driver/devices. See MIDI connections and computer setup for details of setting up multi-port cards under Windows 95.