DMUS_INSTRUMENT
The DMUS_INSTRUMENT structure contains an instrument definition in a DLS download chunk.
Syntax
typedef struct {
ULONG ulPatch;
ULONG ulFirstRegionIdx;
ULONG ulGlobalArtIdx;
ULONG ulFirstExtCkIdx;
ULONG ulCopyrightIdx;
ULONG ulFlags;
} DMUS_INSTRUMENT;
Members
ulPatch
Patch number of instrument.
ulFirstRegionIdx
Index of first region chunk (see DMUS_REGION) within the instrument. There should always be a region, but for compatibility with future synthesizer architectures, it is acceptable to have 0 in this member.
ulGlobalArtIdx
Index, in the DMUS_OFFSETTABLE structure, of the global articulation chunk (see DMUS_ARTICULATION and DMUS_ARTICULATION2) for the instrument. If 0, the instrument does not have global articulation.
ulFirstExtCkIdx
Index, in the DMUS_OFFSETTABLE structure, of the first extension chunk (see DMUS_EXTENSIONCHUNK) within the instrument. This is used to add new chunks that DirectMusic is unaware of. If 0, no third-party extension chunks are associated with the instrument.
ulCopyrightIdx
Index, in the DMUS_OFFSETTABLE structure, of an optional copyright chunk (see DMUS_COPYRIGHT). If 0, no copyright information is associated with the instrument.
ulFlags
Additional flags for the instrument. The following flag is defined:
Flag | Description |
DMUS_INSTRUMENT_GM_INSTRUMENT | The instrument is a standard General MIDI instrument. In the case of patch overlap, GM instruments always have lower priority than other DLS instruments. For example, if a GM instrument is downloaded with patch 0 and a non-GM instrument is also downloaded at patch 0, the non-GM instrument is always selected for playback. |
Requirements
** Header:** Dmdls.h
See Also