From ea68a817c1947b2001775d42755d260d66f4d37f Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Thu, 7 Jan 2021 14:09:38 +0800 Subject: Wait voice now checks for output level instead of polyphony. Fluidsynth sometimes screw up the number of currently sounding voices. --- qmidiplayer-desktop/qmpmainwindow.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'qmidiplayer-desktop/qmpmainwindow.cpp') diff --git a/qmidiplayer-desktop/qmpmainwindow.cpp b/qmidiplayer-desktop/qmpmainwindow.cpp index 05b7ec3..1c825ee 100644 --- a/qmidiplayer-desktop/qmpmainwindow.cpp +++ b/qmidiplayer-desktop/qmpmainwindow.cpp @@ -379,7 +379,7 @@ void qmpMainWindow::switchTrack(QString s, bool interrupt) { player->playerThread(); if (settings->getOptionBool("Midi/WaitVoice") && player->isFinished()) - while (internalfluid->getPolyphone() > 0) + while (internalfluid->getOutputLevel() > -100) std::this_thread::sleep_for(std::chrono::milliseconds(10)); }); #ifdef _WIN32 @@ -534,7 +534,7 @@ void qmpMainWindow::on_pbPlayPause_clicked() { player->playerThread(); if (settings->getOptionBool("Midi/WaitVoice") && player->isFinished()) - while (internalfluid->getPolyphone() > 0) + while (internalfluid->getOutputLevel() > -100) std::this_thread::sleep_for(std::chrono::milliseconds(10)); }); #ifdef _WIN32 -- cgit v1.2.3