forked from forks/qmk_firmware
Unify MIDI note calculation with the audio feature's algorithm (#21588)
This commit is contained in:
parent
727b1d1597
commit
96789a7cb0
|
@ -108,10 +108,10 @@ static void fallthrough_callback(MidiDevice* device, uint16_t cnt, uint8_t byte0
|
||||||
if (cnt == 3) {
|
if (cnt == 3) {
|
||||||
switch (byte0 & 0xF0) {
|
switch (byte0 & 0xF0) {
|
||||||
case MIDI_NOTEON:
|
case MIDI_NOTEON:
|
||||||
play_note(((double)261.6) * pow(2.0, -4.0) * pow(2.0, (byte1 & 0x7F) / 12.0), (byte2 & 0x7F) / 8);
|
play_note(440.0f * powf(2.0f, ((byte1 & 0x7F) - 57) / 12.0f), (byte2 & 0x7F) / 8);
|
||||||
break;
|
break;
|
||||||
case MIDI_NOTEOFF:
|
case MIDI_NOTEOFF:
|
||||||
stop_note(((double)261.6) * pow(2.0, -4.0) * pow(2.0, (byte1 & 0x7F) / 12.0));
|
stop_note(440.0f * powf(2.0f, ((byte1 & 0x7F) - 57) / 12.0f));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue