Basic UI: Add advanced encoder settings

This commit is contained in:
jp9000
2014-08-25 07:48:51 -07:00
parent 938b7c4395
commit ded272e777
4 changed files with 171 additions and 0 deletions

View File

@@ -438,6 +438,10 @@ bool OBSBasic::InitBasicConfigDefaults()
config_set_default_uint (basicConfig, "SimpleOutput", "RetryDelay", 2);
config_set_default_uint (basicConfig, "SimpleOutput", "MaxRetries",
20);
config_set_default_bool (basicConfig, "SimpleOutput", "UseAdvanced",
false);
config_set_default_string(basicConfig, "SimpleOutput", "Preset",
"veryfast");
config_set_default_uint (basicConfig, "Video", "BaseCX", cx);
config_set_default_uint (basicConfig, "Video", "BaseCY", cy);
@@ -1976,11 +1980,22 @@ void OBSBasic::SetupEncoders()
"VBitrate");
int audioBitrate = config_get_uint(basicConfig, "SimpleOutput",
"ABitrate");
bool advanced = config_get_bool(basicConfig, "SimpleOutput",
"UseAdvanced");
const char *preset = config_get_string(basicConfig,
"SimpleOutput", "Preset");
const char *custom = config_get_string(basicConfig,
"SimpleOutput", "x264Settings");
obs_data_set_int(x264Settings, "bitrate", videoBitrate);
obs_data_set_int(x264Settings, "buffer_size", videoBitrate);
obs_data_set_bool(x264Settings, "cbr", true);
if (advanced) {
obs_data_set_string(x264Settings, "preset", preset);
obs_data_set_string(x264Settings, "x264opts", custom);
}
obs_data_set_int(aacSettings, "bitrate", audioBitrate);
obs_encoder_update(x264, x264Settings);