Advanced Scene Switcher

Advanced Scene Switcher 1.28.1

khaver

Member
Warmuptill, thank you for this plugin.

I'm trying to set up an auto recording scenario for our church's sermons. The sermons are usually around 30 to 40 minutes. Right now I'm using ffmpeg run from a cmd batch file that uses the Windows Task Scheduler to start it at a time on Sunday well before the sermon starts. It then continues recording until it's stopped manually at the end of the service. I see in your plugin you can set scene changes based on detecting a certain length of audio silence and activating a scene which can trigger the recording to stop. The problem I'm having is there are times before the sermon starts that the audio is muted for several minutes at a time. These silences will trigger the audio detection to change to the scene I have set to stop the recording. I would like to start OBS recording from the Task Scheduler, like I am ffmpeg, using the command line parameter "--startrecording", then delay your plugin from detecting the audio silence for say 20 minutes, well into the sermon, then after the sermon when the audio is muted after, say a minute, your plugin would switch to the scene that stops the recording.

Is there any way of doing this? Thanks in advance.
 

Warmuptill

Active Member
Warmuptill, thank you for this plugin.

I'm trying to set up an auto recording scenario for our church's sermons. The sermons are usually around 30 to 40 minutes. Right now I'm using ffmpeg run from a cmd batch file that uses the Windows Task Scheduler to start it at a time on Sunday well before the sermon starts. It then continues recording until it's stopped manually at the end of the service. I see in your plugin you can set scene changes based on detecting a certain length of audio silence and activating a scene which can trigger the recording to stop. The problem I'm having is there are times before the sermon starts that the audio is muted for several minutes at a time. These silences will trigger the audio detection to change to the scene I have set to stop the recording. I would like to start OBS recording from the Task Scheduler, like I am ffmpeg, using the command line parameter "--startrecording", then delay your plugin from detecting the audio silence for say 20 minutes, well into the sermon, then after the sermon when the audio is muted after, say a minute, your plugin would switch to the scene that stops the recording.

Is there any way of doing this? Thanks in advance.

You might be able to achieve what you are looking to do using the macro tab.
A macro similar to the following will allow you to disable the audio scene switch from having a effect for the first 20 minutes after starting OBS.
AudioTimer.PNG

Only if the timer reaches zero seconds <1> AND the volume threshold of the "Mic/Aux" source is below 20% for at least 1 minute <2> will the recording be stopped. <3>
I hope that helps!
 

khaver

Member
Just did a test at home using a 17 minute video clip with 2 minutes of silence before the talking, 10 minutes of talk, and another 5 minutes of silence after. Macro timer set for 10 minutes and the audio silence set for at least 1 minute, with the action to stop recording. Started OBS from the command line with the --startrecording parameter. After 13 minutes (2 minutes of silence, 10 minutes of talk, and 1 minute of silence) the recording stopped. It worked perfectly. Now I need to set this up on our church computer.

I'll let you know how it goes.

Thanks again.
 
Been using the plugin for my streaming operations here and am extremely impressed with it.

Now, I've gone from a single-PC setup to a dual-PC setup, one running OBS and VTube Studios, along with the game or video event I'm streaming, the second running just OBS Studio doing the actual streaming. Both are linked together via NDI with the first PC sending and the second receiving.

Is there a way to tell the other PC's OBS Studio to start/stop streaming and change scene from the PC I'm actually sitting at, short of being RDPed into the machine and directly operating that PC's OBS Studio? Would the network server/client within Advance Scene Switcher be of any use for this purpose?

Thanks in advance!

--Katt. =^.^=
 

grit60

New Member
Is there a way to tell the other PC's OBS Studio to start/stop streaming and change scene from the PC I'm actually sitting at, short of being RDPed into the machine and directly operating that PC's OBS Studio? Would the network server/client within Advance Scene Switcher be of any use for this purpose?

Yes, the Network tab will do this and the client will detect the scene change. Then the client, using this plugin, could detect the, "Thanks for watching" scene and stop streaming after a few seconds.
 
Yes, the Network tab will do this and the client will detect the scene change. Then the client, using this plugin, could detect the, "Thanks for watching" scene and stop streaming after a few seconds.

