|
@@ -84,6 +84,7 @@ export class VoicePlaybackData {
|
|
|
}
|
|
|
|
|
|
// TODO if playback is paused and the cursor set to the last note in Beethoven - Geliebte, there are 5 playback entries.
|
|
|
+ // this is fixed below in the continue statements, but ideally we'd filter them out beforehand.
|
|
|
for (let i: number = this.playbackIndex; i < this.playbackEntries.length; i++) {
|
|
|
const entry: { enrolledTimestamp: Fraction, playbackEntry: PlaybackEntry } = this.playbackEntries[i];
|
|
|
|
|
@@ -94,7 +95,7 @@ export class VoicePlaybackData {
|
|
|
}
|
|
|
const maxEntryTimestamp: Fraction = entry.enrolledTimestamp.clone();
|
|
|
maxEntryTimestamp.Add(entry.playbackEntry.Notes[0].Length);
|
|
|
- if (entry.enrolledTimestamp.RealValue < enrolledTimestamp.RealValue) {
|
|
|
+ if (entry.enrolledTimestamp.lt(enrolledTimestamp)) {
|
|
|
if (!this.rules.PlayAlreadyStartedNotesFromCursorPosition) {
|
|
|
if (entry.enrolledTimestamp.RealValue / enrolledTimestamp.RealValue < 0.99) {
|
|
|
continue; // don't play notes that started before current cursor position
|