Skip to content

Commit 69113d7

Browse files
emmett-sharkEmmett LinWWRS
authored
Fix tempo changes (#8)
* fix tempo changes * Update version history --------- Co-authored-by: Emmett Lin <emmett@linbarbell.com> Co-authored-by: RShields <playnow254@gmail.com>
1 parent 044a3b0 commit 69113d7

File tree

2 files changed

+7
-4
lines changed

2 files changed

+7
-4
lines changed

index.html

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,10 @@ <h3>Examples</h3>
285285

286286
<div class="container">
287287
<h2>Version history</h2>
288+
<p>
289+
v1.9b<br>
290+
Fixed an issue where tempo changes were applied at the wrong time
291+
</p>
288292
<p>
289293
v1.9a<br>
290294
Increased maximum pitch bend range to 12 semitones

src/midiToNotes.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -251,14 +251,13 @@ const MidiToNotes = (function () {
251251
let currTime = 0;
252252

253253
for (const event of sortedMidiEvents) {
254+
let adjustedDeltaTime = event.deltaTime * currTempo / baseTempo;
255+
currTime += adjustedDeltaTime;
256+
event.time = currTime;
254257
if (getEventType(event) === "meta" && event.metaType === 81) {
255258
if (event.time === 0) baseTempo = event.data;
256259
currTempo = event.data;
257260
}
258-
259-
let adjustedDeltaTime = event.deltaTime * currTempo / baseTempo;
260-
currTime += adjustedDeltaTime;
261-
event.time = currTime;
262261
}
263262
}
264263

0 commit comments

Comments
 (0)