Advanced Scene Switcher

Advanced Scene Switcher 1.28.1

Rozenman

Member
Hi all!
I set up a notification in the plugin when the broadcast bitrate drops below a certain value, as well as when drop frames appear (in order to switch to another provider in time and not interrupt the lecture). Notifications appear, but only after exiting OBS. What can be done? Thank you!
Mac OS Sonoma. I checked all the system settings and gave all permissions.
Thanks!
 

Rozenman

Member
Every single time I go to my macros it crashes my OBS. Every time.
Just a week ago I encountered the same problem. I was forced to delete all files from the Settings Folder and then restore OBS settings from settings backups and plugin backups. The reason for the crash was that I made a mistake in the lecture schedule settings, setting the same date for two different lectures in macro conditions.

I can't guess what mistake you made. But rest assured that the reason is a user error in setting up the macro, and not a bug in the plugin. The creator of the plugin cannot guess all our stupidities and mistakes. )

After this sad story, I began to create backup copies at literally every step of setting up the plugin.
 

Rozenman

Member
Friends, please tell me how to correctly configure the condition of a macro that notifies about the execution of another macro? Let me explain: one of my macros loads a certain list of image files into the slideshow settings. The same macro the next day, for another lecture, leaves the list of image files empty. On the third day, it loads another list of other images. I need the notification to appear only when the images are loaded. And it doesn’t matter which ones - the main thing is that something is loaded. But when the list is empty, the notification should not appear. The task is not as simple as it seems at first glance. I would be very grateful for your advice.
 

Warmuptill

Active Member
Is there any way to trigger a macro based on storage space left on the system (Mac in particular)?
I'm trying to send a warning message when storage left reaches a particular threshold.
Unfortunately there is not at the moment.
It is a bit backwards but maybe the "OBS stats" condition type can be of use to you to check how much data was already written.

1712250018501.png


Hi all!
I set up a notification in the plugin when the broadcast bitrate drops below a certain value, as well as when drop frames appear (in order to switch to another provider in time and not interrupt the lecture). Notifications appear, but only after exiting OBS. What can be done? Thank you!
Mac OS Sonoma. I checked all the system settings and gave all permissions.
Thanks!
Hm .. that seems a bit strange.
Have you already tried replacing the action with something else for testing purposes?
Just to narrow down if the issue is with the condition setup not functioning as expected or the "System tray notification" action.

There might be some MacOS specific system tray option I am not aware of.
What worked for me in the VM I use for testing are the following settings:
1712250388796.png


Is there a way for this to end the stream if a raid out happens?
Maybe something like this will do the trick, assuming I understood the question correctly:
1712250687768.png


Every single time I go to my macros it crashes my OBS. Every time.
First of all - sorry about that!

Unfortunately, the crash log does point to the crash happening in the plugin code directly.
The crash happens somewhere in the Qt libraries which are used to display the OBS UI.

But this does not exclude that the crash is not caused by the plugin via some side effect.
I am not able to reproduce the issue on my end so far.

Can you test if the issue also happens on a different scene collection?
If it does *not* happen in a new / different scene collection, would you be willing to share the problematic scene collection with me? (Doesn't need to be here - you can also send it to me via direct message if you don't want to share it publicly)

Friends, please tell me how to correctly configure the condition of a macro that notifies about the execution of another macro? Let me explain: one of my macros loads a certain list of image files into the slideshow settings. The same macro the next day, for another lecture, leaves the list of image files empty. On the third day, it loads another list of other images. I need the notification to appear only when the images are loaded. And it doesn’t matter which ones - the main thing is that something is loaded. But when the list is empty, the notification should not appear. The task is not as simple as it seems at first glance. I would be very grateful for your advice.
You might be able to achieve that using a condition setup like this:
1712251311243.png

The first condition checks that the list of files is not empty and the second one checks that the value changed.

For this to work you will however have to install an "unofficial" release of the plugin, which is available here on GitHub:
You will have to be logged into GitHub to be able to download it - let me know if that should be a problem.

