Advanced Scene Switcher

Advanced Scene Switcher 1.28.1

Jack0r

The Helping Squad
Awesome work. The original idea came from @Tehran: https://obsproject.com/forum/thread...depending-on-which-scene-you-switch-to.55908/ (I mainly had the idea to ask you ;D)
For his usage he will combine Screen Region detection with the Transitions selection. Maybe a checkbox "overwrite other transitions" would work in this case?

Edit: One thing I noticed, it also changes the currently selected transition in OBS to the transition it uses. That might be something OBS itself could handle differently, like offer the option to select a one-time transition or maybe you have the option to use it as a quick transition (like in studio mode)?
 
Last edited:

woodbyte

New Member
A "Mute audio" toggle per-rule or just for the backup scene would be helpful, if it's something you can do or believe should even be in this plugin. If not, I understand.

By audio here I mean the "Desktop Audio" shown by OBS.
 

Warmuptill

Active Member
A "Mute audio" toggle per-rule or just for the backup scene would be helpful, if it's something you can do or believe should even be in this plugin. If not, I understand.

By audio here I mean the "Desktop Audio" shown by OBS.
Thanks for the suggestion, but i don't think audio control fits the scene switcher plugin. However, if there is a lot of demand for it I will change my mind and will add it to the plugin.
 

ThoNohT

Developer
Thanks for the suggestion, but i don't think audio control fits the scene switcher plugin. However, if there is a lot of demand for it I will change my mind and will add it to the plugin.
Why not switch to a scene without the audio sources. I would agree that this does not fit in a scene switcher.
 

woodbyte

New Member
Thanks for the suggestion, but i don't think audio control fits the scene switcher plugin. However, if there is a lot of demand for it I will change my mind and will add it to the plugin.

I understand.

Why not switch to a scene without the audio sources. I would agree that this does not fit in a scene switcher.

I tried that, but I wasn't able to disable the "Desktop Audio" on a per-scene basis. It seems to be a global toggle no matter how I do it, but I might have missed something. If you know of a way to do it, please share.
 

ThoNohT

Developer
I tried that, but I wasn't able to disable the "Desktop Audio" on a per-scene basis. It seems to be a global toggle no matter how I do it, but I might have missed something. If you know of a way to do it, please share.
Sure, remove it as an audio device in the audio settings. Then add it as an audio source from the sources box. Then you can add it to every scene that needs it using "Add existing".
 

Insaniaeter

New Member
Might it be possible to add an optional "transition" to stop recording/streaming ?
Would be nice, so you can create a scene for an outro with a specific length, routing via round trip to an "exit" scene which automatically stops recording.
No need for cutting afterwards.

Could be implemented in the "general" tab as a transition probably ?
 

woodbyte

New Member
Sure, remove it as an audio device in the audio settings. Then add it as an audio source from the sources box. Then you can add it to every scene that needs it using "Add existing".
Thanks, that worked beautifully! And sorry for going a bit off-topic here.
 

Lizza Sullivan

New Member
hello..I've just upgraded from 16.2 to 16.4
and suddenly plugins (Auto Switcher v1.1.1) I installed before was gone, now I can;t use auto switcher scene like in version 116.2, does any one have the same problem..?thanks
 

Gary Mazzola

New Member
Awesome work. The original idea came from @Tehran: https://obsproject.com/forum/thread...depending-on-which-scene-you-switch-to.55908/ (I mainly had the idea to ask you ;D)
For his usage he will combine Screen Region detection with the Transitions selection. Maybe a checkbox "overwrite other transitions" would work in this case?

Edit: One thing I noticed, it also changes the currently selected transition in OBS to the transition it uses. That might be something OBS itself could handle differently, like offer the option to select a one-time transition or maybe you have the option to use it as a quick transition (like in studio mode)?

Is there a manual available? I have 3 webcams. im trying to set it up so it will switch to a different camera every 15 sec as a dissolve/or fade. i have automatic scene switcher and advanced scene switcher.
 

Warmuptill

Active Member
Is there a manual available? I have 3 webcams. im trying to set it up so it will switch to a different camera every 15 sec as a dissolve/or fade. i have automatic scene switcher and advanced scene switcher.

You need to set up three different scenes (one for each camera).
Then - under the "Scene Round Trip" tab - set up the order and delay you want to use. (for example: scene1 -> wait 15 seconds -> scene2 , scene2 -> wait 15 seconds -> scene3, scene3 -> wait 15 seconds -> scene1).
Finally you can configure the transition for each switch in the Transitions tab or already in the Scene Round Trip tab.
After activating the scene switcher everything should be working and once you manually or automatically switch to the "scene1" scene of the above example the switching will start.
To cancel the Scene Round Trip manually switch to a different scene.
 
Last edited:

Radown

New Member
Hello, (sorry if it's been answered already, can't seem to find it anywhere),
What would be the different inputs supported through "Switching of scene based on file input"?
Could I do something like: if(window = 'WindowNameString') {
Scene.SwitchTo = 'SceneName'
}
In my case such a format would allow to use a different scene based on the game you're playing, and of course add a default scene to avoid loop or code crash, " DefaultScene = 'String' ".
I can't quite figure it out on my own.

- Your canadian pal, Radown.
 

Warmuptill

Active Member
Hello, (sorry if it's been answered already, can't seem to find it anywhere),
What would be the different inputs supported through "Switching of scene based on file input"?
Could I do something like: if(window = 'WindowNameString') {
Scene.SwitchTo = 'SceneName'
}
In my case such a format would allow to use a different scene based on the game you're playing, and of course add a default scene to avoid loop or code crash, " DefaultScene = 'String' ".
I can't quite figure it out on my own.

