aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_midiplay.cpp
diff options
context:
space:
mode:
authorVitaly Novichkov <admin@wohlnet.ru>2018-06-26 18:15:36 +0300
committerVitaly Novichkov <admin@wohlnet.ru>2018-06-26 18:15:36 +0300
commit7394b15b9547c444999503fae5f42e340854c9eb (patch)
tree52f6f0f9b952de90bbfd2bc65b9fbf3a59cfa844 /src/adlmidi_midiplay.cpp
parente1bb226e1b8235a2aa80141fc07a305b8a5f1818 (diff)
downloadlibADLMIDI-7394b15b9547c444999503fae5f42e340854c9eb.tar.gz
libADLMIDI-7394b15b9547c444999503fae5f42e340854c9eb.tar.bz2
libADLMIDI-7394b15b9547c444999503fae5f42e340854c9eb.zip
Changed logic to identify percussion instrument in the goodness calculator
Diffstat (limited to 'src/adlmidi_midiplay.cpp')
-rw-r--r--src/adlmidi_midiplay.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/adlmidi_midiplay.cpp b/src/adlmidi_midiplay.cpp
index b300270..4f57374 100644
--- a/src/adlmidi_midiplay.cpp
+++ b/src/adlmidi_midiplay.cpp
@@ -499,6 +499,7 @@ bool MIDIplay::realTime_NoteOn(uint8_t channel, uint8_t note, uint8_t velocity)
ir.first->currentTone = tone;
ir.first->glideRate = HUGE_VAL;
ir.first->midiins = midiins;
+ ir.first->isPercussion = isPercussion;
ir.first->ains = ains;
ir.first->chip_channels_count = 0;
@@ -1295,7 +1296,7 @@ int64_t MIDIplay::calculateChipChannelGoodness(size_t c, const MIDIchannel::Note
}
// Percussion is inferior to melody
- s += 50 * (int64_t)(k->midiins / 128);
+ s += k->isPercussion ? 50 : 0;
/*
if(k->second.midiins >= 25
&& k->second.midiins < 40