Advanced Scene Switcher

Advanced Scene Switcher 1.31.0

Warmuptill

Active Member

New User, installed plugin per instructions, Mac Sequoia M1 Pro - Crash happens when opening OBS
Unfortunately there is no indication of the advanced scene switcher even being loaded in the log you shared.
Do you have a crash log as well?
On MacOS this should be contained in the dialog window popping up informing you that OBS crashed.

In case you did not use the installer and manually placed the files in the corresponding directories please ensure to "sign" the files afterwards as described here:
 

cdante100

New Member
I am at a bit off a loss.
The log does unfortunately not give any conclusive hints as to what the problem might be.

Can you please send me an export of your settings?
You can export them to a file on the General tab.
Please send them to me via DM and not here to make sure your Twitch token does not get leaked.

I apologise that it is such a chore to get it working for you for some reason.
Hi man, i've sended you some update about the bug
 

FOXENHEiM

New Member
Hi there,

After updating to 1.31.0 (from 1.27.0) some "if statements" are not working. Specifically the ones I use to control one of my sound sources. Everything else seem to work perfectly, but the macros controlling audio level does not work, even after creating new ones.

I used them in the following way:
I had 4 marcos with if statements running together to govern the "audio configured volume" of my sound source, by looking at the "audio output level". Each macro would do something like the following:

If [output volume] exceeds (x)
And [configured volume] is exactly (y)
Then adjust [configured volume] to (73%)(this value changes based depending on (y))

These macros don't do anything anymore. As a side note the version I used did not have any fractions available for volume percentages, and could only be configured as percentage. V 1.31.0 can now be configured in either percentage or db, and percentage now has fractions available. I did double, triple an quadtriple checked that the volume levels match to the fraction perfectly stil with no success, not sure if the fractions are somehow causing this.

When I remove the "And [configured volume] is exactly (y)" part of the trigger works, but if Advanced scene Switcher does not know the current configured volume, it will not know which one of the 4 macros to fire.

Is there any known workaround for this? Or should I downgrade?

Also thank you so very much for this amazing plugin, such a lifesaver. Thank you for all the hard work <3
 
Last edited:

Warmuptill

Active Member
Hi there,

After updating to 1.31.0 (from 1.27.0) some "if statements" are not working. Specifically the ones I use to control one of my sound sources. Everything else seem to work perfectly, but the macros controlling audio level does not work, even after creating new ones.

I used them in the following way:
I had 4 marcos with if statements running together to govern the "audio configured volume" of my sound source, by looking at the "audio output level". Each macro would do something like the following:

If [output volume] exceeds (x)
And [configured volume] is exactly (y)
Then adjust [configured volume] to (73%)(this value changes based depending on (y))

These macros don't do anything anymore. As a side note the version I used did not have any fractions available for volume percentages, and could only be configured as percentage. V 1.31.0 can now be configured in either percentage or db, and percentage now has fractions available. I did double, triple an quadtriple checked that the volume levels match to the fraction perfectly stil with no success, not sure if the fractions are somehow causing this.

When I remove the "And [configured volume] is exactly (y)" part of the trigger works, but if Advanced scene Switcher does not know the current configured volume, it will not know which one of the 4 macros to fire.

Is there any known workaround for this? Or should I downgrade?

Also thank you so very much for this amazing plugin, such a lifesaver. Thank you for all the hard work <3
I am not aware of any issues with the audio condition type.
But that of course doesn’t mean that there isn’t a potential issue. ;)
I will try to look into it later today.

In case you did not do so already you can enable visual indicators to help identify when a condition evaluate to true or false.
 

FOXENHEiM

New Member
I am not aware of any issues with the audio condition type.
But that of course doesn’t mean that there isn’t a potential issue. ;)
I will try to look into it later today.

In case you did not do so already you can enable visual indicators to help identify when a condition evaluate to true or false.
Thank you very much for getting back to me. I will use the visual indicators to do some more trouble shooting abd let you know what I find. Thanks again
 

FOXENHEiM

New Member
I am not aware of any issues with the audio condition type.
But that of course doesn’t mean that there isn’t a potential issue. ;)
I will try to look into it later today.

In case you did not do so already you can enable visual indicators to help identify when a condition evaluate to true or false.
I think I have an idea of what's happening: I don't think the problem has anything to do with ASS...or not really.

I updated OBS and with it all of my plugins. And that is when the volume macros stopped triggering. I used the visual indicaters like you sugested and I was able to determine that it is the [configured volume is EXACTLY] that does not trigger. This change in behaviour of my macros happens even if I dont update ASS after updating to OBS to 31.2.1

It's the OBS update that introduces the fractions(with volume percentage), even if I don't update ASS.