- Your canadian pal, Radown.
The file input is just meant to be used if you want to remote control the scene switching. You can specify a path to a file which contains the name of the scene you want to switch to under the File Input / Output tab (I am not 100% sure if i named it like that). There you can also set up a file to write the currently selected scene to.

So this is probably not going to be useful for your case. What are you trying to achieve? If it is just window title based scene switching you can just use the built in scene switcher.

Sorry if I caused some confusion with the description of this file based scene switching.
 

Radown

New Member
Well, see the thing is, I can't get to make the scene switch in-between games, exemple: Lobby Scene -> Startup Overwatch -> Overwatch scene - > Close overwatch -> Lobby scene -> startup Hearthstone - > Hearthstone scene. And so on. I might need a little clarification as to how scene switcher works if I'm completly off the track
 

Warmuptill

Active Member
Well, see the thing is, I can't get to make the scene switch in-between games, exemple: Lobby Scene -> Startup Overwatch -> Overwatch scene - > Close overwatch -> Lobby scene -> startup Hearthstone - > Hearthstone scene. And so on. I might need a little clarification as to how scene switcher works if I'm completly off the track
This can be done with the built in scene switcher, no need to download a plugin. You can access it under tools -> automatic scene switcher.

The scene switcher will just get the name of the window that is currently in focus (for example your overwatch game window with the fitting name "Overwatch") and use that information to decide if to switch scenes.
You will have to assign the window title "Overwatch" to your overwatch scene and "Hearthstone" to your hearthstone scene. (Never played Hearthstone myself so I am not sure if that is the correct window title).
Then you will have to select to switch to your Lobby Scene if no window title matches.
And lastly you have to make sure the scene switcher is activated and everything should be working.

If you need further help let me know.
 

cwbshaw

New Member
Hi....

Fantastic plugin. I have one suggestion for a feature though....

We use OBS Studio to live stream lectures/presentations (I work in a college). Up to now, I have been using the standard switcher that comes with OBS Studio to start a lecture with lecturer/presenter on camera in fullscreen, and then when the presenter starts PowerPoint (or whatever application used to present content), the scene automatically switches to fullscreen PowerPoint with lecturer/presenter picture-in-picture.

What I would really like to be able to do is to automatically switch back to fullscreen camera after a configurable number of seconds if the lecturer/presenter hasn't interacted with PowerPoint within that time and then stay in fullscreen camera until the lecturer/presenter clicks for the next PowerPoint slide.

What I'm looking for is partly in the plugin already....I can use the 'Scene Round Trip' to switch from a PiP scene to a fullscreen scene after XX seconds, but I can't automatically go back to the PiP scene upon detection of the keyboard/mouse activity which would indicate interaction with PowerPoint.

If you think this is doable, I'd be happy to test....

Again, super plugin, and thanks in advance.

Chris.
 

Warmuptill

Active Member
Warmuptill updated Automatic Scene Switching with a new update entry:

Idle Detection, Auto Stop Stream/Recording, Executable, Improved Screen Region tab,MacOS version

Added the Idle Detection feature suggested by cwbshaw:
You can now specify a time span, after which, if no inputs were detected, it will switch to the specified scene. (Can be useful for scene switches during lectures / AFK detection during streaming, etc.)

Added the option to stop streaming / recording if switched to a specified scene in the Scene Round Trip tab. (suggested...

Read the rest of this update entry...

Thanks to dasOven for implementing his suggested feature himself!
Thanks for the suggestions cwbshaw and Insaniaeter!
 
Last edited:

cwbshaw

New Member
Wow! I wasn't expecting such a fast turnaround on this.

Super job Warmuptill and dasOven. Downloaded the plugin and tried it. Works perfectly, exactly what I was looking for.

Thanks a million.

Chris.
 

cwbshaw

New Member
Hi....

Just thought of a possible enhancement to the Idle Detection feature. I suspect it won't be easy or even possible to implement, and if that's the case, no problem.....but just thought I would ask anyway.

As I mentioned in a previous post, I was looking for a feature (which became Idle Detection) to switch from a Lecturer/Presenter PiP to Lecturer/Presenter fullscreen if that person was talking longer than XX seconds without changing slides. The Idle Detection feature should do exactly what I was looking for, but there is one possible exception.

There are some occasions where the lecturer/presenter has switched to a slide with an embedded video, or they may switch to another application (Eg: Firefox/Youtube, VLC, Windows Media Player etc). to play a video as part of their presentation. On those occasions it would be great if we could configure the scene switcher to ignore idle detection while the video is playing....i.e. on those occasions we would like the scene to stay PiP for the duration of the video regardless of the idle detection timeout.

Like I said above, perhaps this is just not programmatically possible. Given how many ways a video can be played in Windows, I doubt there is a universal API call that could be used to detect a video playing regardless of the playing method.

I'm not a programmer myself, but I did a bit of googling on the subject and found these if they might help:

http://stackoverflow.com/questions/...grammatically-determine-if-a-video-is-playing
http://stackoverflow.com/questions/11177373/how-to-detect-if-any-video-is-being-played-now

Admittedly these also seem to say there is no 100% way to detect a video playing. They do mention whitelisting of applications, and also using an API to access the screensaver settings. Just thinking out loud.....would it be possible to use whatever timer Windows uses to go into screensaver?

Anyway, if it's not possible, not a big deal and we can always work around it by setting the idle detection timeout >= length of longest video in the presentation.

Like I said, I just thought I would throw it out there and ask anyway.

Thanks for all your help.

Chris.
 
Top