MCI device drivers can be classified as either simple devices or compound devices. Simple devices do not require a data file for playback. Videodisc players and CD audio players are examples of simple devices. Compound devices require a data file for playback. MIDI sequencers and waveform audio players are examples of compound devices. The data file associated with a compound device is known as a device element. Examples of device elements are MIDI files and WAVE files.
A device type identifies a class of MCI devices that respond to a common set of commands. The following table lists the currently defined device types:
Device Type | Description |
animation | Animation device. |
cdaudio | CD audio player. |
dat | Digital audio tape player. |
digitalvideo | Digital video in a window (not GDI based). |
other | Undefined MCI device. |
overlay | Overlay device (analog video in a window). |
scanner | Image scanner. |
sequencer | MIDI sequencer. |
vcr | Videotape recorder or player. |
videodisc | Videodisc player. |
waveaudio | Audio device that plays digitized waveform files. |
This chapter uses italic type for MCI device types.
For any given device type, there might be several MCI drivers that share the command set but operate on different data formats. For example, there are several MCI drivers for animation devices that use the same command set but use different file formats. To uniquely identify an MCI driver, MCI uses device names.
Device names are identified in the [mci] section of the SYSTEM.INI file. This section identifies all MCI device drivers to Windows. The following is part of a typical [mci] section:
[mci]
waveaudio=mciwave.drv
sequencer=mciseq.drv
MMMovie=mcimmp.drv
cdaudio=mcicda.drv
The keyname (left side of the equal sign) is the device name. The value corresponding to the keyname (right side of the equal sign) identifies the filename of the MCI driver. Frequently, the device name is the same as the device type for the driver, as is the case for the waveaudio, sequencer, and cdaudio devices in the preceding example. The “MMMovie” device is an animation device, but it uses a unique device name.
If an MCI driver is installed using a device name that already exists in the [mci] section, Windows appends an integer to the device name of the new driver, creating a unique device name. In the preceding example, a driver installed using the cdaudio device name would be assigned device name “cdaudio1”. A subsequent cdaudio device would be assigned device name “cdaudio2”.