I used the MOVE plugin in conjunction with ASS to change the volume to certain db values. But it seems that when the MOVE plugin change the volume, it is not exact enoigh for the new OBS fractions or something like that, because the "match exactly" trigger doesn't work.

When I changed the macros to use the ASS internal AUDIO volume adjustments, it now triggers. Leading me to believe that the ASS volume change is exactly accurate. That, or maybe the ASS reads the volume differently from OBS.

Anyway, I found a way to get it to work again, but thought I should give the info.
Thanks again
 

ubuntourist

New Member
I recently tried to install Advanced Scene Switcher from a tarball, and upon running, got the non-critical errors:

[adv-ss] failed to load ".../advanced-scene-switcher-usb.so": \ Cannot load library .../advanced-scene-switcher-usb.so: \ libusb-1.0.so.0: cannot open shared object file: No such file or directory [adv-ss] failed to load ".../advanced-scene-switcher-opencv.so": \ Cannot load library .../advanced-scene-switcher-opencv.so: \ libtesseract.so.5: cannot open shared object file: No such file or directory [adv-ss] failed to load ".../advanced-scene-switcher-mqtt.so": \ Cannot load library .../advanced-scene-switcher-mqtt.so: \ libpaho-mqttpp3.so.1: cannot open shared object file: No such file or directory

Then I tried the Flatpak which fixed the OpenCV error, but shows no evidence of the USB or the MQTT stuff.

Mostly, I'm curious about the missing bits. Is it Flatpak sandboxing that's keeping the USB and MQTT out? Or is there a way to include those? And what conditions come with USB?
 

Warmuptill

Active Member
I recently tried to install Advanced Scene Switcher from a tarball, and upon running, got the non-critical errors:

[adv-ss] failed to load ".../advanced-scene-switcher-usb.so": \ Cannot load library .../advanced-scene-switcher-usb.so: \ libusb-1.0.so.0: cannot open shared object file: No such file or directory [adv-ss] failed to load ".../advanced-scene-switcher-opencv.so": \ Cannot load library .../advanced-scene-switcher-opencv.so: \ libtesseract.so.5: cannot open shared object file: No such file or directory [adv-ss] failed to load ".../advanced-scene-switcher-mqtt.so": \ Cannot load library .../advanced-scene-switcher-mqtt.so: \ libpaho-mqttpp3.so.1: cannot open shared object file: No such file or directory

Then I tried the Flatpak which fixed the OpenCV error, but shows no evidence of the USB or the MQTT stuff.

Mostly, I'm curious about the missing bits. Is it Flatpak sandboxing that's keeping the USB and MQTT out? Or is there a way to include those? And what conditions come with USB?
The flatpak build does not include the USB and MQTT libaries.
This probably happens because build time dependencies are missing.
I will try to look into it when I find the time to.

Thanks for pointing that out!
 

KaroHolmberg

New Member
I have had issues with Advanced Scene Switcher's hotkey-process for some time now. Some times it works, some times it doesnt, and I do not seem to find out what is the reason or trigger that makes it function or not function.

I use global hotkeys to a) select a camera, and b) select a preset (= a predetermined PTZ-position for the camera):
- Numpad1-4 = Select Camera 1-4
- Numpad7-9 = Activate Camera Specific PTZ-Preset 1-3

OBSbot Center has these Global Shortcuts assigned - and they work 100% when used from keyboard (as shown in video).

I have gathered a video of the issue, a small report.txt and also included a log of run actions.

This is also odd because some of my macros do work (camera angles change), but some don't. Some macros work some times and sometimes they dont.

OBS version: 31.1.2
ASS version: 1.31.0

 

Warmuptill

Active Member
I have had issues with Advanced Scene Switcher's hotkey-process for some time now. Some times it works, some times it doesnt, and I do not seem to find out what is the reason or trigger that makes it function or not function.

I use global hotkeys to a) select a camera, and b) select a preset (= a predetermined PTZ-position for the camera):
- Numpad1-4 = Select Camera 1-4
- Numpad7-9 = Activate Camera Specific PTZ-Preset 1-3

OBSbot Center has these Global Shortcuts assigned - and they work 100% when used from keyboard (as shown in video).

I have gathered a video of the issue, a small report.txt and also included a log of run actions.

This is also odd because some of my macros do work (camera angles change), but some don't. Some macros work some times and sometimes they dont.

OBS version: 31.1.2
ASS version: 1.31.0

I am sorry to hear that!

Just to narrow down the issue:
Does another application like e.g. notepad receive the keypresses sent by advanced scene switcher?

