1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-12-31 08:58:43 +01:00

Time track properly warps the MIDI event times (but not pitches)

mMidiPlaySpeed doesn't handle all of the options provided by time tracks,
and in fact doesn't even use time tracks.  Using the time track
instead allows note tracks to remain synchronized with the rest of the audio.

mMidiPlaySpeed _did_ work where it was used in the transcription tool
bar, but that already updates a time track so no special handling is
needed.
This commit is contained in:
Pokechu22
2017-02-22 12:39:12 -08:00
committed by Paul Licameli
parent 8b37ac5c39
commit c50567e1db
3 changed files with 25 additions and 20 deletions

View File

@@ -56,7 +56,6 @@ class TimeTrack;
class AudioThread;
class Meter;
class SelectedRegion;
class TimeTrack;
class AudacityProject;
@@ -227,9 +226,6 @@ class AUDACITY_DLL_API AudioIO final {
public:
bool SetHasSolo(bool hasSolo);
bool GetHasSolo() { return mHasSolo; }
/// Sets the speed for midi playback, based off of the transcription speed.
/// This takes a percentage, so passing 100 will play at normal speed.
void SetMidiPlaySpeed(double s) { mMidiPlaySpeed = s * 0.01; }
#endif
/** \brief Returns true if the stream is active, or even if audio I/O is
@@ -527,9 +523,6 @@ private:
long mMidiLatency;
/// Latency of MIDI synthesizer
long mSynthLatency;
/// A copy of TranscriptionToolBar::mPlaySpeed - a linear speed offset.
/// Should be replaced with use of mTimeTrack
double mMidiPlaySpeed;
// These fields are used to synchronize MIDI with audio: