Advanced Scene Switcher

Advanced Scene Switcher 1.27.2

Important notes:​

  • The minimum supported OBS version is now OBS 30 on all platforms.
  • Please make sure to back up your settings!
  • If you run into any issues, please either post in the OBS forums or create an issue on GitHub!

Additions:​

  • Added various additional settings to the Twitch condition's option to check for new chat messages.
Chat.PNG

Fixes:​

  • Fixed a crash when using the Twitch condition to check for new chat messages and the Twitch IRC servers shut down for maintenance.
  • Fixed a crash which could occur when adding new entries to the legacy tabs.
  • Minor UI layout fixes.
  • Like
Reactions: Monsteer

Important notes:​

  • The minimum supported OBS version is now OBS 30 on all platforms.
  • Please make sure to back up your settings!
  • If you run into any issues, please either post in the OBS forums or create an issue on GitHub!

1.27.1 Hotfix Changes:​

  • Fixed crashes related to widget highlighting.
  • Fixed a crash when accessing macro conditions or actions, which access information about other conditions or actions.
  • Fixed macro selections in conditions or actions not correctly unhiding the very first macro, if this selection was previously hidden.
  • Fixed a crash when selecting a macro in a condition or action while the currently selected macro is being deleted.

Important notes:​

  • The minimum supported OBS version is now OBS 30 on all platforms.
  • Please make sure to back up your settings!
  • If you run into any issues, please either post in the OBS forums or create an issue on GitHub!

Additions:​

  • Added the "USB" condition type.
    It will allow you to check if USB devices matching given criteria are currently connected or not.
    USB.PNG
  • Added an API to register new macro condition and action types via the OBS scripting interface.
    ScriptingExample.PNG
    A detailed description and examples can be found here in the wiki.
  • You can now choose to paste copied macro actions as regular actions or else-actions.
    ActionPaste.gif
  • Added the option to check and set individual scene item transform settings instead of only being able to modify all settings at once.
    Transform
  • Add option to set maximum replay buffer time.
    ReplayBuffer.PNG
  • Add option to check disk space available.
    DiskSpace.PNG
  • Added a context menu entry to change the existing custom label for macro segments.
    LabelRename.gif
  • Added Portuguese Brazil locale (junior-anzolin)
  • Added Japanese locale (tansancola)

Other changes:​

  • "Slide Show" condition:
    • Added support for "slideshow_v2" source in the "Slide show" condition type.
    • Added the option to use regular expressions to match the current slide show path.
    • Added support for the "Slide index", "Slide path", and "Slide file name" macro properties to be used in variables.
  • If the monitor setup changed, the "Projector" action type will now no longer discard the monitor selection but instead simply skip executing its action.
    It will continue executing the action if the original monitor setup is restored or a new monitor selection is made.
  • Minor UI improvements:
    • Switch button type to more closely match the OBS style.
    • Use default cursor icon on macro segment control hover.
    • Prevented users from accidentally enabling the option to "skip executing actions [...]" when scrolling through the General tab options.
  • Logging improvements:
    • Erros will now be logged when starting a commercial in the "Twitch" action type fails.
    • Removed a few outdated log messages.
    • Some messages will now only appear in verbose logging mode.
  • Changed the folder name of the advanced scene switcher internal plugin folder from adv-ss-plugins to advanced-scene-switcher-plugins to make it more clear which files and folders belong to this plugin.
  • buildspec: Update OBS Studio dependency to 30.0.2
  • Adapted the dock widget handling to the new OBS dock API:
    • The plugin will no longer attempt to restore dock positions on scene collection change.
    • When a macro is being renamed the current macro dock widget will be removed and the one with the new name manually has to be reopened.
    • The "Advanced scene switcher" dock position might be lost be when updating the plugin to this version.
  • The "Run" condition default timeout was increased to one second.
    This does not affect existing instances of this condition type.
  • Reworked the "Media" condition to now either check for the "state" or a "time restriction" of a given media source, instead of always checking both at the same time.
    This makes it much easier to check for scenarios like "If media source is in state ended OR the time remaining is less than 3 seconds".
    This will only affect new instances of the "Media" condition.
    The behavior of existing instances of the "Media" condition will not change.
  • Added the option to clear message buffers of the "Websocket", "Midi", and "Twitch" condition types when the condition matches.
    This can be useful if very high frequency signals are expected, for which only the first "match" shall be handled.
  • When comparing the output of a video source to an image file, the "Video" condition type will now check if the underlying file has been modified.
    If it was modified, the file content will be reloaded.
  • The plugin will now show warning, if the default action or condition type ("Scene") cannot be created.
    This is intended to detect corrupt installations of the plugin and warn the user of potential crashes.
  • Increase default threshold value for image pattern matching in the "Video" condition type.
    This means when not changing the threshold setting the pattern must more closely match the sources video output to be considered a match.
    This was done as false positive matches often resulted in seemingly random actions being performed, which in most scenarios is more harmful than no action being performed.
  • The warning displayed if a advanced scene switcher plugin failed to load will now only be displayed a single time per OBS startup.

