Advanced Scene Switcher

Advanced Scene Switcher 1.28.1

AndyMcProducer

New Member
Few Things I found which others might and think its not working.
If your in studio mode nothing will happen, if you have multiple window names which may change when different projects etc are loads then use the (.*)()(.*) which works perfect.
If you want to Pause scene switch just click studio mode.

Like it says up top, you can set a Fullscreen window so I guess if you put a game in fs it will default to that and you can set a backup scene if something goes wrong or a window name changes and scene switcher doesn't show it.

Example of my settings.

(.*)(Project)(.*),CubaseChat
(.*)(MixConsole)(.*),CubaseMixerChat
Blank,Default Scene
Disable Start Message,Yes

I used the wild card (.*)()(.*) because my project window will be project - untitled or another name depending on what is loaded. So the wild card allows for anything else in the name.

Same for MixConsole, the name can be multiple variations after the MixConsole part.

CubaseChat and CubaseMixerChat are my scene names. I removed the spaces between the names to avoid any naming issues.

The scenes switch using the default transition, although it would be cool if we could set to any transition we have created.

I'm about to add another scene to my list which will be ChannelSettings, which when I open a channels settings (e.g. the EQ) then it will fullscreen it. Again this would be cool if there was a flag that could be set to enable/turn on an item in the sources. This way I could have an item overlay or however i have it setup when I click on it's window. But for now I'll duplicate the scene and have it overlaid in the duplicate scene.
It would be handy though as if I'm in the mixer and open the channel settings window then I don't want it change to the project window every time.


To find the window name click + on sources to add a Window Capture, click ok on thenext window, then on the Properties for 'Window Capture' select the drop down list next to where it says Window.
This is the names of windows, you want part if using (.*) or all of the name past the ':'
So you see in the image [notepad.exe]: settings.txt - Notepad
For this window only you'd do,

settings.txt - Notepad,scenename

for MixConsole - Untitled1 I selected the wildcard option (.*)(MixConsole)(.*) but this option is best used where one window is in use, so I can only have 1 mix console open at a time, same for channel settings.
Else if you had say multiple notepads and you set say (.*)(notepad)(.*),settings.txt - Notepad then clicking on different notepads will always show just the notepad window named "settings.txt - Notepad".
So if you need to use multiple windows the wildcard option wouldn't be best and using full names.

Remember you don't need the [chrome.exe]: part, just the name after that.

osbwinsel.png


Lastly, if you have more than one window open with the same name, as I do here with the notepad, then scene switcher will select the first in the list.

BTW great adaption and great plugin.
 
Last edited:

hypnorus

New Member
Hey, I got an issue with your plugin. It's not working. Log says
Code:
01:28:48.818: Loading module: SceneSwitcher.dll
01:28:48.818: obs-data.c: [obs_data_create_from_json] Failed reading json string (1): '[' or '{' expected near end of file
Can you advice something?
 

Warmuptill

Active Member
The Scene Switcher will still work even when this log message comes up in the OBS log files. It is caused during the check whether a hotkey binding to pause the Scene switcher is present. (I will try to prevent this log from appearing in a future version of this plugin, since it might cause confusion about whether the plugin is running or not) I assume you have not configured your settings.txt file correctly and that is the reason the Scene Switcher is not working for you.
 

Grot

New Member
Is there any chance at all for a version that supports MacOS ? You know.. Having a multiplatform OBS with platform specific plugins is kind of like reliving OBS Classic all over again ;)
 

Warmuptill

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

Added MacOS version, added options menu, bug fixes

A version of this plugin for MacOS was implemented. The addition of this version caused some changes in the structure of the plugin, mainly the storage of the settings of the Scene Switcher.

The storage of the plugin is now set by OBS itself and thus makes it easier to ensure that the settings file can actually accessed and read by the plugin.

