From 76ddbe11d0754957a729888d0a4c478b664c3d9f Mon Sep 17 00:00:00 2001 From: jpark37 Date: Mon, 4 Apr 2022 00:13:24 -0700 Subject: [PATCH] UI: Add high-precision sRGB support Remove warnings about using 10-bit formats with SDR color spaces. --- UI/data/locale/en-US.ini | 5 ++--- UI/window-basic-settings.cpp | 14 +++++++------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/UI/data/locale/en-US.ini b/UI/data/locale/en-US.ini index d38835e1c..9bb6247fc 100644 --- a/UI/data/locale/en-US.ini +++ b/UI/data/locale/en-US.ini @@ -1035,9 +1035,8 @@ Basic.Settings.Advanced.General.ProcessPriority.Normal="Normal" Basic.Settings.Advanced.General.ProcessPriority.BelowNormal="Below Normal" Basic.Settings.Advanced.General.ProcessPriority.Idle="Idle" Basic.Settings.Advanced.FormatWarning="Warning: Color formats other than NV12/P010 are primarily intended for recording, and are not recommended when streaming. Streaming may incur increased CPU usage due to color format conversion." -Basic.Settings.Advanced.FormatWarningI010="Warning: I010 only works with Rec. 2020 for now." -Basic.Settings.Advanced.FormatWarningP010="Warning: P010 only works with Rec. 2020 for now." -Basic.Settings.Advanced.FormatWarning2020="Warning: Rec. 2020 only works with I010/P010 for now." +Basic.Settings.Advanced.FormatWarning10BitSdr="Warning: 10-bit formats are more commonly used with HDR color spaces." +Basic.Settings.Advanced.FormatWarning2020="Warning: Rec. 2020 should use a format with more precision." Basic.Settings.Advanced.Audio.BufferingTime="Audio Buffering Time" Basic.Settings.Advanced.Video.ColorFormat="Color Format" Basic.Settings.Advanced.Video.ColorSpace="Color Space" diff --git a/UI/window-basic-settings.cpp b/UI/window-basic-settings.cpp index 5679ebf67..b7c000a74 100644 --- a/UI/window-basic-settings.cpp +++ b/UI/window-basic-settings.cpp @@ -2533,7 +2533,9 @@ void OBSBasicSettings::LoadAudioSettings() void OBSBasicSettings::UpdateColorFormatSpaceWarning() { const QString text = ui->colorFormat->currentText(); - if (ui->colorSpace->currentIndex() >= 3) { + switch (ui->colorSpace->currentIndex()) { + case 3: /* Rec.2020 (PQ) */ + case 4: /* Rec.2020 (HLG) */ if (text == "P010") { ui->advancedMsg2->clear(); } else if (text == "I010") { @@ -2543,15 +2545,13 @@ void OBSBasicSettings::UpdateColorFormatSpaceWarning() ui->advancedMsg2->setText(QTStr( "Basic.Settings.Advanced.FormatWarning2020")); } - } else { + break; + default: if (text == "NV12") { ui->advancedMsg2->clear(); - } else if (text == "I010") { + } else if ((text == "I010") || (text == "P010")) { ui->advancedMsg2->setText(QTStr( - "Basic.Settings.Advanced.FormatWarningI010")); - } else if (text == "P010") { - ui->advancedMsg2->setText(QTStr( - "Basic.Settings.Advanced.FormatWarningP010")); + "Basic.Settings.Advanced.FormatWarning10BitSdr")); } else { ui->advancedMsg2->setText( QTStr("Basic.Settings.Advanced.FormatWarning"));