1
0
mirror of https://github.com/cookiengineer/audacity synced 2026-01-02 06:08:44 +01:00

New method of TrackShifter moves a calculation out of ClipMenus

This commit is contained in:
Paul Licameli
2020-09-13 22:59:24 -04:00
parent bc7f527a3b
commit 4f159a7629
4 changed files with 33 additions and 13 deletions

View File

@@ -1344,6 +1344,20 @@ public:
bool SyncLocks() override { return true; }
double HintOffsetLarger(double desiredOffset) override
{
// set it to a sample point, and minimum of 1 sample point
bool positive = (desiredOffset > 0);
if (!positive)
desiredOffset *= -1;
double nSamples = rint(mpTrack->GetRate() * desiredOffset);
nSamples = std::max(nSamples, 1.0);
desiredOffset = nSamples / mpTrack->GetRate();
if (!positive)
desiredOffset *= -1;
return desiredOffset;
}
private:
std::shared_ptr<WaveTrack> mpTrack;
};