Since the new location of the settings file is rather hidden i chose to implement a simple UI to edit the settings (which i plan to improve upon...

Read the rest of this update entry...
 

Warmuptill

Active Member
Please report any problems you are experiencing with this new version. (Especially Mac users!) Feedback and suggestions are also much appreciated!
 

vapeahoy

Member
Any chance it will be possible to switch to a scene IF that scene is also fullscreen or when, rather, it is fullscreen. This so it doesnt capture a half-screen windowed output? Would be tremendously helpful for capturing entire displays for us capture card users.
 

Warmuptill

Active Member
Hm, i am not quite sure i understand your request correctly. Do you want to switch to a scene when the contents (the process or whatever that is being captured) are fullscreen? If so i am not quite sure if it is possible to access information about what is being captured. If you want to switch to a scene if the foreground window is fullscreen, that is already implemented. Or do you mean if the size of the scene inside the OBS preview window is the right size (or larger) to fill the whole preview window? If that is the case, that seems doable(but i am not 100% sure). Im not really familiar with the problem capture card users are experiencing. So an example would be great. But in general i am always open to suggestions.
 
Last edited:

vapeahoy

Member
Right ok, so we have now ability to capture a fullscreen scene with the FSscene right, but that captures any fullscreen. Even a browser that is fullscreen mode. Which is perfectly fine. What I am suggesting is that if f.ex Google chrome or Mario bros game is fullscreen, then capture it, if not, it does nothing, it just goes back to default scene. So window title must be X and it must be fullscreen, if not reside to default scene or whatever, as it currently does. I hope that explains it.
 

Warmuptill

Active Member
So basically just combine the already existing options of the fullscreen check with the window name check. That should be easy to implement. Just need to think of a sensible way of adding that to the settings UI (the currently available options for UIs are rather limited). I will probably just allow a 3rd value per line in the settings list. So to follow your example: if "Mario bros game" is the title of the window in the foreground and it is fullscreen switch to scene named "MBScene" would translate to "Mario bros game,MBScene,isFullscreen". Do you think that would be acceptable?
 

vapeahoy

Member
Yes, that will be perfect. That would solve a lot of problems for basically *everyone* I think. Especially for those who is running a multiple pc streaming setup, or recording only even. It would mean an end to showing a "half" screen.
Having said that:
Currently when i am capturing, there is a small period of time in which the "display capture" source is not visible when switching to it. This is kinda cool, because it allows to show a image that is constantly there.

This means that f.ex let's say i am showing something in a browser, talking to someone in chat and discussing something. Then turning back to the game scene. IT shows then that picture in that scene, before it shows the display capture. I dont know what's causing that, but it's pretty cool i think. It doesnt seem to be any OBS related delay tho, as having obs running at the pc being captured, only adds about 5 ns delay to latency response tests.
I am simply mentioning that because I will test to see the eventual differences. Right now having a large fan in my floor to treat a water damage tho, so having some days off streaming.
 

Warmuptill

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

Added "isFullscreen" options, fixed issue when loading settings

Added the "isFullscreen" option for the Scene Switcher.

It functions as an optional condition for the Scene Switcher. The line "Overwtach,OW,isFullscreen" would only switch to the scene "OW" if the application with the name "Overwatch" is in Fullscreen (note windowed mode is not enough in Windows). If you want to remove that condition just remove the ",isFullscreen" part.

Read the rest of this update entry...
 

amsyar ZeRo

Member
@Warmuptill Heya!I like your plugin,but when I installed it it doesn't appear.No changes,I see.

EDIT:Did a restart and still no changes.I can confirm I put the plugin in obs-plugins.

Specs are in my signature.Using OS X El Capitan.
 

mpek

Member
I'd like to setup scene switching like this: 1. Scene switched shown is MPC. Then after a few seconds all other scenes should be switched to and shown a few seconds, after I loaded OBS.

My Scenes are called MPC, CAM1, CAM2 and CAM3 and I could make Backup Scene Name only to switch automatically for now. I was setting up Backup Scene Name,MPC and it switched everything to MPC.

My idea was to setup a round tripping switching, that every scene should be switched automatically one after another, let's say every 3 seconds and if we get very cool randomly in time and length source is shown. Is that roundtripping basically possible? What to type in for this to work?
 

Warmuptill

Active Member
Currently the feature you are describing is not implemented. It is possible to implement that for a future version of this plugin however.

Just so I understand your request correctly: Would the scene with the name "MPC" act as a trigger to activate the round trip switching in your example? Should the round trip switching stop as soon as every scene was shown once or should there be an option to loop forever?(that option could just involve setting the Backup Scene Name to the Scene that triggers the round trip). And finally do you think it would be acceptable for it to entered in the options following this format:

"Scene Round Trip,TriggerSceneHere,DelayHere,NextSceneHere,DelayHere,AnotherSceneHere,DelayHere,..."
So your example would be:
"Scene Round Trip,MPC,3,CAM1,3,CAM2,3,CAM3"
 

Bootscreen

New Member
nice plugin, thanks =)

but is it possible to get an option to ignore scenes?
something like:
disabled,Start,Idle,End

Example:

My Scenes:
- Start
- Idle
- Pause
- End
- Game 1
....
- Game X

And i only want the automatic switch when i'm not in the Start, Pause or End Scene.

I could use the hotkey, but an automation would be much nicer =)
 

erxct

New Member
Hey! This is an awesome plugin and I'm glad somebody has finally made it. I've been successful in getting it to work, for the most part. I can set it up for switching to google chrome and (I play league of legends) my PVP.net client, however, whenever I actually get into a game of league, the window switches from PVP.net Client, to a different window called, League of Legends (TM) Client. Now when i put this into the scene setter i have it as, "League of Legends (TM) Client,ez" but it never switches to the scene automatically and i have to do it manually. Could it be because i have the game running in windowed border less? Thanks in advance. once this is solved it will be an amazing program.
 
Top