Projects
Multimedia
obs-studio
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 129
View file
obs-studio.changes
Changed
@@ -1,4 +1,16 @@ ------------------------------------------------------------------- +Sat Sep 27 09:55:01 UTC 2025 - darix <packman@nordisch.org> + +- Update to version 32.0.1: + * libobs: Update version to 32.0.1 + * frontend: Fix runtime check failure issue + * libobs: Log monitoring audio deduplication + * libobs: Fix for monitoring deduplication edge case + * frontend: Enable multitrack RTMP option for custom RTMP services + * obs-browser: Update version to 2.26.2 + * CI: Pin patch generation workflows to windows-2022 + +------------------------------------------------------------------- Tue Sep 23 00:16:11 UTC 2025 - darix <packman@nordisch.org> - Update to version 32.0.0:
View file
obs-studio.spec
Changed
@@ -39,7 +39,7 @@ %endif Name: obs-studio -Version: 32.0.0 +Version: 32.0.1 Release: 0 Summary: A recording/broadcasting program Group: Productivity/Multimedia/Video/Editors and Convertors
View file
_service
Changed
@@ -1,7 +1,7 @@ <services> <service name="tar_scm" mode="manual"> <param name="versionformat">@PARENT_TAG@</param> - <param name="revision">32.0.0</param> + <param name="revision">32.0.1</param> <param name="url">https://github.com/obsproject/obs-studio.git</param> <param name="versionrewrite-pattern">(\.\d+)-(a-z.*)</param> <param name="versionrewrite-replacement">\1~\2</param>
View file
_servicedata
Changed
@@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/obsproject/obs-studio.git</param> - <param name="changesrevision">671fb57daf4972fcd506689a48a474dd4eda9e66</param> + <param name="changesrevision">0b1229632063a13dfd26cf1cd9dd43431d8c68f6</param> </service> </servicedata> \ No newline at end of file
View file
obs-studio-32.0.0.tar.xz/.github/workflows/dispatch.yaml -> obs-studio-32.0.1.tar.xz/.github/workflows/dispatch.yaml
Changed
@@ -139,7 +139,7 @@ windows-patches: name: Create Windows Patches 🩹 if: github.repository_owner == 'obsproject' && inputs.job == 'patches' - runs-on: windows-latest + runs-on: windows-2022 steps: - uses: actions/checkout@v4 - uses: ./.github/actions/windows-patches
View file
obs-studio-32.0.0.tar.xz/.github/workflows/publish.yaml -> obs-studio-32.0.1.tar.xz/.github/workflows/publish.yaml
Changed
@@ -202,7 +202,7 @@ name: Create Windows Patches 🩹 needs: check-tag if: github.repository_owner == 'obsproject' && fromJSON(needs.check-tag.outputs.validTag) - runs-on: windows-latest + runs-on: windows-2022 steps: - uses: actions/checkout@v4 - uses: ./.github/actions/windows-patches
View file
obs-studio-32.0.0.tar.xz/frontend/components/SourceTreeItem.cpp -> obs-studio-32.0.1.tar.xz/frontend/components/SourceTreeItem.cpp
Changed
@@ -290,7 +290,7 @@ * the application to hang when double clicking the sources list and the * Windows setting 'Snap mouse to default button in dialog boxes' is enabled. */ - bool snapEnabled; + BOOL snapEnabled = FALSE; SystemParametersInfo(SPI_GETSNAPTODEFBUTTON, 0, &snapEnabled, 0); if (snapEnabled) {
View file
obs-studio-32.0.0.tar.xz/frontend/settings/OBSBasicSettings.cpp -> obs-studio-32.0.1.tar.xz/frontend/settings/OBSBasicSettings.cpp
Changed
@@ -5591,8 +5591,6 @@ #endif } -extern bool MultitrackVideoDeveloperModeEnabled(); - void OBSBasicSettings::UpdateMultitrackVideo() { // Technically, it should currently be safe to toggle multitrackVideo @@ -5615,15 +5613,6 @@ 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 @@ !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());
View file
obs-studio-32.0.0.tar.xz/frontend/utility/BasicOutputHandler.cpp -> obs-studio-32.0.1.tar.xz/frontend/utility/BasicOutputHandler.cpp
Changed
@@ -231,7 +231,8 @@ 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<MultitrackVideoOutput>();
View file
obs-studio-32.0.0.tar.xz/frontend/utility/MultitrackVideoOutput.cpp -> obs-studio-32.0.1.tar.xz/frontend/utility/MultitrackVideoOutput.cpp
Changed
@@ -410,8 +410,7 @@ 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) {
View file
obs-studio-32.0.0.tar.xz/libobs/obs-audio.c -> obs-studio-32.0.1.tar.xz/libobs/obs-audio.c
Changed
@@ -63,6 +63,11 @@ if (strcmp(dev_id, audio->monitoring_device_id) == 0) { audio->prevent_monitoring_duplication = true; audio->monitoring_duplicating_source = s; + if (!audio->monitoring_duplication_prevented_on_prev_tick) + blog(LOG_INFO, + "Device for 'Audio Output Capture' source is also used for audio" + " monitoring:\nDeduplication logic is being applied to all monitored" + " sources.\n"); } obs_data_release(settings); } @@ -544,7 +549,8 @@ bool output_capture_unmuted = !audio->monitoring_duplicating_source->user_muted; if (audio->prevent_monitoring_duplication && output_capture_unmuted) { - if (source->monitoring_type == OBS_MONITORING_TYPE_MONITOR_AND_OUTPUT) { + if (source->monitoring_type == OBS_MONITORING_TYPE_MONITOR_AND_OUTPUT && + source != audio->monitoring_duplicating_source) { return true; } } @@ -576,6 +582,7 @@ da_resize(audio->render_order, 0); da_resize(audio->root_nodes, 0); + audio->monitoring_duplication_prevented_on_prev_tick = audio->prevent_monitoring_duplication; audio->prevent_monitoring_duplication = false; audio->monitoring_duplicating_source = NULL;
View file
obs-studio-32.0.0.tar.xz/libobs/obs-config.h -> obs-studio-32.0.1.tar.xz/libobs/obs-config.h
Changed
@@ -41,7 +41,7 @@ * * Reset to zero each major or minor version */ -#define LIBOBS_API_PATCH_VER 0 +#define LIBOBS_API_PATCH_VER 1 #define MAKE_SEMANTIC_VERSION(major, minor, patch) ((major << 24) | (minor << 16) | patch)
View file
obs-studio-32.0.0.tar.xz/libobs/obs-internal.h -> obs-studio-32.0.1.tar.xz/libobs/obs-internal.h
Changed
@@ -462,6 +462,7 @@ volatile bool prevent_monitoring_duplication; struct obs_source *monitoring_duplicating_source; + bool monitoring_duplication_prevented_on_prev_tick; }; /* user sources, output channels, and displays */
View file
obs-studio-32.0.0.tar.xz/libobs/obs.c -> obs-studio-32.0.1.tar.xz/libobs/obs.c
Changed
@@ -899,6 +899,7 @@ audio->monitoring_device_name = bstrdup("Default"); audio->monitoring_device_id = bstrdup("default"); + audio->monitoring_duplication_prevented_on_prev_tick = false; errorcode = audio_output_open(&audio->audio, ai); if (errorcode == AUDIO_OUTPUT_SUCCESS)
View file
obs-studio-32.0.0.tar.xz/plugins/obs-browser/browser-version.h -> obs-studio-32.0.1.tar.xz/plugins/obs-browser/browser-version.h
Changed
@@ -2,7 +2,7 @@ #define OBS_BROWSER_VERSION_MAJOR 2 #define OBS_BROWSER_VERSION_MINOR 26 -#define OBS_BROWSER_VERSION_PATCH 1 +#define OBS_BROWSER_VERSION_PATCH 2 #ifndef MAKE_SEMANTIC_VERSION #define MAKE_SEMANTIC_VERSION(major, minor, patch) ((major << 24) | (minor << 16) | patch)
View file
obs-studio-32.0.0.tar.xz/plugins/obs-browser/obs-browser-source.cpp -> obs-studio-32.0.1.tar.xz/plugins/obs-browser/obs-browser-source.cpp
Changed
@@ -53,6 +53,14 @@ if (!browser) return; + if (isVisible) { + browser->GetHost()->WasResized(); + browser->GetHost()->WasHidden(false); + browser->GetHost()->Invalidate(PET_VIEW); + } else { + browser->GetHost()->WasHidden(true); + } + CefRefPtr<CefProcessMessage> msg = CefProcessMessage::Create("Visibility"); CefRefPtr<CefListValue> args = msg->GetArgumentList(); args->SetBool(0, isVisible);
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.