Fixes:​

  • Fixed a crash which could happen in rare scenarios of extremely high frequency resize events being fired.
  • Fixed a crash in "MIDI" condition and action initialization if no audio devices are connected at all. (Linux)
  • Fixed a crash when using the "Advanced scene switcher" dock.
  • Fixed the "goal type" macro property tooltips of the "Twitch" condition type not being displayed correctly.
  • Fixed exponentially growing RAM consumption based on the number of items in a scene for the "Media" condition type in scenarios where the "Any / All media sources on scene ..." was selected.

Important notes:​

Fixes:​

  • Fixed "Video" condition type not being available on Windows.

Important notes:​

Additions:​

  • Added the option to define input variables for macros for which values can be set when executing them via the Macro action.
    337784832-90a497b7-5cae-4d0e-8dd0-2381fe01fbab.png
  • Added the option to swap the values of two variables. (Destroy666x)
    337784189-b563ce37-c08c-450e-b2b2-dcdb56ac553d.png
  • Added the option to check the width and height of a source.
    337784001-f972911e-607b-4e50-a3cc-825205dbfd28.png
  • Added macro properties to the filter and source condition.

Other changes:​

  • Minor UI improvements.
  • Improved visibility of the red highlight in the status dock when the plugin is stopped.
  • The default option of the action of type "Macro" is now "Run macro".

Fixes:​

  • Fixed imported variables and action queues not being visible in the respective tabs until reopening the settings window.
  • Fixed rare crash related to widget highlighting.
  • Fixed crash when adding variables, action queues, websocket connections, or Twitch connections.
  • Fixed the plugin attempting to restore the last opened tab, if that tab is no longer visible. (E.g. the variable tab if all variables were removed)
  • Fixed some locale issues.

Important notes:​

Additions:​

  • Added the "Folder watch" condition type.
    This will allow you to monitor for changes in a given directory. (For example check new files or folders)
    1716079546758.png
  • Some minor UI improvements

Fixes:​

  • Fixed "Audio" condition not treating an audio source not outputting any audio as having a volume level of "0%".
    This was a regression introduced in 1.26.0.
  • Reworked some code which resulted in a newer version of the Microsoft Visual C++ Redistributable having be installed for the plugin to be functional. (Windows only)
  • Like
Reactions: OpenFields

Important notes:​

Please make sure to back up your settings!
Windows only: It might be necessary to install the most recent version of the Microsoft Visual C++ Redistributable.

If you run into any issues, please either post in the OBS forums or create an issue on GitHub!

Fixes:​

  • Fixed potential UI stuttering.
    This could happen, if macros utilizing the Twitch APIs are set up.
    In that case, the querying of the Twitch connection status for the Twitch connection tab could time out.
    The rate at which this information is being queried was now reduced to be only performed once when switching to the Twitch tab.

Important notes:​

Please make sure to back up your settings!
Windows only: It might be necessary to install the most recent version of the Microsoft Visual C++ Redistributable.

