|Microsoft DirectX 9.0|
The MIDIToMusic method converts a MIDI note value to a DirectMusic
HRESULT MIDIToMusic( BYTE bMIDIValue, DMUS_CHORD_KEY* pChord, BYTE bPlayMode, BYTE bChordLevel, WORD *pwMusicValue );
MIDI note value to convert, in the range from 0 through 127.
Address of a DMUS_CHORD_KEY structure containing information about the chord and key structure to be used in translating the note. This includes the underlying scale. For example, if the chord is a CM7, the note is interpreted against the chord positions for root note C, chord intervals of a major seventh. The structure carries up to DMUS_MAXSUBCHORD parallel subchords, with chord intervals, root, scale, and inversion flags for each. It also carries the overall key root.
Play mode determining how the music value is derived from the chord. For a list of values, see DMUS_PLAYMODE_FLAGS.
Subchord level, defining which subchords can be used. See DMUS_SUBCHORD.
Address of a variable that receives the music value. For information on this value, see DMUS_NOTE_PMSG.
If the method succeeds, the return value is one of the following. See Remarks.
If it fails, the method can return one of the error values shown in the following table.
If the method fails, *pwMusicValue is not changed.
If the return value is DMUS_S_UP_OCTAVE or DMUS_DOWN_OCTAVE, the note conversion generated a note value that is less than 0 or greater than 127, so it has been adjusted up or down one or more octaves to be in the proper MIDI range of from 0 through 127. This can occur when using play modes DMUS_PLAYMODE_FIXEDTOCHORD and DMUS_PLAYMODE_FIXEDTOKEY, both of which return MIDI values in *pwMusicValue.
Header: Declared in dmusici.h.