Resource icon

Advanced Scene Switcher 1.26.1

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.

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!

Changes:​

  • Added handling for MIDI device dis- and reconnect.
    Previously MIDI messages were not received / sent, if the device selected for the corresponding action or condition was not present, when the settings were loaded.
    Now, once a new MIDI device is connected, it will be checked, if the device is supposed to be used in any MIDI actions or conditions, and be configured accordingly.
  • Fixed audio condition volume threshold values configured in versions 1.24.* or below not being converted correctly to version 1.25.* .
    If you reimport your 1.24.* settings, the threshold values will now be converted correctly.
  • Increased the precision of the percent based volume threshold selection in the Audio condition.
  • Action queues will now be exported and imported as well, if they are part of the macro selected for export or import.

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!

Changes:​

  • Fixed crash when selecting the virtual camera action.

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!

Changes:​

  • Fixed crashes related to the introduction of the variable tab.
  • Fixed output volume check of the "Audio" condition not working correctly when using the percent based input method.
  • Settings will now be saved when switching between macros on the macro tab.
    This was done to minimize the loss of settings as much as possible in case of crash while the plugin's setting window is still opened.
  • Like
Reactions: IDLT and youjiman

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!

Note for MacOS users:
This version of the plugin is only compatible with OBS 30 or newer.
More information can be found here.
This does not affect Windows or Linux.

Additions:​

  • Added action queues
    As the name implies you can now create queues of actions, which are executed sequentially but in parallel to the reset of the macro system.
    You can append to, start, stop, or clear action queues using the "Queue" action.
    306569067-5769f78c-8197-405c-9cae-ca61e97bf521.png


    You can check if a action queue is started, stopped, and its size using the "Queue" condition.
    306570144-154ee8cb-8c8f-434d-94fe-06bda71b5950.png

    The first action added to the queue will be the first one to be processed.
    You can create as many queues as you like.

    They can be useful if you have events, which can happen in quick succession, but result in relatively long chains of actions, which themselves should not necessarily run in parallel to each other.

    An example can be found here in the wiki.
  • Added the "Variable" tab:
    306573275-82c982ae-e7dd-4e38-8ca8-0741f2e8bca4.png


    This should make it significantly easier to work with larger amounts of variables.The tab will only be visible if at least one variable exists.

  • Added the current pattern matching value to "Show match" dialog. (Oekn5w)
    306575809-a901b654-b7f2-488e-a860-f326f3526acd.png
  • Added the option to wait for spawned process to exit.
  • Added the option to set the value of a variable to scene item name at a given index of a scene.
  • Added the option to check the values of single settings in the "Source" condition.
    306576317-b32ae1d8-0518-479e-9e0f-ac1db34a2ff7.png
  • Added the option to check the value of single settings value in the "Filter" condition.
  • Added the option to use decibel values as input for audio action and condition, instead of percent.
    306578960-92a38fe6-32dc-4459-bebe-a591d4bcdd4e.png
  • Added the option to set the index of a given sequence action.
  • Added the option to perform media actions on sources based on a scene item selection instead of just a source selection.
    306580250-fd381e5e-ad36-4bb9-bcf1-1e08fe780479.png


    This might simplify some setups.

  • Improved the "Display" condition by adding the option to check the width and height of connected displays.
  • Added the "Window" action (Windows only):
    This action type will allow you to focus, minimize, maximize, or close a window with a given name.
    309480050-4e5090d7-f541-494a-aa36-779483790b93.PNG
  • Added the "Log" action:
    As the name implies this action let's you add custom log messages to the OBS log file.
    These messages will have the "[adv-ss]" prefix just like the other log messages produced by this plugin.
    309480448-0f2c74e3-c093-4bd2-a731-b8bdd76a7dee.png

Other changes:​

  • Default settings values were adjusted:
    • The plugin will now be active by default on new scene collections.
    • The macro tab will be opened as the default tab.
    • Recently executed macros, recently executed macro actions, and conditions, which evaluate to true, will be highlighted by default.
    • This will not affect settings of already existing scene collections.

  • Added tooltips to macro tab buttons, adjusted the TAB order of some widgets, and some other minor UI tweaks.
    This should at least slightly improve the usability of the plugin in combination with screen readers.
  • A warning will now be displayed if settings are exported to a file, if potentially sensitive data might be contained in that file.
    (For example websocket passwords or Twitch tokens)
  • Added new macro properties for the following conditions:
    • Websocket
    • Streaming
    • Window (window class - windows only)
      Here is an example how to use it.
  • Audio fade controls are now disabled if the fading option is not checked.
    This was done to avoid confusion on some OBS themes where checkboxes can be very difficult to see.
  • Update internal hotkey names when the description of hotekys in changed in "Hotkey" conditions.
  • The rename dialog of items (e.g. Variables, Websocket connections, etc.) will now be prefilled with the current name.
  • Disabled dragging of macro segments when interacting with scrollbars.
  • When storing numbers in variables truncate unnecessary decimal places.
    1.23 would have been previously stored as 1.2300000... and is now stored as 1.23.
  • The MIDI condition and action type will now save the name of the selected device instead of the port number.
    This should allow the device selection being restored correctly even if the devices are connected to different ports.
  • When manually starting a macro using the "Run macro" button fails, because the macro is already running, the option will now be offered to stop the current execution.
  • Settings will now automatically be backed up to the plugin config directory.
    On Windows this path could be: C:\Users\Admin\AppData\Roaming\obs-studio\plugin_config\advanced-scene-switcher.
    One backup will be kept for each combination of scene collection name and plugin version.
    The backup will only be made for the currently active scene collection on OBS shutdown.
  • Added a new log level which only prints the actions that were performed by the plugin but is much less verbose than the verbose log mode.
    The log level will be reset to "Default" when installing this new version of the plugin.
    309480325-540966ff-3a71-4467-a4d0-144052d924c7.png

