diff --git a/app/audio/audiovisualwaveform.cpp b/app/audio/audiovisualwaveform.cpp index 82c9a3b2d..7f3d06abd 100644 --- a/app/audio/audiovisualwaveform.cpp +++ b/app/audio/audiovisualwaveform.cpp @@ -32,7 +32,7 @@ AudioVisualWaveform::AudioVisualWaveform() : { // Must be a power of 2 static const rational kMinimumSampleRate = rational(1, 8); - static const rational kMaximumSampleRate = 8192; + static const rational kMaximumSampleRate = 1024; for (rational i=kMinimumSampleRate; i<=kMaximumSampleRate; i*=2) { mipmapped_data_.insert({i, Sample()}); diff --git a/app/widget/timebased/timebasedview.cpp b/app/widget/timebased/timebasedview.cpp index b9ae6b68f..05a749976 100644 --- a/app/widget/timebased/timebasedview.cpp +++ b/app/widget/timebased/timebasedview.cpp @@ -29,8 +29,6 @@ namespace olive { -const double TimeBasedView::kMaximumScale = 8192; - TimeBasedView::TimeBasedView(QWidget *parent) : HandMovableView(parent), playhead_scene_left_(-1), @@ -53,9 +51,6 @@ TimeBasedView::TimeBasedView(QWidget *parent) : // Signal to update bounding rect when the scene changes connect(&scene_, &QGraphicsScene::changed, this, &TimeBasedView::UpdateSceneRect); - // Always enforce maximum scale - SetMaximumScale(kMaximumScale); - // Workaround for Qt drawing issues with the default MinimalViewportUpdate. While this might be // slower (Qt documentation says it may actually be faster in some situations), // MinimalViewportUpdate causes all sorts of graphical crud building up in the scene diff --git a/app/widget/timebased/timebasedview.h b/app/widget/timebased/timebasedview.h index d7a6f4b49..247948b61 100644 --- a/app/widget/timebased/timebasedview.h +++ b/app/widget/timebased/timebasedview.h @@ -36,8 +36,6 @@ class TimeBasedView : public HandMovableView, public TimeScaledObject public: TimeBasedView(QWidget* parent = nullptr); - static const double kMaximumScale; - void EnableSnap(const QVector &points); void DisableSnap(); bool IsSnapped() const diff --git a/app/widget/timebased/timescaledobject.cpp b/app/widget/timebased/timescaledobject.cpp index 3d74ed026..93da7c171 100644 --- a/app/widget/timebased/timescaledobject.cpp +++ b/app/widget/timebased/timescaledobject.cpp @@ -27,14 +27,16 @@ namespace olive { +// Keep this aligned with the kMaximumSampleRate in AudioVisualWaveform +const double TimeScaledObject::kMaximumScale = 1024; + const int TimeScaledObject::kCalculateDimensionsPadding = 10; TimeScaledObject::TimeScaledObject() : scale_(1.0), min_scale_(0), - max_scale_(DBL_MAX) + max_scale_(kMaximumScale) { - } void TimeScaledObject::SetTimebase(const rational &timebase) diff --git a/app/widget/timebased/timescaledobject.h b/app/widget/timebased/timescaledobject.h index c9e86eeb2..cf734fb60 100644 --- a/app/widget/timebased/timescaledobject.h +++ b/app/widget/timebased/timescaledobject.h @@ -54,6 +54,8 @@ public: double TimeToScene(const rational& time) const; rational SceneToTime(const double &x, bool round = false) const; + static const double kMaximumScale; + protected: virtual void TimebaseChangedEvent(const rational&){} diff --git a/app/widget/timelinewidget/timelinewidget.cpp b/app/widget/timelinewidget/timelinewidget.cpp index 862178736..fcb22b3e1 100644 --- a/app/widget/timelinewidget/timelinewidget.cpp +++ b/app/widget/timelinewidget/timelinewidget.cpp @@ -179,7 +179,6 @@ TimelineWidget::TimelineWidget(QWidget *parent) : // FIXME: Magic number SetScale(90.0); - SetMaximumScale(TimeBasedView::kMaximumScale); SetAutoSetTimebase(false); connect(Core::instance(), &Core::ToolChanged, this, &TimelineWidget::ToolChanged);