Advanced Scene Switcher

Advanced Scene Switcher 1.28.1

JasonB

New Member
Suggested Advanced Audio Option:

The ability to use a matching string of spoken words as an audio queue to trigger a transition
 

Warmuptill

Active Member
I was thinking probably I'm misunderstanding and yeah that's it. :)

What I wanted was like this.

I often alt tab a lot. And every single time if I do that ASS will switch even if I only show alt window for 0.5 sec.
And I was thinking this new feature will avoid that.
But that was my misunderstanding :p
Hopefully we can get that feature in the future.

Thanks man and sorry for wasting your time.
And keep up the good work!
You can ignore windows on the window title tab so that the scene switcher will act as if the previous window was still the active one.
E.g. to avoid switching when ALT + TAB itself is in focus you can add "Task Switching".

I just started using the Advanced Scene Switcher today and noticed two possible bugs.
  1. When using the option in the "General" tab: "Automatically start <streaming> on scene <selected scene>"
    1. If manually transitioning to that selected scene, it doesn't start streaming. It only triggers if the scene was transitioned into automatically by Advanced Scene Swither.
  2. When using the "Audio" tab to set up a transition when my microphone is below x-% for y-seconds
    1. When the scene that captures my microphone is active, the transition set up in the "Audio" tab only triggers if that said scene that captures my microphone begins with sound being picked up by the microphone right from the onset, then dropping below the defined % for the defined time period. If the scene opens with no audio being picked up from my microphone, because I'm not talking when the scene first opens, then I start talking, then stop, dropping the volume below the defined % for the defined time period, the transition doesn't trigger.
Thanks for reporting potential issues - I will try to reproduce the issues and fix them if possible!

EDIT:
Regarding the first issue:
I cannot reproduce the problem on my end.
Manually switching scenes also triggers starting of streaming / recording.

Did you make sure that the scene switcher is running?
Also note that starting of streaming / recording is only done once per scene change, as otherwise the user might be spammed with errors if the streaming / recording settings are invalid.

If you did make sure both of these points apply and the issue still occurs can you please send me an OBS log file when the issue occurred, while enable the verbose logging of the plug-in on the general tab?

Regarding the second issue:
I am not sure if I understand correctly what the problem is, as I also cannot reproduce the issue.
Are you talking about the global microphone audio source or did you create / use an additional one?
I am asking, because there is a check if an audio source is currently active.
A currently inactive audio source will never match - so maybe that is problem you are running into?
 
Last edited:

Warmuptill

Active Member
Suggested Advanced Audio Option:

The ability to use a matching string of spoken words as an audio queue to trigger a transition
Thanks for the suggestion!

Am I understanding correctly that the idea is to try to automatically detect speech?
If so that might be rather difficult to do as some sort of speech recognition software would need to be added. (which also would probably only work for one language)

I would suggest maybe running some sort of external program which writes the output to a file and then using the file tab to switch scenes accordingly.
 

Tormy

Member
I'm curious to understand how to install this under Windows, without having the need to have a compiler
 

Warmuptill

Active Member
Hi I am not getting the advented scene switcher installed. i think i do everything right but i don't see him in obs
Did you run the installer or try to install it manually by copying files to the respective folders?
If you are certain that you copied the files to the correct folder please share a log file of an OBS startup - maybe something goes wrong while loading the plugin.
I'm curious to understand how to install this under Windows, without having the need to have a compiler
There is no need to compile the plugin yourself - so you do not need a compiler.
Did you maybe accidentally download the source code instead of the prebuilt binaries?
I would recommend just running the provided installer named "AdvancedSceneSwitcherSetup.exe".
 

runecarlsen

