Advanced Scene Switcher

Advanced Scene Switcher 1.28.1

This is how I am going about the ducking so far, it seems to work for the most part, seems longer files arnt ducked the whole time...

I have a couple more condition sources, and a few more action sources to put in...

Just curious if you think I am on the right track, or a better way I could be doing it?
 

Attachments

  • Screenshot 2024-06-18 025226.png
    Screenshot 2024-06-18 025226.png
    37.1 KB · Views: 28
  • Screenshot 2024-06-18 025257.png
    Screenshot 2024-06-18 025257.png
    37.6 KB · Views: 28

AaronD

Active Member
This is how I am going about the ducking so far, it seems to work for the most part, seems longer files arnt ducked the whole time...

I have a couple more condition sources, and a few more action sources to put in...

Just curious if you think I am on the right track, or a better way I could be doing it?

Does your response here still stand?:

My suggestions still do.
Seems to me like you're trying to reinvent a common professional tool...while claiming that the same tool is "too hard".
 

Onioniyoni

New Member
Use lots of macros! One for each step:
  • Step 1
    • Condition:
      • Scene _ for A seconds
    • Action:
      • Switch to Scene 1
  • Step 2
    • Condition:
      • Scene 1 for B seconds
    • Action:
      • Switch to Scene 2
  • Step 3
    • Condition:
      • Scene 2 for C seconds
    • Action:
      • Switch to Scene 3
  • ...
  • Step _
    • Condition:
      • Scene [_-1] for ? seconds
    • Action:
      • Switch to Scene _
Looping is easy, just by having the last one create the condition that the first one is looking for.
View attachment 104706
View attachment 104707
View attachment 104708
View attachment 104709
I didn't do *exactly* as you asked, so I could show you a better way still, of doing videos. Regardless of length, this video will transition right at the end, using the last 1/2-second for a 1/2-second transition.

And I made this one loop too, using the same method as the text version above.


Hey Aaron! Thanks for getting back to me with help!
I noticed that our macro actions are slightly different here. Is it good?
Also is everything on my general tab okay?

Qi’s that need some A’s

1) I have two scene collections (recording and live-streaming). I have made macro rules for the recording. If I make a new set for the livestream will there be any issues? Or does the macro only work when the scenes are available in the selected collection?

2) What if I need to step away for my live stream and set it to a different scene that isn’t on the macro. Will it simply continue or will it continue when I click back on a scene that is in the macro?

3) Does the Advanced Scene Switcher only start when I press start recording or start streaming?

Thank you so much ‍♀️
 

Attachments

  • 168BA93B-E6CD-4CEA-A602-4272F600DDDA.jpeg
    168BA93B-E6CD-4CEA-A602-4272F600DDDA.jpeg
    397.9 KB · Views: 33
  • F465EE90-7BD1-4632-A362-71515DF1A3B6.jpeg
    F465EE90-7BD1-4632-A362-71515DF1A3B6.jpeg
    405.4 KB · Views: 89

AaronD

Active Member
I noticed that our macro actions are slightly different here. Is it good?
I'm still using an older version. That might be the difference. Think through what it says and what that means. Seeing the other choices for that setting, and thinking through what *they* mean, may also help to understand *that* choice.

Also is everything on my general tab okay?
Looks good to me, except for the scan interval. 300ms is slow enough to see, if you pay attention to it. Like I said, I like to set mine as fast it it will go, which for me is 50ms. You can't see that.

1) I have two scene collections (recording and live-streaming). I have made macro rules for the recording. If I make a new set for the livestream will there be any issues? Or does the macro only work when the scenes are available in the selected collection?
All of Adv. SS settings are in the Scene Collection. So if you load a new Collection, you get a whole different set of settings and macros.

2) What if I need to step away for my live stream and set it to a different scene that isn’t on the macro. Will it simply continue or will it continue when I click back on a scene that is in the macro?
Each macro runs independently. If it's looking for Scene X for Y seconds, and you switch away from Scene X before that, then the condition never becomes true.

In fact, that's how you escape this sequence: just switch to something else, and the next step is not triggered. If you did it with a single macro and an alternating chain of Switches and Waits, then the Wait would keep running, and the next Switch would happen anyway. So I don't like the single-macro method with Waits.

3) Does the Advanced Scene Switcher only start when I press start recording or start streaming?
That's a setting towards the top of the General tab. I set mine to always be running all the time. Sometimes that causes some macros to run unexpectedly when I'm still working on them, but by the time I go live, they're all worked out so they won't.

And, always-running allows you to do other things too, like start recording or streaming at a given time or by some some other trigger.

---

Also, I see that you're looking for the "Recording - Split" scene "For exactly" 6 minutes. Looking for something exact is usually a "bug magnet". A classic example from the larger world of programming might be:
C-like:
while(<something>)
{
    print_line(x);
    if (x == 5)
    {
        print_line("x is 5!");
    }
    //do other stuff
}
And the printout might be:
Code:
0
1
3
4
6
8
9
...
Notice there's no 5, and the special announcement didn't happen.

