Platform SDK: DirectX

DMUS_IO_INSTRUMENT

The DMUS_IO_INSTRUMENT structure contains information about an instrument. It is used in the Band Form.

typedef struct _DMUS_IO_INSTRUMENT {
    DWORD  dwPatch;
    DWORD  dwAssignPatch;
    DWORD  dwNoteRanges[4];
    DWORD  dwPChannel;
    DWORD  dwFlags; 
    BYTE   bPan;
    BYTE   bVolume;
    short  nTranspose;
    DWORD  dwChannelPriority;
} DMUS_IO_INSTRUMENT;
dwPatch
MSB, LSB, and program change to define instrument.
dwAssignPatch
MSB, LSB, and program change to assign to instrument when downloading.
dwNoteRanges
128 bits; one for each MIDI note that the instrument must be able to play.
dwPChannel
Performance channel that the instrument plays on.
dwFlags
Control flags. The following values are defined:
DMUS_IO_INST_ASSIGN_PATCH
The dwAssignPatch member is valid.
DMUS_IO_INST_BANKSELECT
The dwPatch member contains a valid bank select, both MSB and LSB.
DMUS_IO_INST_CHANNEL_PRIORITY
The dwChannelPriority member is valid.
DMUS_IO_INST_GM
Instrument is from the General MIDI collection.
DMUS_IO_INST_GS
Instrument is from the Roland GS collection.
DMUS_IO_INST_NOTERANGES
The dwNoteRanges member is valid.
DMUS_IO_INST_PAN
The bPan member is valid.
DMUS_IO_INST_PATCH
The dwPatch member is valid.
DMUS_IO_INST_TRANSPOSE
The nTranspose member is valid.
DMUS_IO_INST_USE_DEFAULT_GM_SET
The default General MIDI instrument set should be downloaded to the port, even if the port has GM in hardware. If a MIDI file with the XG or GS reset system-exclusive message is parsed, the bank-select message is sent, whether or not GUID_StandardMIDIFile was commanded on the band. In other words, GUID_StandardMIDIFile is effective only for pure GM files.
DMUS_IO_INST_VOLUME
The bVolume member is valid.
DMUS_IO_INST_XG
Instrument is from the Yamaha XG collection.
bPan
Pan for the instrument.
bVolume
Volume for the instrument.
nTranspose
Number of semitones to transpose notes.
dwChannelPriority
Channel priority. For a list of defined values, see IDirectMusicPort::GetChannelPriority.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in dmusicf.h.