frontend: Allow selecting additional canvases for multitrack

This commit is contained in:
Dennis Sädtler
2025-05-05 17:17:20 -04:00
committed by Ryan Foster
parent 8117c89b9a
commit 0552062390
10 changed files with 147 additions and 56 deletions
+8 -1
View File
@@ -457,6 +457,12 @@ std::shared_future<void> BasicOutputHandler::SetupMultitrackVideo(obs_service_t
custom_config = DeserializeConfigText(
config_get_string(main->Config(), "Stream1", "MultitrackVideoConfigOverride"));
std::optional<QString> extraCanvasUUID;
const char *uuid = config_get_string(main->Config(), "Stream1", "MultitrackExtraCanvas");
if (uuid && *uuid) {
extraCanvasUUID = uuid;
}
OBSDataAutoRelease settings = obs_service_get_settings(service);
QString key = obs_data_get_string(settings, "key");
@@ -532,7 +538,8 @@ std::shared_future<void> BasicOutputHandler::SetupMultitrackVideo(obs_service_t
multitrackVideo->PrepareStreaming(main, service_name.c_str(), service, custom_rtmp_url, key,
audio_encoder_id.c_str(), maximum_aggregate_bitrate,
maximum_video_tracks, custom_config, stream_dump_config,
main_audio_mixer, vod_track_mixer, use_rtmps);
main_audio_mixer, vod_track_mixer, use_rtmps,
extraCanvasUUID);
} catch (const MultitrackVideoError &error_) {
error.emplace(error_);
}