It's much more reliable to look for a threshold instead of an exact value. In your case, that would be "For at least" instead of "For exactly".
And use the "only on change" checkbox to keep that from repeating. In fact, I have that box checked for *all* of my macros, whether they need it or not.
 
Last edited:
Does your response here still stand?:

My suggestions still do.
Seems to me like you're trying to reinvent a common professional tool...while claiming that the same tool is "too hard".
Heh, I did forget that I posted about this, my settings got corrupted and I have been restoring what I lost, and now getting back to the ducking finally. but since then Ive also discovered, i believe having a Beacn accessory renders the filter option useless. So if I want ducking, it has to be via adv-ss.

Right now if I set a compressor filter to ducking,, it ducks AFTER the played file and nobody on obs discord seems to know why, or they are just ignoring me... but they are usually pretty helpful if they know the answer. they keep personal opinions and comments out of their replies. They just help when they can, and stone cold ignore you when they cant. I used to find it rude, but I am coming around to it suddenly...

Video (warning, audio is loud) of how compressor ducking works for me

Unlike a lot of the users on here just asking you to write a macro for them, I'm trying to learn, showing my work and asking for advice, not if I should be doing it this way but if I'm on the right track, is this how you would do it? with adv-ss specifically, because we are in the adv-ss forum, not the compressor forum, not some other 3rd party whatever the hell forum, just adv-ss.

So stick to the adage, don't have something nice to say, don't say anything at all please. Its not your plugin, don't feel compelled to reply to every post... think of this as a discord extension, chime in with useful answers, stay stone cold silent if you don't, nobody wants to read your negativity about their ideas.
 

Raxyz

New Member
Hey everyone!
Is there any documentation on how the "File" action works? I'm trying to set up a macro to delete the last saved recording if a hotkey is pressed, but I'm not sure how to go about it.
The conditions, if I understood them correctly, I figure are easy enough:
1718743627651.png


...but I'm stumped as to how find and delete the file. From what I understand, the file option only writes or appends to a text file? I tried making a simple workaround and write the current time in the same formatting I use in the OBS recording (%MM-%DD//%hh_%mm), but that only writes that command line verbatim. How can I make this work? Either by automatically deleting the file or by updating a .txt with the names of the recording I need to delete.
 

Raxyz

New Member
I couldn't find a way to edit my last post, so I'll add this:
I fiddled around with it some more and changed how it works. Instead of triggering at recording end, it triggers if a recording is running and the hotkey is pressed and then changes the output folder and ends the recording. I dunno if it's the most elegant solution to this, but it's one that works so far. lol
 

AaronD

Active Member
Video (warning, audio is loud) of how compressor ducking works for me
"This video is private."

Unlike a lot of the users on here just asking you to write a macro for them, I'm trying to learn, showing my work and asking for advice, not if I should be doing it this way but if I'm on the right track, is this how you would do it? with adv-ss specifically, because we are in the adv-ss forum, not the compressor forum, not some other 3rd party whatever the hell forum, just adv-ss.

So stick to the adage, don't have something nice to say, don't say anything at all please. Its not your plugin, don't feel compelled to reply to every post... think of this as a discord extension, chime in with useful answers, stay stone cold silent if you don't, nobody wants to read your negativity about their ideas.
It's a "how to do it" forum, centered on Adv. SS. If there's something that is much better done elsewhere, why make a Rube-Goldberg machine here? If the discussion goes off in that direction for more than a few posts at a time, *then* we can continue it elsewhere, but there's also a lot of value in sharing general expertise, right here, beyond the central focus.

I'm pretty sure that Adv. SS *is* a Turing Complete programming language, and has been for some time now, which means that everything that can be done at all, can technically be done inside of Adv. SS, given the right connections to the outside world. But some things are still a massive headache! I think yours is one of them.

Just be glad it's not THIS bad!:
 

AaronD

Active Member
Hey everyone!
Is there any documentation on how the "File" action works? I'm trying to set up a macro to delete the last saved recording if a hotkey is pressed, but I'm not sure how to go about it.
The conditions, if I understood them correctly, I figure are easy enough:
View attachment 104731

...but I'm stumped as to how find and delete the file. From what I understand, the file option only writes or appends to a text file? I tried making a simple workaround and write the current time in the same formatting I use in the OBS recording (%MM-%DD//%hh_%mm), but that only writes that command line verbatim. How can I make this work? Either by automatically deleting the file or by updating a .txt with the names of the recording I need to delete.
I couldn't find a way to edit my last post, so I'll add this:
I fiddled around with it some more and changed how it works. Instead of triggering at recording end, it triggers if a recording is running and the hotkey is pressed and then changes the output folder and ends the recording. I dunno if it's the most elegant solution to this, but it's one that works so far. lol

How about something like this?:
1718757009967.png

