From a4e6343be7470bb06eef88d3fd6d3374284cf0ee Mon Sep 17 00:00:00 2001 From: Lauri Kasanen Date: Mon, 8 Nov 2021 11:49:31 +0200 Subject: [PATCH] EncodeManager: check for changed dynamicQualityMin/Max every frame --- common/rfb/EncodeManager.cxx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/common/rfb/EncodeManager.cxx b/common/rfb/EncodeManager.cxx index 9a079bc..c6c29f7 100644 --- a/common/rfb/EncodeManager.cxx +++ b/common/rfb/EncodeManager.cxx @@ -356,6 +356,13 @@ void EncodeManager::doUpdate(bool allowLossy, const Region& changed_, if (conn->cp.kasmPassed[ConnParams::KASM_MAX_VIDEO_RESOLUTION]) updateMaxVideoRes(&maxVideoX, &maxVideoY); + // The dynamic quality params may have changed + if (Server::dynamicQualityMax && Server::dynamicQualityMax <= 9 && + Server::dynamicQualityMax > Server::dynamicQualityMin) { + dynamicQualityMin = Server::dynamicQualityMin; + dynamicQualityOff = Server::dynamicQualityMax - Server::dynamicQualityMin; + } + prepareEncoders(allowLossy); changed = changed_;