connect(ui->stop_btn, &QPushButton::clicked, this, &MainWindow::stop_clicked);
ui->stop_btn->setEnabled(false);
+ connect(ui->speed_slider, &QAbstractSlider::valueChanged, this, &MainWindow::speed_slider_changed);
+
connect(ui->playlist_duplicate_btn, &QPushButton::clicked, this, &MainWindow::playlist_duplicate);
connect(ui->playlist_remove_btn, &QPushButton::clicked, this, &MainWindow::playlist_remove);
ui->stop_btn->setEnabled(false);
}
+void MainWindow::speed_slider_changed(int percent)
+{
+ float speed = percent / 100.0f;
+ ui->speed_label->setText(QString::fromStdString(to_string(percent) + "%"));
+ live_player->set_master_speed(speed);
+}
+
void MainWindow::live_player_done()
{
playlist_selection_changed();
});
}
+void MainWindow::set_master_speed(float speed)
+{
+ speed = min(max(speed, 0.1f), 2.0f);
+
+ post_to_main_thread([this, speed] {
+ int percent = lrintf(speed * 100.0f);
+ ui->speed_slider->blockSignals(true);
+ ui->speed_slider->setValue(percent);
+ ui->speed_slider->blockSignals(false);
+ ui->speed_label->setText(QString::fromStdString(to_string(percent) + "%"));
+ });
+
+ live_player->set_master_speed(speed);
+}
+
void MainWindow::cue_in()
{
post_to_main_thread([this] { cue_in_clicked(); });