From 21ec81ebcc43e465160fcc880e4088c64d407a23 Mon Sep 17 00:00:00 2001 From: jp9000 Date: Sun, 8 Feb 2015 01:31:02 -0800 Subject: [PATCH] UI: Do not allow invalid downscale/rescale values For the 'output resolution' setting in video settings, do not show values in the list that it does not support (width must be aligned to a 128bit boundry, and height must be divisible by two) For the 'rescale' settings in advanced outputs, the scales must all be divisible by two. --- obs/window-basic-settings.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/obs/window-basic-settings.cpp b/obs/window-basic-settings.cpp index cc47f1373..343586d2c 100644 --- a/obs/window-basic-settings.cpp +++ b/obs/window-basic-settings.cpp @@ -424,6 +424,11 @@ void OBSBasicSettings::ResetDownscales(uint32_t cx, uint32_t cy, uint32_t outDownscaleCX = uint32_t(double(out_cx) / vals[idx]); uint32_t outDownscaleCY = uint32_t(double(out_cy) / vals[idx]); + downscaleCX &= 0xFFFFFFFC; + downscaleCY &= 0xFFFFFFFE; + outDownscaleCX &= 0xFFFFFFFE; + outDownscaleCY &= 0xFFFFFFFE; + string res = ResString(downscaleCX, downscaleCY); string outRes = ResString(outDownscaleCX, outDownscaleCY); ui->outputResolution->addItem(res.c_str());