Fixes:​

  • Fixed the replay buffer save event only triggering in a single condition.
  • Fix text becoming invisible in certain text boxes in special circumstances.
  • Fixed macro segment widgets being squashed below a sensible minimum size.
  • Fixed pattern matching issues by excluding non-finite results. (Oekn5w)
  • Fixed media condition "any" / "all" selection ignoring some source types.
  • Fixed scene item name conflict selection not being visible in some circumstances.
  • Fixed flickering of macro list controls on widget creation.
  • Fixed else action delete button only working with active selection.
  • Fixed dialogs being opened at OBS instead of plugin window location.
  • Fixed setting of show-/hide-transitions resulting in graphical glitches during the transition.
  • Fixed Twitch chat connection not being re-established when when the Twitch account or channel was change.
  • Fixed else-actions being executed for paused macros.
  • Fixed open variable input dialogs causing a crash on shutdown.
  • Fixed hotkey condition evaluating to true if the hotkey was pressed while the macro was paused.
  • Fixed manually started macros not being stopped when stopping the plugin.
  • Fixed Twitch token warning not being displayed when the token is invalid.
  • Fixed possible crash on shutdown.
  • Fixed crash when switching settings in the "OBS stats" condition.
  • Fixed macro property references not being resolved on macro copy and import.
  • Fixed websocket messages / Twitch events / MIDI messages arriving in very quick succession resulting in some of them being skipped.
  • Fixed Twitch action not being able to send a chat message in some circumstances.
  • Fixed manually changing the value of a variable in the variable's settings dialog not being considered a value change and thus some fields not using this new value of the variable.

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!

Note for MacOS users:
This version of the plugin is only compatible with OBS 30 or newer.
More information can be found here.
This does not affect Windows or Linux.

Fixes:​

  • Fixed crash related to the settings backup dialog.

Other changes:​

  • The audio condition will no longer return true if no audio source is selected.
  • Decreased the minimal interval time to 10ms. (Oekn5w)
    Please note that decreasing the interval value will result in the plugin using up more system resources.
  • Slight performance improvement related to the Video condition's area selection. (Oekn5w)

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!

Note for MacOS users:
This version of the plugin is only compatible with OBS 30 or newer.
More information can be found here.
This does not affect Windows or Linux.

Additions:​

  • Added the option to the "Recording" condition to check the current recording duration.
    image
  • Added option to check if a given macro is currently paused
    image
  • Added the "Clipboard" action type. (Destroy666x)
    image
    It will allow you to modify the clipboard contents.
  • Added support for "random()" function in Variable math expression, which will generate a random number in the rage [0,1).

Other changes:​

  • No longer wait for a transition to complete if the currently active scene is already the target scene.
  • Reworked the "Process" condition to explicitly enable or disable the use of regular expressions.
    Process
    This condition now also supports macro properties to query the process name.
  • Added macro property support to Macro condition.
    This will allow you to query the number of times a macro was executed when using the "Macro run count" check type or how many of a given set of macros were true when using the "Multiple macro condition state" check type.
  • Added macro property support to the Video condition.
    This will allow you to set query how often a given pattern was found, how often a given object was detected, the current average brightness value, the text detected by the OCR algorithm, or the average color of a given video input frame.
  • Added tooltip for run button explaining how to run else actions for testing. (Destroy666x)
  • Added a button to toggle show / hide the else actions section. (Destroy666x)
  • Minor UI layout changes.

Fixes:​

  • Fixed "Or not" logic type being ignored.
  • Fixed macro references (in e.g. Macro conditions or actions) not being resolved to imported macros.
  • Fixed duration value not being updated correctly when changing units from e.g. seconds to minutes in some circumstances.
  • Fixed window condition not clearing macro property values of the previously selected condition type.
  • Fixed a crash when interacting with sources which have settings values without a description.
  • Fixed plugin on starting on Linux if the libprocps dependency is not met.
Top