Hope that helps! :)
 

Attachments

  • 1712250178100.png
    1712250178100.png
    16.6 KB · Views: 13

Destroy666

Member
Is there any way to trigger a macro based on storage space left on the system (Mac in particular)?
I'm trying to send a warning message when storage left reaches a particular threshold.

Yes. But for that you need recent master version, which adds macro properties to Run condition/action, and knowledge about CLI in your system.

Simply use Run action with a command that reports free space in a readable manner. I see there's e.g. `df -h` support: https://man7.org/linux/man-pages/man1/df.1.html but then I'm not a Mac expert by any means. You can then use standard output macro property and either check it in 2nd condition with a regex or assign it to variable in an action and process it in any way you'd like.

Or if you'd like to use stable version, it's also possible if you write a script that exits with a negative code if there's not enough space. Advanced Scene Switcher can verify the exit code currently.
 

MendezPDF

New Member
Buenas a todos, yo unicamente quiero que cambie de webcam OBS de manera automática, creo que tengo que hacerlo por cambio de escena y en estas solo cambiar la webcam a ver, el problema es que en OBS cuando entro en el plugin unicamenta sale la pestaña de General y Macro, el resto de pestañas como en los tutoriales que veo no aparecen, como lo puedo solucionar??? OBS es la versión 30.1.2
 

AaronD

Active Member
Buenas a todos, yo unicamente quiero que cambie de webcam OBS de manera automática, creo que tengo que hacerlo por cambio de escena y en estas solo cambiar la webcam a ver, el problema es que en OBS cuando entro en el plugin unicamenta sale la pestaña de General y Macro, el resto de pestañas como en los tutoriales que veo no aparecen, como lo puedo solucionar??? OBS es la versión 30.1.2
Those tutorials are ancient. If you really want their functionality, you can uncheck the box in the General tab that hides them, but their continued presence is not guaranteed. Since the macros can do everything that the other tabs can and far more, it's strongly recommended to use the macros, and allow the other tabs to go away entirely at some point in the future.

The macros work by watching for a Condition to be true, and when it is, it performs some Actions. So in your case, you'd have a scene-switch action that is triggered by whatever you want it to watch for.
 

MendezPDF

New Member
Those tutorials are ancient. If you really want their functionality, you can uncheck the box in the General tab that hides them, but their continued presence is not guaranteed. Since the macros can do everything that the other tabs can and far more, it's strongly recommended to use the macros, and allow the other tabs to go away entirely at some point in the future.

The macros work by watching for a Condition to be true, and when it is, it performs some Actions. So in your case, you'd have a scene-switch action that is triggered by whatever you want it to watch for.
Gracias por la respuesta.

Entonces con esas dos pestañas sería suficiente, tienes algún enlace a tutorial actualizado donde explique lo que quiero hacer que debe de ser lo más sencillo en este plugging
 

AaronD

Active Member
Gracias por la respuesta.

Entonces con esas dos pestañas sería suficiente, tienes algún enlace a tutorial actualizado donde explique lo que quiero hacer que debe de ser lo más sencillo en este plugging

You didn't say what you want it to respond to, so I guessed that you want it to run on a timer. Here's one of many ways to do that, and my favorite, as a loop of 3:
1712592303036.png

1712592331355.png

1712592339756.png

As you can see, the last one has a different condition. Instead of a timer, it waits for the actual video to be (almost) done. It triggers a 1/2 second early to make room for a 1/2 second transition while the video is still playing, which looks a lot better than waiting for the video to stop completely before switching. The loop comes from the last one switching to what the first one is looking for.

Another way to do it is to have a single macro that has all the scene switches in it, and a Wait action between each one. That works too, but I don't like it as much because it's much harder to escape, and it must always start at the same place, and it's not as clear how to make it loop. My method shown here, allows you to start with any step just by switching to that scene, and it allows you to stop just by switching to something that none of them is looking for.
 