If you run into any issues, please either post in the OBS forums or create an issue on GitHub!

Additions:​

  • Added the option to copy and paste individual macro segments across macros.
    You can either right-click on the segment of interest or select it and press CTRL+C to copy it.
    Pasting can be done either by right-clicking in the current macro or pressing CTRL+V.
    CopyPaste.gif

    At the moment the selection is limited to only a single macro segment.
  • Similar to the recently introduced Variables tab, new tabs will now be shown for websocket connections, action queues, and Twitch connections, if those types of resources are in use.
    329693036-f9c5d6a8-ea3b-4b99-9932-e6f352992389.png
  • Improved the "Macro" action type to allow users to conditionally execute actions of other macros.
    329693206-9dd73443-7fe4-4e60-af1f-a4a7a3464421.png
  • Added the option to check if a hotkey is released.
    329693348-4a7868dd-4828-4827-ad35-930684ea7444.png
    This was already possible previously by inverting the condition, but this should make it more clear that this type of check is possible.
  • Improved "Window" action type (Windows only)
    • The option to focus a window no longer restores maximized windows to their original size.
    • The focus, maximize, minimize, and close options will now be performed on all windows matching the given window title instead of only the first one being found.

Fixes:​

  • Fixed the layout of the "System tray notification" action.
  • Fixed a potential crash when adding new actions to a macro.
  • Fixed the very first replay buffer save not triggering "Replay buffer" condition properly.
  • Fixed macro segment highlighting not being in sync, which could lead to the impression, that actions of macros are executed in a random order instead of sequentially.
  • Fixed a crash which could occur on Linux systems if the access to MIDI devices was denied.
  • Fixed the "Audio" condition type incorrectly reporting low volume levels, when the configured "check conditions every X ms" option on the General tab was set to very low values.
  • Fixed else-action controls not being highlighted correctly.

Important notes:​

Please make sure to back up your settings!
If you run into any issues, please either post in the OBS forums or create an issue on GitHub!

Additions:​

  • Added the option to set custom labels on macro segments.
    Label.gif
  • Added the option to export macro as plain json instead of compressed json.
    Export.gif

    Both variants can be imported just like before.
  • Increased the maximum for scene item selections based on the index to 999. (Previously 99)

Fixes:​

  • Fixed index based scene item selection not saving the end of the index range correctly. (Destroy666x)
  • Fixed source setting and macro property selection not resizing correctly in some circumstances.
  • Fixed macro selection dialogs not opening at the plugin's setting window location.

Important notes:​

Please make sure to back up your settings!
If you run into any issues, please either post in the OBS forums or create an issue on GitHub!

Additions:​

  • Added the "Clipboard" condition type.
    It allows you to trigger actions based on the content of your clipboard.
  • Added new macro properties for the "Run" action and condition type. (Destroy666x)
  • Added the option to configure the behavior of macros in case a new execution is triggered while another execution is already running. (Destroy666x)
  • Added the option to enable or disable audio sources on given audio tracks to the "Audio" condition type.
  • Added the option to truncate or pad variable values.
  • Added the option to press buttons in the properties dialogs of filters.

Other changes:​

  • Improvements to the Variable tab (Destroy666x):
    • Added the "last changed" column
    • Added tooltips
    • Added hotkey to remove all selected variables (Del)
    • Added hotkey to open the settings dialog of selected variable (F2)
  • The settings selections will now display the value type that is expected to be entered and if they belong to a group of settings.
  • Minor UI improvements

Fixes:​

  • Fixed "Source" and "Filter" action saving decimal numbers as integers when modifying a single settings value. (Destroy666x)
  • Fixed a crash when attempting to set the value of a variable to an invalid environment variable.
  • Fixed that the timer condition was not properly generating random values.
  • Fixed a crash when stopping a queue from an action within the queue itself.
  • Fixed disabled actions being inserted into action queues.
  • Fixed deletion of variables via Variable tab not updating other variable selections properly.
  • Fixed the macro group expand / collapse icons not being set on OBS 30.1.2.
Top