UI: Add more information to describe output format

In advanced settings
Also enable translation for color format
master
mvji 2022-07-12 12:08:26 +02:00 committed by Matt Gajownik
parent e2e06f6f08
commit bbeafeabdd
4 changed files with 28 additions and 34 deletions

View File

@ -1059,6 +1059,12 @@ Basic.Settings.Advanced.FormatWarning10BitSdr="Warning: 10-bit formats are more
Basic.Settings.Advanced.FormatWarning2100="Warning: Rec. 2100 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.ColorFormat.NV12="NV12 (8-bit, 4:2:0, 2 planes)"
Basic.Settings.Advanced.Video.ColorFormat.I420="I420 (8-bit, 4:2:0, 3 planes)"
Basic.Settings.Advanced.Video.ColorFormat.I444="I444 (8-bit, 4:4:4, 3 planes)"
Basic.Settings.Advanced.Video.ColorFormat.P010="P010 (10-bit, 4:2:0, 2 planes)"
Basic.Settings.Advanced.Video.ColorFormat.I010="I010 (10-bit, 4:2:0, 3 planes)"
Basic.Settings.Advanced.Video.ColorFormat.RGB="RGB (8-bit)"
Basic.Settings.Advanced.Video.ColorSpace="Color Space"
Basic.Settings.Advanced.Video.ColorSpace.sRGB="sRGB"
Basic.Settings.Advanced.Video.ColorSpace.601="Rec. 601"

View File

@ -5050,38 +5050,7 @@
</widget>
</item>
<item row="2" column="1">
<widget class="QComboBox" name="colorFormat">
<item>
<property name="text">
<string notr="true">NV12</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">I420</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">I444</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">P010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">I010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">RGB</string>
</property>
</item>
</widget>
<widget class="QComboBox" name="colorFormat"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_33">

View File

@ -707,6 +707,7 @@ OBSBasicSettings::OBSBasicSettings(QWidget *parent)
LoadEncoderTypes();
LoadColorRanges();
LoadColorSpaces();
LoadColorFormats();
LoadFormats();
auto ReloadAudioSources = [](void *data, calldata_t *param) {
@ -1060,6 +1061,23 @@ void OBSBasicSettings::LoadColorSpaces()
ui->colorSpace->addItem(CS_2100HLG_STR, "2100HLG");
}
#define CF_NV12_STR QTStr("Basic.Settings.Advanced.Video.ColorFormat.NV12")
#define CF_I420_STR QTStr("Basic.Settings.Advanced.Video.ColorFormat.I420")
#define CF_I444_STR QTStr("Basic.Settings.Advanced.Video.ColorFormat.I444")
#define CF_P010_STR QTStr("Basic.Settings.Advanced.Video.ColorFormat.P010")
#define CF_I010_STR QTStr("Basic.Settings.Advanced.Video.ColorFormat.I010")
#define CF_RGB_STR QTStr("Basic.Settings.Advanced.Video.ColorFormat.RGB")
void OBSBasicSettings::LoadColorFormats()
{
ui->colorFormat->addItem(CF_NV12_STR, "NV12");
ui->colorFormat->addItem(CF_I420_STR, "I420");
ui->colorFormat->addItem(CF_I444_STR, "I444");
ui->colorFormat->addItem(CF_P010_STR, "P010");
ui->colorFormat->addItem(CF_I010_STR, "I010");
ui->colorFormat->addItem(CF_RGB_STR, "RGB");
}
#define AV_FORMAT_DEFAULT_STR \
QTStr("Basic.Settings.Output.Adv.FFmpeg.FormatDefault")
#define AUDIO_STR QTStr("Basic.Settings.Output.Adv.FFmpeg.FormatAudio")
@ -2674,7 +2692,7 @@ void OBSBasicSettings::LoadAdvancedSettings()
UpdateColorFormatSpaceWarning();
SetComboByName(ui->colorFormat, videoColorFormat);
SetComboByValue(ui->colorFormat, videoColorFormat);
SetComboByValue(ui->colorSpace, videoColorSpace);
SetComboByValue(ui->colorRange, videoColorRange);
ui->sdrWhiteLevel->setValue(sdrWhiteLevel);
@ -3363,7 +3381,7 @@ void OBSBasicSettings::SaveAdvancedSettings()
ui->resetOSXVSync->isChecked());
#endif
SaveCombo(ui->colorFormat, "Video", "ColorFormat");
SaveComboData(ui->colorFormat, "Video", "ColorFormat");
SaveComboData(ui->colorSpace, "Video", "ColorSpace");
SaveComboData(ui->colorRange, "Video", "ColorRange");
SaveSpinBox(ui->sdrWhiteLevel, "Video", "SdrWhiteLevel");

View File

@ -228,6 +228,7 @@ private:
void LoadEncoderTypes();
void LoadColorRanges();
void LoadColorSpaces();
void LoadColorFormats();
void LoadFormats();
void ReloadCodecs(const ff_format_desc *formatDesc);