Advanced Scene Switcher

Advanced Scene Switcher 1.28.1

PlatinumLive

New Member
Hello, I recently downloaded Advanced Scene Switcher V1.19.0 and I've been attempting to figure out how to scene from Scene A to Scene B after 5 minutes has elapsed. I'm thinking this was an easy task, but I couldn't find a section where a timed switch is an option, if it is, it's hidden quite well or quite confusing. Also, I searched on YouTube for "Advanced Scene Switcher" and couldn't find any videos of version 1.19 so there is no clear and concise information out there on how to quickly and easily add a 5 minute timer from one scene to another. Screenshots or a quick video would be very helpful, thank you.
 

lindenkron

Member
Note: Don't update to the latest version yet. I believe there's an issue with If Scene Item Visibility that makes it never trigger. I reverted to previous version where this issue does not persist.

If you're getting issues with this, please downgrade to previous version.
 

Warmuptill

Active Member
Hello, I recently downloaded Advanced Scene Switcher V1.19.0 and I've been attempting to figure out how to scene from Scene A to Scene B after 5 minutes has elapsed. I'm thinking this was an easy task, but I couldn't find a section where a timed switch is an option, if it is, it's hidden quite well or quite confusing. Also, I searched on YouTube for "Advanced Scene Switcher" and couldn't find any videos of version 1.19 so there is no clear and concise information out there on how to quickly and easily add a 5 minute timer from one scene to another. Screenshots or a quick video would be very helpful, thank you.
Maybe something like this will work for you?
SwitchAfter5.PNG


Note: Don't update to the latest version yet. I believe there's an issue with If Scene Item Visibility that makes it never trigger. I reverted to previous version where this issue does not persist.

If you're getting issues with this, please downgrade to previous version.
Thanks for the hint - I have identified the issue and will release a new version.
 

daviddm

New Member
Is there any way to set a hotkey to reset a timer in a macro? I know you can pause and start the timer with a hotkey but I need to reset it with a hotkey. If not, is there a way to have the timer set to pause when you first open OBS? It seem like the timer resets when you first open OBS but then starts running. -Thanks
 

Glynnman

New Member
So, previously the dialog for the sequence allowed for the entire sequence to be shown in a single window. Am I understanding correctly that the new version requires a separate macro to be written for each scene change of a sequence? Or, put another way, sequences are now handled differently and is essentially a collection of macros?

I hope this isn't the case. The old method for sequences seemed to be much more intuitive and workable. Simply list all of the needed scene changes, set the current scene, set the target scene, pick the transition type and duration and that's that.

Strangely enough, I imported my scene collection and profile from v27.4.2 and the scene switching is still functioning even though the dialog for it is nowhere to be seen. Additionally, there are no macro's running or even created. So, so it seems the old sequence is still registered somewhere as well as still functioning.
 

AaronD

Active Member
So, previously the dialog for the sequence allowed for the entire sequence to be shown in a single window. Am I understanding correctly that the new version requires a separate macro to be written for each scene change of a sequence? Or, put another way, sequences are now handled differently and is essentially a collection of macros?

I hope this isn't the case. The old method for sequences seemed to be much more intuitive and workable. Simply list all of the needed scene changes, set the current scene, set the target scene, pick the transition type and duration and that's that.

Strangely enough, I imported my scene collection and profile from v27.4.2 and the scene switching is still functioning even though the dialog for it is nowhere to be seen. Additionally, there are no macro's running or even created. So, so it seems the old sequence is still registered somewhere as well as still functioning.
Nothing has gone away. But there's now a checkbox in the bottom left corner of the main tab, to hide the tabs that the macros replace. Uncheck it, and you get the other tabs back. Your old settings are probably still in there.

That checkbox and its default setting have been there for some time now, but if you (or perhaps your distro in the case of Linux) are FINALLY getting around to updating, then it may still be new to you.
 

Keith Schneider

New Member
Fedora 36 Linux, x86_64 - I can acknowledge that there was a bug in the 1.19.0 release. My experience was that none of the macros I was trying, where I was using Scene-Item-Visibility would work (even though verbose logging was showing proper triggering etc) and I even updated OBS to 28.0.2 and still would not work. However -- after taking the latest 1.19.1 scene switcher (posted today) code base and building it all In-Tree (based on the rpmfusion.org source rpm), I can now say - with great happiness - that Advanced Scene Switcher 1.19.1 with OBS 28.0.2 seems to have cured all these issues. I have done a number of tests, all modeled directly from the Adv-SS Instruction Wiki with success.

With this current success, I can again, say that if anyone has interest, I can provide Fedora 36 X86_64 compatible Adv-SS plugin binaries/kit. All my (Fedora Linux) testing with the distributed (Ubuntu) Linux kit fail with hard errors.

I am especially ***Thankful*** to the Author of this software for finding and fixing this recent bug at right about the same time I happened to be working to in-tree build OBS with this plugin (trying to solve this very issue). I was sweating a bit over the malfunction and was not relishing what might have been a serious debug effort on unfamiliar software. But overnight, there it was - the fix I needed/wanted. All in the nick of time. Again - Many Thanks!
 
Is there a way that a MIDI event (Not On, for instance) could be sent from OBS to a MIDI device or Virtual MIDI port when a scene is triggered, or recording status has changed, etc?
 

