Device tab allows you to select MIDI device you want to use and configure some common device-specific settings.
There are three sorts of devices appearing on most systems:
- midiOut - old-school Windows Multimedia MIDI output devices (recommended for most users)
- DirectMusic - new-school DirectMusic devices (available only if you have DirectX 6.1 or newer); some of them allow you to use custom instruments (DLS files), play through Winamp's DSP/output, etc. Microsoft Synthesizer most common DirectMusic device; it is relatively slow (mixing done 100% in software), but has most of DirectMusic features (DLS, reverb, DSP/output); it completely bypasses your MIDI hardware so it will sound (almost) the same way on new shiny SBLive! as on old good SB16.
- Media Control Interface (MCI) - high-level API used by most other MIDI players. Use it only when nothing else works. It's features are limited compared to other devices; it is known to do very bad things on win95/98/ME when Winamp's process priority class is set to high or realtime; on WinNT it isn't working too good neither.
Devices labelled "MIDI Mapper" or "Microsoft MIDI Mapper" refer do the default MIDI output device selected in Windows' control panel.
Device info box displays various info about selected device. Some of device info messages are explained below:
- volume / panning control - they tell if given device has its own volume / panning control. If they say "yes", you can select "driver-specific" option under volume control (see below) to prevent Winamp from messing with global volume settings. If the device doesn't have its own volume control, you can still use Winamp's volume control with it by selecting 'MIDI' (or wherever is that device connected) under volume control.
- looping - it tells if selected device accepts loop start points in MIDI files and can play MIDI files with looping info correctly. Currently all devices can do that except for MCI.
Hardware reset settings are for advanced users only. They do nothing (except for slowing down playback start / stop operations) on common soundblasters. Enabling one of them causes the plug-in to send XG / GM / GS reset sysex message to the device on start / stop of playback. Use them when you don't want XG/GS songs to leave their hardware settings in memory and mess up other songs. Never enable all of them - if your device supports XG, XG reset alone will do the job. Also, don't set both start & stop resets - if device has been reset at the end of previous song, resetting it again won't have any effect.
Volume control allows you to specify what Winamp's volume control is mapped to while playing MIDI. Select none to totally disable volume control. Driver-specific mode passes volume commands to playing device ( midiOutSetVolume(), IDirectMusicPerformance::SetVolume(), channel volume commands in immediate mode with alt. vol. setting enabled). It works with most of devices, but it is known to do bad things on certain sound cards. Remaining options refer to Windows' mixer lines.
NOTE: if you use an output plug-in, volume change commands are passed to it no matter which option is selected.
Use as logarithmic option allows you to ensure that '50%' volume is really 50% - if volume control is behaving oddly, try enabling/disabling it (every version of damn soundblaster drivers works different way, I have to toggle this option whenever is switch between Win2k & WinME on my main box).
Reset midiOut volume resets midiOut volume (set by driver-specific option on a midiOut device) for selected device (midiOut devices only). It takes immediate effect. Use it when you can't hear anything or output is too quiet, even with max volume.