This is an attempt to answer some of the most common questions about the MIDI Mapper and MIDI under Windows. If you've got questions that aren't covered here, please let me know and I'll try to put your questions (and my answers) into the next version of this file.
Q. What's the MIDI Mapper for anyway?
A. The MIDI Mapper's purpose is to provide device independence to MIDI devices. It attempts to do that same thing that the printer drivers do for instance - a Windows program doesn't have to know how to deal with your specific printer type, it just deals with a generic printer. Then Windows and the printer driver figure out how to make the printed output appear.
Q. Okay, how does it provide this independence?
A. Technically, what the MIDI Mapper does, is remap patcs, notes, channels and adjust velocities. It uses the Patch Map, Key Map and Setup to determine how to do this. You can create or adjust these yourself.
Q. Huh? What's a patch, channel and velocity?
A. These are all part of the MIDI lingo. A Patch is used to determine the sound to be used - examples would be Pianos, Strings or Guitars. Patches are used to select which instrument is used. Channels are used to separate songs to allow more than one instrument to sound at the same time. There are 16 MIDI channels, and each channel can use a single instrument or patch at a time. All notes are played on a MIDI channel. Velocity is a measure of how hard a note is pressed, and is used to specify how loud a particular note is.
Q. Will it work with all MIDI files?
A. Well, kinda yes and no. Until recently, there wasn't
any standard for patch numbers, or note numbers. It was up to the
manufacturer to determine what patch number to use for a Piano sound for
instance. Now there is a General MIDI specification, which does identify
which instrument is to be used for each patch number. However,
there are a large number of songs out there that are not General MIDI.
Now this doesn't mean that you shouldn't try to play non-General MIDI files
with
the MIDI Mapper. The worst that can happen
is it'll sound bad.
Q. What's General MIDI?
A. This is an official specification from the International MIDI Association (the MIDI standards committee). Microsoft has used a subset of the specification for their own purposes. Microsoft has adopted the General MIDI patch numbers and drum key numbers, however they have not taken the complete specification.
Q. What are the differences between Microsoft's way and the real General MIDI Specification?
A. The General MIDI Specification requires much more capable MIDI equipment than Microsoft. A real General MIDI device supports 32 note polyphony (that's 32 notes sounding at the same time), and uses all 16 MIDI channels. This is more than Microsoft's target device can handle, so Microsoft has defined two less capable devices - a "Basic" device, and an "Extended" one. They've also defined a set of "Authoring Guidelines" for MIDI files.
Q. What are the capabilities of a Basic device.
A. A Basic device must be capable of playing 6 melodic notes, in at least three different instruments, as well as 5 percussion notes. All sound cards are capable of this - in fact, most can only do this. Basic devices are supposed to listen to MIDI channels 13 through 15 for the melodic instruments, with the drums on channel 16. The Adlib, Sound Blaster and original Sound Blaster Pro are all Basic devices, as are most sound cards.
Q. Okay, what about Extended devices?
A. Extended devices must be capable of 16 melodic notes, using
9 instruments, plus 16 note, 8 instrument percussive. Extended devices
are supposed to listen to MIDI channels 1 through 9 for melodic sounds,
with the drum
track on channel 10. Examples of Extended
devices include the Roland MT-32/LAPC, Roland Sound Canvas series (including
the SCC-1), and Turtle Beach's MultiSound card.
Q. What are Microsoft's Authoring Guidelines?
A. The purpose of the guidelines is to allow people to build a single MIDI file that will play on either a Basic device or an Extended one. To do this, you put two versions of the same song in the file - one on channels 13 through 16, and another on channels 1 through 10. Each copy of the song is must meet the rules for Basic and Extended devices, with higher priority sounds on the lower channel numbers. The guidelines also include specific setting for volume and such.
Q. Are there a lot of files done Microsoft's way?
A. Yes and no. Here on CompuServe, we don't have any that meet the Microsoft rules. However, the CANYON.MID file included with Windows does, and there are a number of CD-ROMs out there that include Microsoft format files.
Q. How do I know whether a song is General MIDI?
A. Here on CompuServe, we mark the files with a keyword of GM. Windows has a warning message that you'll get if a song isn't marked as General MIDI - most people turn this off, because not all files that are General MIDI are marked as such.
Q. Okay, enough background - How do I get this thing to play?
A. Getting MIDI working under Windows requires two steps - installing the required drivers for your sound equipment, and configuring the MIDI Mapper.
Q. Where do I install the Sound Drivers?
A. All sound drivers are installed using the Window Control Panel application (in your Main program group). Once started, Control Panel shows a set of icons - choose the one labeled Drivers to install, remove or configure sound drivers. Now a list of the currently installed drivers will be shown - press Add to add a new driver. Most sound cards come with drivers for them - follow the manufacturer's directions to install the drivers. This is also fairly well documented in your Windows manuals.
Q. Okay, how do I configure the MIDI Mapper?
A. Most sound cards come with new setups for the MIDI Mapper. There are often three setups that'll use the internal sounds of the sound card - one labeled "Basic", one labeled "Extended" and one labeled "All". The differences between these three setups are the channels used. A Basic setup will ignore anything on channels 1 to 12, and an extended setup will ignore anything on channels 11 through 16. The All setup will listen to all 16 MIDI channels.
Q. When do I use All?
A. For songs from CompuServe, All is the best setting. However, Canyon won't sound very good with this setting, because it contains two copies of the song as discussed before. Unless you've got a large collection of songs done Microsoft's way, it's probably best to stick with All, and use a sequencer to edit Canyon if you want to hear it.
Q. What's this setting called MIDI?
A. Most sound cards include an optional MIDI connection. Often this is an add on. You'd use this to connect an external MIDI device, such as a keyboard. Unless you've got an external MIDI device, you can ignore anything like "Sound Blaster 1.0 MIDI" - if you use this, you won't hear anything.
Q. What are the MIDI Mapper Setups?
A. A Setup in the MIDI Mapper connects a key map and patch map to a set of drivers. A Key map is used to remap drum notes, and the patch map is used to remap patches. The setup ties all of these together, and assigns a patch map, key map and device to each MIDI channel.
Q. When would I have to edit or create a MIDI Mapper Setup?
A. If you've got a MIDI device that isn't supported in the list of available setups, you'll have to edit the setup. For instance, someone with a Roland Sound Canvas is probably using the Windows MPU-401 driver. The Sound Canvas is a real General MIDI device - it doesn't need any patch or key maps. You can easily create a setup for this - just assign "MPU-401" as the driver for each channel, and save the setup.
I hope this has been of some use to you. As mentioned before, please let me know if there's something you think should be covered in a future edition of this file.
Dan McKee
MIDI Forum Sysop
71333,1572