Microsoft DirectX 9.0 SDK Update (October 2004) |
The DMUS_IO_INSTRUMENT structure contains information about an instrument. Used in the Band Form.
Syntax
typedef struct _DMUS_IO_INSTRUMENT {
DWORD dwPatch;
DWORD dwAssignPatch;
DWORD dwNoteRanges[4];
DWORD dwPChannel;
DWORD dwFlags;
BYTE bPan;
BYTE bVolume;
short nTranspose;
DWORD dwChannelPriority;
short nPitchBendRange;
} DMUS_IO_INSTRUMENT;
Members
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
dwFlags
Control flags. The following values are defined as shown.
Value | Description |
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_PITCHBENDRANGE | The nPitchBendRange 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. When a MIDI file that contains an XG or GS reset 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 IDirectMusicPort8::GetChannelPriority.
nPitchBendRange
Number of semitones shifted by pitch bend.
Requirements
Header: Dmusicf.h
See Also