AaronD

Active Member
Is there a way that a MIDI event (Not On, for instance) could be sent from OBS to a MIDI device or Virtual MIDI port when a scene is triggered, or recording status has changed, etc?
Not explicitly that I could find, but there might be two ways to do it anyway:

1. Create a MIDI file for each event that you want to send, and put them in a scene that you're not going to use. Then use the Media action in a Macro to Play the appropriate one. Normal output routing applies. That is, if OBS supports MIDI at all, which it may not.

2. Create a script or executable to send those events, and use the Run action in a Macro to trigger it. Anything goes at this point. Depending on how your system works, you might not even need a script. You could call a player app directly, for example, and give it the appropriate arguments.

You might also need to have the Macro do the action that the MIDI event is supposed to be in response to, just to be sure that the two things do go together. A lot of things can be detected by a Macro and responded to, but not everything.
Like, instead of responding to a Scene Transition and sending a MIDI event, the Macro could respond to a hotkey instead, and both send the MIDI event and Transition the Scene. (that one specifically, could probably be done by responding to the Scene, but you get the idea)
 
Last edited:

videored

New Member
Any chance for in the future to add macro grouping for the list on the left side? I usually just use an empty macro to divide my stuff in groups but it would be cool to have them officially implemented so I can just click on the group to expand or hide the macros from the list.

1665069444129.png


Or maybe there's a way already and I'm missing it??? Anyway, time to experiment with the variables, I was using empty image sources as variables until now, this will help me big time!
 

CodeYan

Member
Could I get some advice on how to set this up? I want a condition to check if the current time is between 00:50:00 and 01:00:00, but for every hour. so basically i would duplicate all my conditions for 01:50:00, 02:50:00 and so on, but that's a bit much. is there an easier way?
 
Not explicitly that I could find, but there might be two ways to do it anyway:

1. Create a MIDI file for each event that you want to send, and put them in a scene that you're not going to use. Then use the Media action in a Macro to Play the appropriate one. Normal output routing applies. That is, if OBS supports MIDI at all, which it may not.

2. Create a script or executable to send those events, and use the Run action in a Macro to trigger it. Anything goes at this point. Depending on how your system works, you might not even need a script. You could call a player app directly, for example, and give it the appropriate arguments.

You might also need to have the Macro do the action that the MIDI event is supposed to be in response to, just to be sure that the two things do go together. A lot of things can be detected by a Macro and responded to, but not everything.
Like, instead of responding to a Scene Transition and sending a MIDI event, the Macro could respond to a hotkey instead, and both send the MIDI event and Transition the Scene. (that one specifically, could probably be done by responding to the Scene, but you get the idea)

Thank you, @AaronD.... you've given me some ideas.

I also use AutoHotkey to "listen" for certain keystrokes, than send on to OBS specifically (a way to "target" the keystrokes better)... perhaps I can use AutoHotkey to a also send a MIDI command.

Thx!
 

Warmuptill

Active Member
Any chance for in the future to add macro grouping for the list on the left side? I usually just use an empty macro to divide my stuff in groups but it would be cool to have them officially implemented so I can just click on the group to expand or hide the macros from the list.

View attachment 87357

Or maybe there's a way already and I'm missing it??? Anyway, time to experiment with the variables, I was using empty image sources as variables until now, this will help me big time!
Thanks for the suggestion!
This was also requested in the past, but I just have not gotten around to it yet.
I will try to look into it.

Could I get some advice on how to set this up? I want a condition to check if the current time is between 00:50:00 and 01:00:00, but for every hour. so basically i would duplicate all my conditions for 01:50:00, 02:50:00 and so on, but that's a bit much. is there an easier way?
I think adding multiple date conditions is the best way.
I guess you could alternatively somehow get it to work using the timer condition but that is probably rather error prone.

If you have to use this type of check in multiple places you can however simply "reuse" the existing macro using the "Macro" condition type:
Date1.PNG

Date2.PNG


I just noticed while creating this example that there is a bug showing the wrong dates after reopening a macro containing date conditions.
Thankfully seems to just be an issue on the UI side and the correct values are used to do the actual checks.

A build with a fix for this visual issue should be available here in a few minutes:
 

CodeYan

Member
Thanks for the suggestion!
This was also requested in the past, but I just have not gotten around to it yet.
I will try to look into it.


I think adding multiple date conditions is the best way.
I guess you could alternatively somehow get it to work using the timer condition but that is probably rather error prone.

If you have to use this type of check in multiple places you can however simply "reuse" the existing macro using the "Macro" condition type:
View attachment 87363
View attachment 87365

I just noticed while creating this example that there is a bug showing the wrong dates after reopening a macro containing date conditions.
Thankfully seems to just be an issue on the UI side and the correct values are used to do the actual checks.

A build with a fix for this visual issue should be available here in a few minutes:
Thank you. How about if I need to add a condition with an AND? So if it's in those specified time ranges AND it's on a certain scene. I'm not sure about the precedence, but applying what I know by AND usually taking precedence over OR, this would mean I'd need an AND for each time range, is that correct? And thus, so I don't need to create multiple ANDs, i just group all the time ranges in one macro like you said, then AND in another macro?
 
Top