I guess it wasn't fully made clear that you have to use parallel, identically-named (down to even the case and spacing of those names) scenes on the controlling and controlled machines for what you're doing. In my case, I need to be able to start streaming, indicate in-band which machine is working to make sure pre-flight that things are working, select the NDI receiver scene, as well as end-of-stream activities.

In my case, the server is the full arbiter of everything that was happening, right down to when to begin and end the stream.

That said, I set something up to I could take full control from the gaming machine from start to finish, running a full test stream, and it worked perfectly.
 

Warmuptill

Active Member
I guess it wasn't fully made clear that you have to use parallel, identically-named (down to even the case and spacing of those names) scenes on the controlling and controlled machines for what you're doing. In my case, I need to be able to start streaming, indicate in-band which machine is working to make sure pre-flight that things are working, select the NDI receiver scene, as well as end-of-stream activities.

In my case, the server is the full arbiter of everything that was happening, right down to when to begin and end the stream.

That said, I set something up to I could take full control from the gaming machine from start to finish, running a full test stream, and it worked perfectly.
Thanks for the feedback!
I will try to make the requirement of the scene names having to match more clear by adding a note on the network tab.
 
Thanks for the feedback!
I will try to make the requirement of the scene names having to match more clear by adding a note on the network tab.

I'm looking at doing a tutorial video for how I run my stream to show how this can be used. Of course, there's no one right way to do it; every case is different!

--Katt. =^.^=
 

Bygrilinho

New Member
Heya, this macro section is really powerful and I absolutely love it! I have another issue tho. The time constraint keeps resetting whenever I restart OBS (I'm using the video condition)
 
Thanks for the updates. Quick question: How can we see which version we currently have installed (or downloaded)? I can't seem to find this anywhere. Thanks. :-)
 

Warmuptill

Active Member
Thanks for the updates. Quick question: How can we see which version we currently have installed (or downloaded)? I can't seem to find this anywhere. Thanks. :-)
Unfortunately the UI does not show this anywhere.
The OBS log will show which version of the plugin is installed in form of the commit hash.

I wanted to look into an auto-update mechanism anyways so maybe I will check to see if I can easily incorporate the version info in the UI.
(But I cannot promise that I will get around to this any time soon)
 
Unfortunately the UI does not show this anywhere.
The OBS log will show which version of the plugin is installed in form of the commit hash.

I wanted to look into an auto-update mechanism anyways so maybe I will check to see if I can easily incorporate the version info in the UI.
(But I cannot promise that I will get around to this any time soon)

Great stuff thanks, (at least I didn't miss something obvious). Small suggestion meanwhile. Possibly add the version number into the README.txt :-)
 

Bygrilinho

New Member
Heyy it's me again, with another bug :P
I can't scroll the list of options anymore (it works with the arrow keys but not with the scroll wheel), probably started in 1.15 but I hadn't noticed until now

Also there are 2 identical "Macro" options in the condition selector
1627255677597.png
 

Warmuptill

Active Member
Heyy it's me again, with another bug :P
I can't scroll the list of options anymore (it works with the arrow keys but not with the scroll wheel), probably started in 1.15 but I hadn't noticed until now

Also there are 2 identical "Macro" options in the condition selector
View attachment 73526
>I can't scroll the list of options anymore (it works with the arrow keys but not with the scroll wheel), probably started in 1.15 but I hadn't noticed until now

That was changed intentionally as it was very easy to accidentally change selections when scrolling through longer lists of actions and conditions.
You can still use the scroll wheel when first clicking on the particular option you want to change.

>Also there are 2 identical "Macro" options in the condition selector

I will look into it.
Thanks!
 

Warmuptill

Active Member
You're talking about scrolling when hovering, that works as intended
What I mean is, after clicking on an option and the list pops up, it won't scroll
I see what you mean - thanks for the clarification!
I have found a solution to this problem and build with this change should be available here in a few minutes:
(You will have to be logged into GitHub to be able to download it)

Regarding the duplicate entry for the "Macro" condition:
The reason this shows up twice is for backwards comparability with a previous version of the plugin.
I will remove it in a future update.
Thanks again for the hint!
 
Top