Skip to content

Commit

Permalink
Track notes by default in Playback
Browse files Browse the repository at this point in the history
  • Loading branch information
melanchall committed Jan 24, 2025
1 parent 88ce4b5 commit 7900406
Show file tree
Hide file tree
Showing 8 changed files with 281 additions and 183 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ public void EventPlayed_InterruptNotesOnStop()
stopPeriod: stopPeriod,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = true;
},
afterStart: NoPlaybackAction,
Expand Down Expand Up @@ -117,7 +118,7 @@ public void EventPlayed_MoveToStart(double speed)
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveToStart(),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.Zero, "stopped"),
Expand Down Expand Up @@ -211,7 +212,7 @@ public void EventPlayed_MoveForward_BeyondDuration()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveForward((MetricTimeSpan)stepAfterStop),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.FromSeconds(4), "stopped"),
Expand Down Expand Up @@ -300,7 +301,7 @@ public void EventPlayed_MoveBack_BeyondZero()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveBack((MetricTimeSpan)stepAfterStop),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.Zero, "stopped"),
Expand Down Expand Up @@ -338,7 +339,7 @@ public void EventPlayed_MoveToTime()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveToTime(new MetricTimeSpan(0, 0, 1)),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.FromSeconds(1), "stopped"),
Expand Down Expand Up @@ -375,7 +376,7 @@ public void EventPlayed_MoveToTime_BeyondDuration()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveToTime(new MetricTimeSpan(0, 0, 10)),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.FromSeconds(4), "stopped"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1546,6 +1546,7 @@ public void CheckPlaybackMetadata_NoteCallback_InterruptNotesOnStop()
},
setupPlayback: playback =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = true;
playback.NoteCallback = NoteCallback;
});
Expand Down Expand Up @@ -1611,6 +1612,7 @@ public void CheckPlaybackMetadata_NoteCallback_MoveToStart()
},
setupPlayback: playback =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = false;
playback.NoteCallback = NoteCallback;
});
Expand Down Expand Up @@ -1722,6 +1724,7 @@ public void CheckPlaybackMetadata_NoteCallback_MoveForward_BeyondDuration()
},
setupPlayback: playback =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = false;
playback.NoteCallback = NoteCallback;
});
Expand Down Expand Up @@ -1851,6 +1854,7 @@ public void CheckPlaybackMetadata_NoteCallback_MoveBack_BeyondZero()
},
setupPlayback: playback =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = false;
playback.NoteCallback = NoteCallback;
});
Expand Down Expand Up @@ -1947,6 +1951,7 @@ public void CheckPlaybackMetadata_NoteCallback_MoveToTime_BeyondDuration()
},
setupPlayback: playback =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = false;
playback.NoteCallback = NoteCallback;
});
Expand Down
6 changes: 5 additions & 1 deletion DryWetMidi.Tests/Multimedia/Playback/PlaybackTests.Misc.cs
Original file line number Diff line number Diff line change
Expand Up @@ -732,7 +732,11 @@ public void InterruptNotesOnStop()
},
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: (context, playback) => playback.InterruptNotesOnStop = true,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = true;
},
afterStart: NoPlaybackAction,
afterStop: NoPlaybackAction,
afterResume: NoPlaybackAction);
Expand Down
25 changes: 21 additions & 4 deletions DryWetMidi.Tests/Multimedia/Playback/PlaybackTests.NoteCallback.cs
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,7 @@ public void NoteCallback_InterruptNotesOnStop()
stopPeriod: stopPeriod,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;
playback.InterruptNotesOnStop = true;
playback.NoteCallback = NoteCallback;
},
Expand Down Expand Up @@ -215,7 +216,11 @@ public void NoteCallback_MoveToStart(double speed)
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: (context, playback) => playback.NoteCallback = NoteCallback,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;
playback.NoteCallback = NoteCallback;
},
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveToStart(),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.Zero, "stopped"),
Expand Down Expand Up @@ -309,7 +314,11 @@ public void NoteCallback_MoveForward_BeyondDuration()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: (context, playback) => playback.NoteCallback = NoteCallback,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;
playback.NoteCallback = NoteCallback;
},
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveForward((MetricTimeSpan)stepAfterStop),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.FromSeconds(4), "stopped"),
Expand Down Expand Up @@ -398,7 +407,11 @@ public void NoteCallback_MoveBack_BeyondZero()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: (context, playback) => playback.NoteCallback = NoteCallback,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;
playback.NoteCallback = NoteCallback;
},
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveBack((MetricTimeSpan)stepAfterStop),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.Zero, "stopped"),
Expand Down Expand Up @@ -473,7 +486,11 @@ public void NoteCallback_MoveToTime_BeyondDuration()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: (context, playback) => playback.NoteCallback = NoteCallback,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;
playback.NoteCallback = NoteCallback;
},
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveToTime(new MetricTimeSpan(0, 0, 10)),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.FromSeconds(4), "stopped"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -792,6 +792,8 @@ public void SnapToNotesStarts()
stopPeriod: stopPeriod,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;

snapPointsGroup = playback.Snapping.SnapToNotesStarts();
var snapPointsGroup2 = playback.Snapping.SnapToNotesStarts();
Assert.That(playback.Snapping.SnapPoints, Has.Count.EqualTo(2), "Count of snap points is invalid.");
Expand Down Expand Up @@ -852,6 +854,8 @@ public void SnapToNotesEnds()
stopPeriod: stopPeriod,
setupPlayback: (context, playback) =>
{
playback.TrackNotes = false;

snapPointsGroup = playback.Snapping.SnapToNotesEnds();
var snapPointsGroup2 = playback.Snapping.SnapToNotesEnds();
Assert.That(playback.Snapping.SnapPoints, Has.Count.EqualTo(2), "Count of snap points is invalid.");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public void MoveToStart(double speed)
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveToStart(),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.Zero, "stopped"),
Expand Down Expand Up @@ -163,7 +163,7 @@ public void MoveForward_BeyondDuration()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveForward((MetricTimeSpan)stepAfterStop),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.FromSeconds(4), "stopped"),
Expand Down Expand Up @@ -252,7 +252,7 @@ public void MoveBack_BeyondZero()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveBack((MetricTimeSpan)stepAfterStop),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.Zero, "stopped"),
Expand Down Expand Up @@ -327,7 +327,7 @@ public void MoveToTime_BeyondDuration()
eventsWillBeSent: new EventToSend[] { },
stopAfter: stopAfter,
stopPeriod: stopPeriod,
setupPlayback: NoPlaybackAction,
setupPlayback: (context, playback) => playback.TrackNotes = false,
afterStart: NoPlaybackAction,
afterStop: (context, playback) => playback.MoveToTime(new MetricTimeSpan(0, 0, 10)),
afterResume: (context, playback) => CheckCurrentTime(playback, TimeSpan.FromSeconds(4), "stopped"),
Expand Down
Loading

0 comments on commit 7900406

Please sign in to comment.