Bairespm

Member
Hi @Warmuptill , I would like to know if the following can be achieved

in obs I have a scene that has a browser source "phone"

Through an application on my phone I send the signal which is an HTTP address

For it to work the first time I connect it I must enter the properties of the "phone" browser source and update the cache
then it works fine if I disconnect and reconnect without problems.

To avoid this, I am looking to use ADVSS to check if the browser source receives a signal and it is the first time to update the cache or force an update of the web page.

I know there is an option in properties so that every time that source is displayed it is updated... but it doesn't help me because showing it live generates loading delays. or black screen until it loads. and the audio goes wrong.

Is it possible to achieve this with a macro?

thank you
 

jegadk

Member
Hi.

Have a special wish.

Some weeks a year i have icehockey tournaments both saturday and sunday, with up to 42 games. I set up a macro with name "Rink 1 Game 1" This macro starts recordig on dateTime and stop recording 45 min later. One macro for each game.

Would it be possible to have an action that set the recording name to macro name. Like "Rink 1 Game 1 [%hh%mm%ss]"
so every recording file name match the game and rink

Next wish. Reading a txt file json format. I can generate the gamelist from my tournamentsystem like this.

[
{
"MacroName": "Rink 1 Game 1",
"conditions": [
{
"date": "2024.04.10 23:00:00"
}
],
"actions": [
{
"recording": "startRecording"
},
{
"wait": "45m"
},
{
"recording": "stopRecording"
}
]
}
]

Thanks for this nice plugin.

Regards - Jesper Denmark
 

Destroy666

Member
You can read JSON with Variable action -> Extract json field with name. Unfortunately it's as basic as it can get and can only extract one level and not inside of an array - nested values are handled by using the action multiple times. So you would need to either change format of your file or process the JSON first.

More advanced JSON processing like JSONPath was suggested but not implemented as of now.
 

jegadk

Member
You can read JSON with Variable action -> Extract json field with name. Unfortunately it's as basic as it can get and can only extract one level and not inside of an array - nested values are handled by using the action multiple times. So you would need to either change format of your file or process the JSON first.

More advanced JSON processing like JSONPath was suggested but not implemented as of now.
My wish was not just to read json, but create a jsonfile from my tournamentgame system, and import as macros

Friday 12/4 i have 16 games and must setup 16 macros manualy. It was nice to just import these games as macros
 

kkwheeler

New Member
Is there a way to set up a macro to run when I exit a scene? I have a countdown scene to start my church broadcast which turns on streaming. Once I go out of that scene and choose any other scene, I'd like it to start recording and turn on the main audio. I have multiple scenes that I could go into from the countdown scene and I don't want to have to set up a macro to start to record for each scene that I MIGHT select as my first scene out of the countdown scene.
 

l1i1l

Member
Is there a way to set up a macro to run when I exit a scene? I have a countdown scene to start my church broadcast which turns on streaming. Once I go out of that scene and choose any other scene, I'd like it to start recording and turn on the main audio. I have multiple scenes that I could go into from the countdown scene and I don't want to have to set up a macro to start to record for each scene that I MIGHT select as my first scene out of the countdown scene.

Below will help you.
(If I misunderstood about your "main audio", please provide the correct option).

1713176014142.png
 

AaronD

Active Member
Is there a way to set up a macro to run when I exit a scene? I have a countdown scene to start my church broadcast which turns on streaming. Once I go out of that scene and choose any other scene, I'd like it to start recording and turn on the main audio. I have multiple scenes that I could go into from the countdown scene and I don't want to have to set up a macro to start to record for each scene that I MIGHT select as my first scene out of the countdown scene.
You might use the "If not" condition instead of the default "If", combined with the "only on change" checkbox. So the macro runs once as soon as you're NOT on the selected scene, and not again until you leave again.
1713184422767.png

This combination of condition and actions will record a 1-second fade-in as the scene is still transitioning away. As always, you can change the options to do something different.
 
Top