diff --git a/frontend/settings/OBSBasicSettings.cpp b/frontend/settings/OBSBasicSettings.cpp index d0ffc3c2b..6e47f93ac 100644 --- a/frontend/settings/OBSBasicSettings.cpp +++ b/frontend/settings/OBSBasicSettings.cpp @@ -5591,8 +5591,6 @@ void OBSBasicSettings::UpdateAdvNetworkGroup() #endif } -extern bool MultitrackVideoDeveloperModeEnabled(); - void OBSBasicSettings::UpdateMultitrackVideo() { // Technically, it should currently be safe to toggle multitrackVideo @@ -5615,15 +5613,6 @@ void OBSBasicSettings::UpdateMultitrackVideo() ui->enableMultitrackVideo->setChecked(false); } - // Enhanced Broadcasting works on Windows, Apple Silicon Macs, and Linux. - // For other OS variants, only enable the GUI controls if developer mode was invoked. -#if !defined(_WIN32) && !(defined(__APPLE__) && defined(__aarch64__)) && !defined(__linux__) - available = available && MultitrackVideoDeveloperModeEnabled(); -#endif - - if (IsCustomService()) - available = available && MultitrackVideoDeveloperModeEnabled(); - ui->multitrackVideoGroupBox->setVisible(available); ui->enableMultitrackVideo->setEnabled(toggle_available); @@ -5644,10 +5633,10 @@ void OBSBasicSettings::UpdateMultitrackVideo() !ui->multitrackVideoMaximumVideoTracksAuto->isChecked()); ui->multitrackVideoAdditionalCanvas->setEnabled(toggle_available && ui->enableMultitrackVideo->isChecked()); - ui->multitrackVideoStreamDumpEnable->setVisible(available && MultitrackVideoDeveloperModeEnabled()); - ui->multitrackVideoConfigOverrideEnable->setVisible(available && MultitrackVideoDeveloperModeEnabled()); - ui->multitrackVideoConfigOverrideLabel->setVisible(available && MultitrackVideoDeveloperModeEnabled()); - ui->multitrackVideoConfigOverride->setVisible(available && MultitrackVideoDeveloperModeEnabled()); + ui->multitrackVideoStreamDumpEnable->setVisible(available && IsCustomService()); + ui->multitrackVideoConfigOverrideEnable->setVisible(available && IsCustomService()); + ui->multitrackVideoConfigOverrideLabel->setVisible(available && IsCustomService()); + ui->multitrackVideoConfigOverride->setVisible(available && IsCustomService()); ui->multitrackVideoStreamDumpEnable->setEnabled(toggle_available && ui->enableMultitrackVideo->isChecked()); ui->multitrackVideoConfigOverrideEnable->setEnabled(toggle_available && ui->enableMultitrackVideo->isChecked()); diff --git a/frontend/utility/BasicOutputHandler.cpp b/frontend/utility/BasicOutputHandler.cpp index 1a0e69241..f670fa545 100644 --- a/frontend/utility/BasicOutputHandler.cpp +++ b/frontend/utility/BasicOutputHandler.cpp @@ -231,7 +231,8 @@ BasicOutputHandler::BasicOutputHandler(OBSBasic *main_) : main(main_) auto service = main_->GetService(); OBSDataAutoRelease settings = obs_service_get_settings(service); auto multitrack_enabled = config_get_bool(main->Config(), "Stream1", "EnableMultitrackVideo") && - obs_data_has_user_value(settings, "multitrack_video_configuration_url"); + (obs_data_has_user_value(settings, "multitrack_video_configuration_url") || + strcmp(obs_service_get_id(service), "rtmp_custom") == 0); if (multitrack_enabled) multitrackVideo = make_unique(); diff --git a/frontend/utility/MultitrackVideoOutput.cpp b/frontend/utility/MultitrackVideoOutput.cpp index 0c5995780..bc8823ed3 100644 --- a/frontend/utility/MultitrackVideoOutput.cpp +++ b/frontend/utility/MultitrackVideoOutput.cpp @@ -410,8 +410,7 @@ void MultitrackVideoOutput::PrepareStreaming( rtmp_url.has_value() ? rtmp_url->c_str() : "", vod_track_info_storage->array ? vod_track_info_storage->array : "No", canvasNames.c_str()); - const bool custom_config_only = auto_config_url.isEmpty() && MultitrackVideoDeveloperModeEnabled() && - custom_config.has_value() && + const bool custom_config_only = auto_config_url.isEmpty() && custom_config.has_value() && strcmp(obs_service_get_id(service), "rtmp_custom") == 0; if (!custom_config_only) {