diff options
author | Wohlstand <admin@wohlnet.ru> | 2020-09-02 22:49:04 +0300 |
---|---|---|
committer | Wohlstand <admin@wohlnet.ru> | 2020-09-02 22:49:04 +0300 |
commit | d29b0cacf3e7a1da793fc2692a958dcf6c4b9c75 (patch) | |
tree | 38397165639eec8a5e6369b2a6aca733d6e6dd06 /src/adlmidi_midiplay.hpp | |
parent | efdf769050aaf344ddac660386009b58fa156ad2 (diff) | |
download | libADLMIDI-d29b0cacf3e7a1da793fc2692a958dcf6c4b9c75.tar.gz libADLMIDI-d29b0cacf3e7a1da793fc2692a958dcf6c4b9c75.tar.bz2 libADLMIDI-d29b0cacf3e7a1da793fc2692a958dcf6c4b9c75.zip |
When playing XMIDI files, set defaults of AIL
- Default volume in AIL is 127
- Default pitch bend sensitivity is a full octave up, and full octave down:
MSB=12, LSB=0
Diffstat (limited to 'src/adlmidi_midiplay.hpp')
-rw-r--r-- | src/adlmidi_midiplay.hpp | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/src/adlmidi_midiplay.hpp b/src/adlmidi_midiplay.hpp index f7732fe..93b36e9 100644 --- a/src/adlmidi_midiplay.hpp +++ b/src/adlmidi_midiplay.hpp @@ -64,6 +64,10 @@ public: void partialReset(); void resetMIDI(); +private: + void resetMIDIDefaults(int offset = 0); + +public: /**********************Internal structures and classes**********************/ /** @@ -71,6 +75,13 @@ public: */ struct MIDIchannel { + //! Default MIDI volume + uint8_t def_volume; + //! Default LSB of a bend sensitivity + int def_bendsense_lsb; + //! Default MSB of a bend sensitivity + int def_bendsense_msb; + //! LSB Bank number uint8_t bank_lsb, //! MSB Bank number @@ -317,10 +328,10 @@ public: void resetAllControllers() { bend = 0; - bendsense_msb = 2; - bendsense_lsb = 0; + bendsense_msb = def_bendsense_msb; + bendsense_lsb = def_bendsense_lsb; updateBendSensitivity(); - volume = 100; + volume = def_volume; expression = 127; sustain = false; softPedal = false; @@ -369,8 +380,11 @@ public: --extended_note_count; } - MIDIchannel() - : activenotes(128) + MIDIchannel() : + def_volume(100), + def_bendsense_lsb(0), + def_bendsense_msb(2), + activenotes(128) { gliding_note_count = 0; extended_note_count = 0; |