From 70a4f7e749de39f3d72ca6b7a142c516f3bd6af5 Mon Sep 17 00:00:00 2001 From: itsmattkc <34096995+itsmattkc@users.noreply.github.com> Date: Mon, 16 May 2022 17:26:47 -0700 Subject: [PATCH] viewer: queue based on frame rate --- app/widget/viewer/viewer.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/widget/viewer/viewer.cpp b/app/widget/viewer/viewer.cpp index 3a3ec6070..452fb49c2 100644 --- a/app/widget/viewer/viewer.cpp +++ b/app/widget/viewer/viewer.cpp @@ -60,8 +60,6 @@ QVector ViewerWidget::instances_; // changing values. 1/4 second seems to be a good middleground. const rational ViewerWidget::kAudioPlaybackInterval = rational(1, 4); -const int kMaxPreQueueSize = 8; - ViewerWidget::ViewerWidget(QWidget *parent) : super(false, true, parent), playback_speed_(0), @@ -988,7 +986,10 @@ int ViewerWidget::DeterminePlaybackQueueSize() int remaining_frames = (end_ts - GetTimestamp()) / playback_speed_; - return qMin(kMaxPreQueueSize, remaining_frames); + // Generate maximum queue + int max_frames = qCeil(kAudioPlaybackInterval.toDouble() / timebase().toDouble()); + + return qMin(max_frames, remaining_frames); } void ViewerWidget::UpdateStack()