And to avoid a misunderstanding:
Your screenshot shows that you simulate a keypress of the "4" button, but your post mentions, that you have bound your hotkeys to "numpad 4".
While both keys result in the same number being typed, they are treated as separate individual keys.
So, an application might not react, if you are pressing "4", but it is expecting "numpad 4".

1758222207518.png
 

KaroHolmberg

New Member
I am sorry to hear that!

Just to narrow down the issue:
Does another application like e.g. notepad receive the keypresses sent by advanced scene switcher?
Yes - If I have any other input-field active, numbers are printed there normally :)


And to avoid a misunderstanding:
Your screenshot shows that you simulate a keypress of the "4" button, but your post mentions, that you have bound your hotkeys to "numpad 4"
While both keys result in the same number being typed, they are treated as separate individual keys.
So, an application might not react, if you are pressing "4", but it is expecting "numpad 4".
This is actually a good point - How the heck i did not see this one coming. I need to test this possibility - hopefully this is (at least) one reason that causes issues and would be fixed by changing the keypresses on the macro!

I have always just thought Numpad4 to be equal to character 4, but you are right that they are not.

Tests continue!
 

funk2die

New Member
Dear WarmUpTill,

I have not very much experience in OBS and IT woule be nice to get some Help for my Problem.
I have one Scene with 3 main cameras that switch every 15 Seconds. This is managed by the source switcher Plugin.
Additional a small window in my overlay should Show one of the 2 other cameras. This should of course also Switch when the main cameras Changes automaticaly. The easiest way would Bento create 2 more scenes and Switch the scenes. But I would like to have only one Scene. So the questions ist how to set Up this Action. Its too Tricky for me because the cameras source can't be used for this action. So the responsible source is the source switcher which managed the source switching. Is there a way to configure your tool Like... If the source switcher shows cam1 from the Basic Scene, the advanced scene switcher should visible cam-2-mini and unvisibleb cam3-mini and cam1-mini.
Next is cam3 shown , cam3-mini and cam2-mini are unvisible. Is that possible with your tool?

Many many thanks for your time and will to Help.
Andi
 

cdante100

New Member
Hi, I noticed a strange thing, I set it so that when an event happens the recording starts, waits 5 seconds and pauses it, and then records if it detects movement in the video, at another event it stops the recording, I noticed that at the first recording everything works fine, but at the second the recording is not paused and I can't stop it or even close obs.
 

Warmuptill

Active Member
Dear WarmUpTill,

I have not very much experience in OBS and IT woule be nice to get some Help for my Problem.
I have one Scene with 3 main cameras that switch every 15 Seconds. This is managed by the source switcher Plugin.
Additional a small window in my overlay should Show one of the 2 other cameras. This should of course also Switch when the main cameras Changes automaticaly. The easiest way would Bento create 2 more scenes and Switch the scenes. But I would like to have only one Scene. So the questions ist how to set Up this Action. Its too Tricky for me because the cameras source can't be used for this action. So the responsible source is the source switcher which managed the source switching. Is there a way to configure your tool Like... If the source switcher shows cam1 from the Basic Scene, the advanced scene switcher should visible cam-2-mini and unvisibleb cam3-mini and cam1-mini.
Next is cam3 shown , cam3-mini and cam2-mini are unvisible. Is that possible with your tool?

Many many thanks for your time and will to Help.
Andi
Unfortunately, I have not used the source switcher myself, but from what you have described this should be possible.
If the source switcher shows cam1 from the Basic Scene, the advanced scene switcher should visible cam-2-mini and unvisibleb cam3-mini and cam1-mini.
This would look something like this:
1758570418211.png

I assume you will have to setup a set of additional macros besides the example I shared above for the other camera combinations.

Sorry for the delayed response!

Hi, I noticed a strange thing, I set it so that when an event happens the recording starts, waits 5 seconds and pauses it, and then records if it detects movement in the video, at another event it stops the recording, I noticed that at the first recording everything works fine, but at the second the recording is not paused and I can't stop it or even close obs.
It is a bit difficult to say what the problem might be.
But from your description I would assume that something is going wrong in the recording itself.
Do you have an OBS log you could share, which includes this problem?
 

yukon92

Member
Is there a solution to get AdvSS to save the position of the docks? If a different scene from "scene collections" is selected, I have to reselect the docks and manually reposition them within the OBS GUI manually.

1758634975652.png
 

effortnottalent

New Member
That's great, much thankings! Will take a look and come back with any questions.

Thanks for replying to my post!
Life got in the way a bit, but I'm back looking at this.

I think a key aspect of what I'm trying to do is manage the pausing and unpausing of existing macros, as well as managing conditions around when they fire. This would allow me to keep the schedule and detail of the macros within ASS itself - my scripts would simply be updating a next-fire-date-time condition on a macro should a DJ be absent and a prerecorded mix to be played.

