Răsfoiți Sursa

frontend: Allow Network Optimizations with multitrack video

"Enable network optimizations" in the Advanced Settings is referred to
as `NewSocketLoop` in the code. This feature was incompatible with
multitrack video but now works properly. Remove it from the
incompatible settings check.
Ruwen Hahn 1 an în urmă
părinte
comite
9bba6e52ff

+ 1 - 4
frontend/utility/AdvancedOutput.cpp

@@ -683,14 +683,11 @@ bool AdvancedOutput::StartStreaming(obs_service_t *service)
 #ifdef _WIN32
 	bool enableNewSocketLoop = config_get_bool(main->Config(), "Output", "NewSocketLoopEnable");
 	bool enableLowLatencyMode = config_get_bool(main->Config(), "Output", "LowLatencyEnable");
-#else
-	bool enableNewSocketLoop = false;
 #endif
 	bool enableDynBitrate = config_get_bool(main->Config(), "Output", "DynamicBitrate");
 
 	if (multitrackVideo && multitrackVideoActive &&
-	    !multitrackVideo->HandleIncompatibleSettings(main, main->Config(), service, enableNewSocketLoop,
-							 enableDynBitrate)) {
+	    !multitrackVideo->HandleIncompatibleSettings(main, main->Config(), service, enableDynBitrate)) {
 		multitrackVideoActive = false;
 		return false;
 	}

+ 1 - 9
frontend/utility/MultitrackVideoOutput.cpp

@@ -545,7 +545,7 @@ void MultitrackVideoOutput::StopStreaming()
 }
 
 bool MultitrackVideoOutput::HandleIncompatibleSettings(QWidget *parent, config_t *config, obs_service_t *service,
-						       bool &enableNewSocketLoop, bool &enableDynBitrate)
+						       bool &enableDynBitrate)
 {
 	QString incompatible_settings;
 	QString where_to_disable;
@@ -570,10 +570,6 @@ bool MultitrackVideoOutput::HandleIncompatibleSettings(QWidget *parent, config_t
 		num += 1;
 	};
 
-#ifdef _WIN32
-	check_setting(enableNewSocketLoop, "Basic.Settings.Advanced.Network.EnableNewSocketLoop",
-		      "Basic.Settings.Advanced.Network");
-#endif
 	check_setting(enableDynBitrate, "Basic.Settings.Output.DynamicBitrate.Beta", "Basic.Settings.Advanced.Network");
 
 	if (incompatible_settings.isEmpty())
@@ -609,13 +605,9 @@ bool MultitrackVideoOutput::HandleIncompatibleSettings(QWidget *parent, config_t
 	     incompatible_settings_list.toUtf8().constData(), action);
 
 	if (mb.clickedButton() == this_stream || mb.clickedButton() == all_streams) {
-		enableNewSocketLoop = false;
 		enableDynBitrate = false;
 
 		if (mb.clickedButton() == all_streams) {
-#ifdef _WIN32
-			config_set_bool(config, "Output", "NewSocketLoopEnable", false);
-#endif
 			config_set_bool(config, "Output", "DynamicBitrate", false);
 		}
 

+ 1 - 1
frontend/utility/MultitrackVideoOutput.hpp

@@ -32,7 +32,7 @@ public:
 	void StartedStreaming();
 	void StopStreaming();
 	bool HandleIncompatibleSettings(QWidget *parent, config_t *config, obs_service_t *service,
-					bool &enableNewSocketLoop, bool &enableDynBitrate);
+					bool &enableDynBitrate);
 
 	OBSOutputAutoRelease StreamingOutput()
 	{

+ 1 - 4
frontend/utility/SimpleOutput.cpp

@@ -674,14 +674,11 @@ bool SimpleOutput::StartStreaming(obs_service_t *service)
 #ifdef _WIN32
 	bool enableNewSocketLoop = config_get_bool(main->Config(), "Output", "NewSocketLoopEnable");
 	bool enableLowLatencyMode = config_get_bool(main->Config(), "Output", "LowLatencyEnable");
-#else
-	bool enableNewSocketLoop = false;
 #endif
 	bool enableDynBitrate = config_get_bool(main->Config(), "Output", "DynamicBitrate");
 
 	if (multitrackVideo && multitrackVideoActive &&
-	    !multitrackVideo->HandleIncompatibleSettings(main, main->Config(), service, enableNewSocketLoop,
-							 enableDynBitrate)) {
+	    !multitrackVideo->HandleIncompatibleSettings(main, main->Config(), service, enableDynBitrate)) {
 		multitrackVideoActive = false;
 		return false;
 	}