Commit Graph

52 Commits

Author SHA1 Message Date
WarmUpTill
198a5dc1ec Move AskBackup() 2021-05-24 07:29:56 -07:00
WarmUpTill
5496c256c0 Move functions not required in advanced-scene-switcher.hpp
Create header for platform specific functions.
Move some UI helper functions to utility.hpp.
2021-05-24 07:29:56 -07:00
WarmUpTill
675021c284
Add Macro tab (#170)
* add action switch scene

* add window condition

* Add macro action wait

* Add macro condition region

* Add audio macro condition

* Add file based macro condition

* Add macro condition media

* Add video macro condition

* Add macro action audio

* Add macro action streaming

* Add macro action recording

* Add replay buffer macro action

* Add stream macro condition

* Add macro condition recording

* Add macro condition plugin state

* Add macro action to run an arbitrary command
2021-05-14 16:37:01 +02:00
WarmUpTill
e714df7ad0 Use Duration class and DurationSelection widget 2021-05-04 11:32:45 -07:00
WarmUpTill
0fdfe757b4 Reset tab order if config is invalid 2021-05-04 11:32:45 -07:00
WarmUpTill
bc5a04651f Remove unnecessary indirection 2021-05-04 11:32:45 -07:00
WarmUpTill
1310d0b3f3 Add comment 2021-05-04 11:32:45 -07:00
WarmUpTill
139df8a641 Adjust function signature
Don't pass bool by reference if not necessary.
2021-05-04 11:32:45 -07:00
WarmUpTill
73ce88e2f0
Add option to save window size and position (#154) 2021-04-03 11:55:42 +02:00
WarmUpTill
dfccc4b16d
Add network tab (#149)
The network tab allows you to open a web-socket or connect to web-socket to synchronize the active scene between two or more instances of OBS.
The functionality is mostly based on https://github.com/Palakis/obs-websocket.

An OBS instance running a server will send its currently active scene to all connected clients on scene change.
By default all scene switches will trigger a message to be sent to all clients, but you also have the option to limit sending these messages only when an automated scene change is triggered by the advanced scene switcher.
2021-03-24 20:51:22 +01:00
WarmUpTill
e4bb034303
Add video tab (#131)
This tab will allow switching scenes based on the video output of sources.
2021-03-05 14:08:17 +01:00
WarmUpTill
499ba7dd21
Update the UI's status element if the status changed externally (#126) 2021-02-20 18:58:07 +01:00
WarmUpTill
a84a205608
Minor style changes (#114)
* use GetWeakSourceName() where possible

* add getCurrentScene() to scene group

* silence OBS warning log and fix typo in audio switch

* extract showing initial status of widgets to function in generic switch
2021-02-03 20:27:25 +01:00
WarmUpTill
a5f0eb8da8
Add option to automatically start scene switcher on recording / streaming start (#112) 2021-02-03 20:02:07 +01:00
WarmUpTill
35151ea134
Add scene trigger tab (#110) 2021-02-03 19:50:37 +01:00
WarmUpTill
8e8cb4bf3e use exportWindowTitle on export of settings 2021-01-27 19:05:46 +01:00
WarmUpTill
d989c2b570
Add scene groups and rework save and load (#103) 2021-01-23 17:39:35 +01:00
WarmUpTill
1f4679433e
ask for backup of settings if a new version detected (#104) 2021-01-23 17:08:17 +01:00
WarmUpTill
b42de8d5c8
fix crash on settings import (#102)
This crash could happen if the scene switcher was currently stuck waiting in a scene sequence causing while the import of new settings took place potentially invalidating the settings of the sequence after wakeup.
2021-01-20 19:01:56 +01:00
WarmUpTill
0950d93828
allow selection of target for auto stop of recoding or streaming 2021-01-18 01:20:56 +01:00
WarmUpTill
5156c66b26
add warning if translation cannot be found (#99)
* add warning if translation cannot be found

* extract displaying message boxes to separate function
2021-01-09 14:27:51 +01:00
WarmUpTill
2b90493ae9
add switch cooldown option (#97)
* add switch cooldown functionality

* slightly adjust sequence check for cooldown

* add UI implementation for cooldown feature
2021-01-07 18:58:35 +01:00
WarmUpTill
caa2833272
allow pause individual switching methods (#90)
* allow pausing individual switching methods

* clean up pause tab

* allow import of old pauseScenes and pauseWindows
2020-12-31 14:24:09 +01:00
shugen002
8ba78b12c1
I18n Support (#72)
* adapt UI for i18n

* add placeWidgets() helper function to ease translation

* add hint about Transition Matrix plugin on Transition tab

* translate

* rework UI of file tab

* write status of plugin to scene info file
2020-12-21 11:24:04 +01:00
WarmUpTill
9711390aac
add no match delay option (#78) 2020-12-06 14:10:17 +01:00
WarmUpTill
a1484f9621 fix warning 2020-12-06 14:03:04 +01:00
WarmUpTill
4af7540497
hide guide frames when switching to a different tab (#75) 2020-11-28 12:36:58 +01:00
Guillaume Turchini
ba15e6812f
Add a log when auto stopping stream / record (#74)
* Add a log when auto stopping stream / record

I had a hard time deciphering why the stream stopped automatically for someone when using the plugin as the logs contained nothing indicating an error or an action from the plugin.
He activated the checkbox to auto stop stream when a scene is activated (which I didn't know) so the plugin was doing exactly what asked.
I think adding a log is a good idea for an action as important as stopping the stream.
I added the same for starting stream for the same reasons.
2020-11-27 17:34:17 +01:00
shugen002
16c4a2d5a9
Adjust UI And Improve (#63) 2020-11-20 19:10:06 +01:00
WarmUpTill
e026bd7420 fix crash on first startup on fresh install of OBS 2020-11-07 18:56:08 +01:00
WarmUpTill
214821b69f
UI rework (#44)
* rework general tab UI

* rework audio tab UI

* rework media tab UI

* rework time tab UI

* rework random tab UI

* rework window tab UI

* rework sreen region tab UI

* rework sequence tab UI

* rework transition tab UI

* adjust log messages to new format

* fix include path and warning

* highlight widgets to guide users (can be disabled)

* add helper frame for screen region tab

* rename main SceneSwitcher widget to AdvSceneSwitcher to resolve naming conflicts with the frontend tools on certain platforms (e.g. Debian 10)

* add media state 'any'

* adjust media switch handling to support vlc source
2020-10-31 16:25:44 +01:00
WarmUpTill
1e6a022787
improve hotkey handling (#49) 2020-10-12 20:55:51 +02:00
WarmUpTill
fb1eac5268
fix crash on exit when on autoStart scene (#47) 2020-10-10 01:56:08 +02:00
WarmUpTill
dd63ff846c
Refactor, fixes and maximized option for title tab (#40)
* move definitions of switcher structs to separate files

* remove useless comment

* cleanup and silence warnings

* add generic switch

* removed delay on main thread startup as it served no purpose

* clean up ultility.hpp

* do not save switchStr to file as it could cause issues when scenes are renamed

* rename sceneRoundTrip to sceneSequence

* add option to switch if window is maximized to title tab
2020-09-25 21:42:58 +02:00
WarmUpTill
8d023ee385
Add audio tab (#36)
* add volumemeter widget

* add audio tab UI

* add checkAudioSwitch functionality

* use constexpr instead of preprocessing
2020-09-21 00:52:42 +02:00
WarmUpTill
a5c8d776f3 only try auto start streaming/recording once on scene chagne 2020-08-24 20:55:54 +02:00
WarmUpTill
95261ce9bb add first draft of auto start of recording / streaming 2020-08-16 19:48:54 +02:00
WarmUpTill
3c1e240722 add option to set startup behavior 2020-08-02 18:45:44 +02:00
WarmUpTill
91831a1075 fix autoStop not being persisted 2020-08-02 18:00:50 +02:00
WarmUpTill
0cdd8bf1d0 move UI init of tabs to respective source files 2020-08-01 11:14:54 +02:00
WarmUpTill
f8ad8c31be scene sequence adjustments
use double internally instead of two ints
rework save / load to file to reuse existing functionality
add option to select between seconds / minutes / hours
2020-08-01 10:12:32 +02:00
WarmUpTill
f8b505fa4e silence warnings 2020-07-31 22:05:55 +02:00
WarmUpTill
1516263d2a save and load tab order 2020-07-31 21:58:17 +02:00
WarmUpTill
cd54cc17c0 fix switch priority falling back to default values on startup 2020-07-09 19:57:55 +02:00
WarmUpTill
560044bbbf implement export/import of settings 2020-06-14 15:22:34 +02:00
WarmUpTill
4bd8cdf5a0 move auto start/stop to gernal.cpp 2020-06-14 14:17:03 +02:00
WarmUpTill
c17cbb66d9 write to OBS log if verbose logging is enabled 2020-06-14 14:14:00 +02:00
WarmUpTill
bf70bd7c60 move saving and loading to separate files 2020-06-13 21:56:26 +02:00
WarmUpTill
6810ba71e8 remove using namespace std 2020-06-12 21:40:06 +02:00
Myned
7a924438bc
Add .clang-format and apply to src/ files 2020-06-08 14:58:44 -04:00