New Member
I just moved to a mac mini m1.. and now, it doesnt work any longer. I only use the MEDIA tab, and i add the file, with the correct settings, nothing happens. Worse, - when I restart OBS, the settings I added, are gone... So, something is very strange! And I have a show on friday :(
 

Warmuptill

Active Member
I just moved to a mac mini m1.. and now, it doesnt work any longer. I only use the MEDIA tab, and i add the file, with the correct settings, nothing happens. Worse, - when I restart OBS, the settings I added, are gone... So, something is very strange! And I have a show on friday :(
I am sorry to hear that you are having troubles getting it to work.
Did you maybe forget to start the plug-in on the general tab just out of habit that it was always running?

If you did make sure that it is running and it is still not working, please send a log file of when the issue happens, while verbose logging is enabled. (See attached screenshot)

1610484995848.png


Also note that you are able to export your settings on the general tab of the plug-in.
So if you still have access to your old setup you can maybe export the settings there and import them on your new one.
(But please note that this requires the scenes / transition and so on specified in the settings to exist)

>when I restart OBS, the settings I added, are gone
Does this only affect the settings of the plug-in or all settings?
 

runecarlsen

New Member
It only happens to THIS plugin. And whatever I add in this plugin, is gone whenever I restart OBS.
And NO, the Plugin is running. And is still running, after restart of OBS.
 

runecarlsen

New Member
My bummer! I am so sorry! The window of the settings was a bit small, so I didnt see the setting about the transition. If this setting is not set, - it wont be saved, after restart of OBS. It will still be there, until you restart, but not work :)
 

Warmuptill

Active Member
My bummer! I am so sorry! The window of the settings was a bit small, so I didnt see the setting about the transition. If this setting is not set, - it wont be saved, after restart of OBS. It will still be there, until you restart, but not work :)
Ah good, one step closer :)

What exactly have you configured, that is not working?
Can you maybe share a log file as described above?
 

Bygrilinho

New Member
This plugin is great, really nice work! And I have a request: we can already choose if we want to start streaming and/or recording on a given scene, but the stopping function stops both. Could we have an option to stop only recording/only streaming on a given scene?
 

Warmuptill

Active Member
This plugin is great, really nice work! And I have a request: we can already choose if we want to start streaming and/or recording on a given scene, but the stopping function stops both. Could we have an option to stop only recording/only streaming on a given scene?
Thanks for the suggestion!
A version of the plug-in, where you can select whether to stop streaming, recording or both on a given scene, should be available in a couple of minutes here:
(You might have to be logged into Github to be able to download it)

Let me know if this works as expected or if you run into any issues.
 

demzou

New Member
Hi, I have just tried to install on my Mac and I don't seem to be able to get the plugin to appear in OBS.

macOS Mojave 10.15.5
OBS 26.0.2

Installer with the .pkg first, then tried all the copy-paste options. When starting OBS, the plugin is not listed in the Tools menu.

Here's what I am getting in the log when I start OBS:

Code:
01:51:47.457: os_dlopen(/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so->/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so): dlopen(/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so, 257): Library not loaded: @executable_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets
01:51:47.457:   Referenced from: /Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so
01:51:47.457:   Reason: Incompatible library version: advanced-scene-switcher.so requires version 5.15.0 or later, but QtWidgets provides version 5.14.0
01:51:47.457:
01:51:47.458: Module '/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so' not loaded

This seems to be related to a version of QtWidegts but this is now getting past my skills! Would anyone be able to help?
Many thanks!
 

Warmuptill

Active Member
Hi, I have just tried to install on my Mac and I don't seem to be able to get the plugin to appear in OBS.

macOS Mojave 10.15.5
OBS 26.0.2

Installer with the .pkg first, then tried all the copy-paste options. When starting OBS, the plugin is not listed in the Tools menu.

Here's what I am getting in the log when I start OBS:

Code:
01:51:47.457: os_dlopen(/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so->/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so): dlopen(/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so, 257): Library not loaded: @executable_path/../Frameworks/QtWidgets.framework/Versions/5/QtWidgets
01:51:47.457:   Referenced from: /Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so
01:51:47.457:   Reason: Incompatible library version: advanced-scene-switcher.so requires version 5.15.0 or later, but QtWidgets provides version 5.14.0
01:51:47.457:
01:51:47.458: Module '/Library/Application Support/obs-studio/plugins/advanced-scene-switcher/bin/advanced-scene-switcher.so' not loaded

This seems to be related to a version of QtWidegts but this is now getting past my skills! Would anyone be able to help?
Many thanks!

If I am not mistaken you will have to upgrade to at least OBS 26.1 in order for plug-in to be able to load.

The OBS 26.1 release notes contain the following information, which is the cause for the issue you are seeing:
> Updated dependencies on Windows and macOS (such as x264 and Qt) to their latest versions for the latest performance improvements
(I do not mean to say that updating the QT libs was a bad idea!)

I would appreciate if you could give updating OBS a try and report back if the issue is resolved.

If updating to the most recent OBS version should not be possible let me know and I can build a version of the plug-in with the old QT libs.
 