One hotkey to do everything. And it writes a new blank file (or any contents you want; it doesn't matter) to a timestamped filename. Then when you sort your recording folder, the clips you want will be right next to the files that this macro created. Take those, and delete the rest.

What I show here does not actually create a timestamped filename. I don't know how to do that. But I think you get the idea.

This has you keep everything during your session, note which ones are *good*, and delete the bad ones after you're done. So it gives you the opportunity to remember at the last moment that in fact there *was* something good in one of the other takes, and you still have a chance to find it and use it.
 
Ive decided to just block Aaron instead of reading his reply because I'd likely be compelled to reply again as well, I apologize to the forum, for having to read his an my garbage, I would delete it if I could. In the future I will just block rude people immediately and not engage with them.
 

Raxyz

New Member
How about something like this?:
View attachment 104745
One hotkey to do everything. And it writes a new blank file (or any contents you want; it doesn't matter) to a timestamped filename. Then when you sort your recording folder, the clips you want will be right next to the files that this macro created. Take those, and delete the rest.

What I show here does not actually create a timestamped filename. I don't know how to do that. But I think you get the idea.

This has you keep everything during your session, note which ones are *good*, and delete the bad ones after you're done. So it gives you the opportunity to remember at the last moment that in fact there *was* something good in one of the other takes, and you still have a chance to find it and use it.
I tried that, but I couldn't find a way for the plugin to write an actual timestamp. What I ended up doing was simply to create macros to manage OBS' replay buffer. One hotkey to get it running. One to disable it (and discard). And one to save then disable. This way it does everything I need to. Each individual clip is only as long as it needs to be, and I only save the ones that are good. Should save me some time editing now. Thanks for the help nevertheless!
 

RandomNerd

New Member
Is anyone else having difficulty with the "Start commercial" action? I'm trying to get a macro to run a 3 minute ad, so I assigned a "Start commercial" action with the duration at 180s. But twice in a row now, it simply does nothing.

Is it bugged or something?
 
Is anyone else having difficulty with the "Start commercial" action? I'm trying to get a macro to run a 3 minute ad, so I assigned a "Start commercial" action with the duration at 180s. But twice in a row now, it simply does nothing.

Is it bugged or something?
Hrmm, I believe start commercial is a twitch action... are you an affiliate yet? Ive honestly not used the action or went live yet, but I feel you would have to be live/maybe affiliate to use it, not sure they let you control commercials till then? I could be totally wrong, but something to think about while you wait for the pros to chime in...
 

RandomNerd

New Member
Hrmm, I believe start commercial is a twitch action... are you an affiliate yet? Ive honestly not used the action or went live yet, but I feel you would have to be live/maybe affiliate to use it, not sure they let you control commercials till then? I could be totally wrong, but something to think about while you wait for the pros to chime in...
Yup, I'm affiliate. I've been manually doing what I'm presently trying to automate for a little while now, which is to start stream, play a 3 minute ad while my 'starting soon' scene is up, and then I start the stream content proper, with the first hour being free of pre-rolls, per Twitch's ad setup.

Of course, I expect it only to work when you're live, so I even added a command to wait 5 seconds after I hit 'start streaming' before doing the "start commercial" action, just to remove the possibility of the "start commercial" action being done before Twitch 'realizes' I'm live.

But no, I see the time pass and nothing happen, and have had to run the 3m ad manually, for several streams now.
 

Warmuptill

Active Member
Is anyone else having difficulty with the "Start commercial" action? I'm trying to get a macro to run a 3 minute ad, so I assigned a "Start commercial" action with the duration at 180s. But twice in a row now, it simply does nothing.

Is it bugged or something?
I am not aware of any bugs with this particular action.
But as I am not a Twitch affiliate / partner, this is one of the actions I could never verify myself directly and had to rely on others to confirm to be working.
So, maybe something broke since the last time it was confirmed to be working.

Is there anything visible in the OBS log which would indicate that the Twitch API replied with an error?
Do you see the action being triggered in the OBS log when increasing the logging verbosity (can be adjusted on the General tab)?
Do other Twitch actions work for you? (E.g. setting the stream category)

I also think there is some sort of commercial "cooldown" on Twitch side.
Do you see that being affected when running the action?
 

RandomNerd

New Member
I am not aware of any bugs with this particular action.
But as I am not a Twitch affiliate / partner, this is one of the actions I could never verify myself directly and had to rely on others to confirm to be working.
So, maybe something broke since the last time it was confirmed to be working.

Is there anything visible in the OBS log which would indicate that the Twitch API replied with an error?
Do you see the action being triggered in the OBS log when increasing the logging verbosity (can be adjusted on the General tab)?
Do other Twitch actions work for you? (E.g. setting the stream category)

I also think there is some sort of commercial "cooldown" on Twitch side.
Do you see that being affected when running the action?
"Is there anything visible in the OBS log which would indicate that the Twitch API replied with an error?"

Not that I'm aware of, never looked for any sort of log like that, though.

Just tested another Twitch action, and was able to send a message to chat with no problem.

The ad cooldown on Twitch only comes into play if you're trying to run an ad shortly after another one has just ended. Wouldn't be relevant here.
 

Rozenman

Member
Dear Warmuptill, I don't quite understand the Audio/Fade function. It seems that it only works in the Fade/Out direction. But the Fade/In direction is really needed. How is this possible?
Thanks!
 
Top