Is there a way of updating properties of existing macros managed by ASS? I guess I can update the macro definition json file directly but I believe that's only loaded into ASS at OBS load, so updates I made to it wouldn't apply until I restarted OBS, which is something I can't do.

I guess I can create a placeholder macro that updates information in a particular scene to reflect the absent DJ name/mix/background, and trigger the macro myself, but that means I'm doing more work than I'd like - I'd like not to run a scheduler if I can avoid it.
 

Warmuptill

Active Member
Here's the log
Could it be that you have configured the advanced scene switcher plugin to automatically start when a recording is started?
I assume the following might be happening:
  • Recording is started
  • OBS is starting to shut down
  • Advanced scene switcher is starting to shut down
  • The "recording started" event is still in queue on Advanced Scene Switcher side and now gets processed
  • Advanced scene switcher starts back up since is configured to do so when the "recording started" event is received
  • OBS can't continue to shut down since the Advanced scene switcher is running still
If that sounds like a reasonable explanation to you I will add a check to prevent the plugin from starting back up while OBS is already shutting down.

Is there a solution to get AdvSS to save the position of the docks? If a different scene from "scene collections" is selected, I have to reselect the docks and manually reposition them within the OBS GUI manually.

View attachment 115657
Unfortunately, there is not at the moment.

Life got in the way a bit, but I'm back looking at this.

I think a key aspect of what I'm trying to do is manage the pausing and unpausing of existing macros, as well as managing conditions around when they fire. This would allow me to keep the schedule and detail of the macros within ASS itself - my scripts would simply be updating a next-fire-date-time condition on a macro should a DJ be absent and a prerecorded mix to be played.

Is there a way of updating properties of existing macros managed by ASS? I guess I can update the macro definition json file directly but I believe that's only loaded into ASS at OBS load, so updates I made to it wouldn't apply until I restarted OBS, which is something I can't do.

I guess I can create a placeholder macro that updates information in a particular scene to reflect the absent DJ name/mix/background, and trigger the macro myself, but that means I'm doing more work than I'd like - I'd like not to run a scheduler if I can avoid it.
There is no direct way to modify the settings of another macro from within a script.
You can however modify variable values using advss_set_variable_value (and read them out using advss_get_variable_value.
So, you could for example set up a helper macro which pauses a macro based on a variable value like this:
1758642780254.png

Or alternatively you could adapt the condition section of "Macro 1" to always evaluate to "false" when a variable has a certain value.
If you have concrete example you need support for I am happy to help!
 

cdante100

New Member
Could it be that you have configured the advanced scene switcher plugin to automatically start when a recording is started?
I assume the following might be happening:
  • Recording is started
  • OBS is starting to shut down
  • Advanced scene switcher is starting to shut down
  • The "recording started" event is still in queue on Advanced Scene Switcher side and now gets processed
  • Advanced scene switcher starts back up since is configured to do so when the "recording started" event is received
  • OBS can't continue to shut down since the Advanced scene switcher is running still
If that sounds like a reasonable explanation to you I will add a check to prevent the plugin from starting back up while OBS is already shutting down.
The shutdown was me trying to close obs, the problem only occurs when there are more than 1 recording in 1 obs session, the first recording went without problems, the settings are the same ones I already sent you
 
Last edited:

Warmuptill

Active Member
The shutdown was me trying to close obs, the problem only occurs when there are more than 1 recording in 1 obs session, the first recording went without problems, the settings are the same ones I already sent you
The second recording seemed fine and was successfully paused and unpaused, as far as I can tell from the log:
Code:
### first recording starts here ###
14:01:42.069: ==== Recording Start ===============================================
### (un)pausing and macros also seem to work as far as I can tell ###
14:41:01.120: [adv-ss] spent 515 ms in video condition check of macro 'T Unpause recording'!
### recording stops ###
17:10:07.624: ==== Recording Stop ================================================
...
### second recording starts here ###
18:07:22.003: ==== Recording Start ===============================================
18:07:22.003: [ffmpeg muxer: 'adv_file_output'] Writing file 'C:/Users/Utente/Videos/OBS/2025-09-16 18-07-21.mkv'...
18:07:26.981: output adv_file_output paused
18:07:26.994: output adv_file_output unpaused
...
### shutdown issue ###
18:07:56.473: ==== Shutting down ==================================================
...
18:08:01.636: [adv-ss] started
...
The only issue I could find in the log was the shutdown issue.

So, I am unfortunately not sure what the problem could be.
Maybe the pause and unpause in the second recording happen too quickly one after another and "confuse" OBS?
 
Top