demzou

New Member
If I am not mistaken you will have to upgrade to at least OBS 26.1 in order for plug-in to be able to load.

The OBS 26.1 release notes contain the following information, which is the cause for the issue you are seeing:
> Updated dependencies on Windows and macOS (such as x264 and Qt) to their latest versions for the latest performance improvements
(I do not mean to say that updating the QT libs was a bad idea!)

I would appreciate if you could give updating OBS a try and report back if the issue is resolved.

If updating to the most recent OBS version should not be possible let me know and I can build a version of the plug-in with the old QT libs.

It worked!!! Thanks for the help!

It's a great plugin, a lot of potential!
I am not sure it will fit my short term needs but I am going to carry on exploring.

Here's my use case if you are interested in new features:
I have a set of cameras in the space and a set of scenes that mixes the different cameras. I am using OBS for livetsreaming a dance performance and I'd like to create a timeline to switch from one scene to another automatically, matching the choreography and the music. Most of the time, I need to use the same scene several times during a performance. One workaround in the short term would be to duplicate my scenes, give them different names and use the Sequence tab. But I might end up with a huge list of scenes, making it a bit hard to manage.

Let me know what you think!
 

Warmuptill

Active Member
It worked!!! Thanks for the help!
Glad to hear you got it to work :)

Here's my use case if you are interested in new features:
I have a set of cameras in the space and a set of scenes that mixes the different cameras. I am using OBS for livetsreaming a dance performance and I'd like to create a timeline to switch from one scene to another automatically, matching the choreography and the music. Most of the time, I need to use the same scene several times during a performance. One workaround in the short term would be to duplicate my scenes, give them different names and use the Sequence tab. But I might end up with a huge list of scenes, making it a bit hard to manage.
That is indeed a somewhat frequent request.
I will think about adding something which would support such behaviour without having to create a bunch of copies of scenes.

My current idea on how to solve this is that instead of choosing a single scene as a target, one could specify a group of scenes.
A scene group would basically be a list of scenes of which only one will actually be switched to.
Each time a scene group is selected as a target the scene group will advance to the next entry in the list.

So as an example:

Scene Group:
Scene 1
Scene 2
Scene 3

Scene Sequence:
When "Scene 4" is active for X seconds switch to "Scene Group".

The first time around the scene sequence would match it would switch to Scene 1, the second time to Scene 2 and the third time to Scene 3.

What do you think?
Would that be a somewhat reasonable solution?
 

demzou

New Member
Glad to hear you got it to work :)


That is indeed a somewhat frequent request.
I will think about adding something which would support such behaviour without having to create a bunch of copies of scenes.

My current idea on how to solve this is that instead of choosing a single scene as a target, one could specify a group of scenes.
A scene group would basically be a list of scenes of which only one will actually be switched to.
Each time a scene group is selected as a target the scene group will advance to the next entry in the list.

So as an example:

Scene Group:
Scene 1
Scene 2
Scene 3

Scene Sequence:
When "Scene 4" is active for X seconds switch to "Scene Group".

The first time around the scene sequence would match it would switch to Scene 1, the second time to Scene 2 and the third time to Scene 3.

What do you think?
Would that be a somewhat reasonable solution?

This might work, I will have a try.

In the meantime, I managed to get my hands on the obs-websocket plugin. My performance already uses an instance of node running in MaxMSP. And there's a timeline in there managing the interactive elements of the performance. So I have connected obs-websockets to it and it's working pretty nicely, making my programme completely integrated, I just have to click on one button and the full thing is running automatically. Buuut I am definitely interested in a less tech-heavy solution for future performances, so I will try your solution as well :)

Thanks for the help!
 

Warmuptill

Active Member
This might work, I will have a try.

In the meantime, I managed to get my hands on the obs-websocket plugin. My performance already uses an instance of node running in MaxMSP. And there's a timeline in there managing the interactive elements of the performance. So I have connected obs-websockets to it and it's working pretty nicely, making my programme completely integrated, I just have to click on one button and the full thing is running automatically. Buuut I am definitely interested in a less tech-heavy solution for future performances, so I will try your solution as well :)

Thanks for the help!
That already sound like a pretty great solution!
I am not sure if the method I proposed is really much better.
But I will let you know once I got around to implementing a first working version.
(Can't give an ETA yet unforunately as I do not when I will find the time to implement this)
 
Top