Skip to content

Converting legacy tab entries to macros

WarmUpTill edited this page Oct 8, 2024 · 1 revision

This page will describe how to convert functionality of legacy tabs to macros.

Scene Triggers

Assuming you have the following entry on the Scene Triggers tab ...

image

Then you can use a macro like this to achieve the very same:

image

Note that "Run macro in parallel to other macros" as well as "Perform actions only on condition change" should be enabled.

The different triggers ...

  • is active [...]
  • is not active [...]
  • switched away from [...]

Can each be represented by the "Scene" condition type as ...

  • Current scene is [...]
    image
  • Current scene is not [...]
    image
  • Previous scene is [...]
    image

Each of the possible scene trigger actions can be represented by macro actions:

  • The recording related trigger actions can be found in the "Recording" macro action type.
  • The streaming related trigger actions can be found in the "Streaming" macro action type.
  • The replay buffer related trigger actions can be found in the "Replay buffer" macro action type.
  • The virtual camera related trigger actions can be found in the "Virtual camera" macro action type.
  • The un-/mute related trigger actions can be found in the "Audio" macro action type.
  • The trigger action to stop the advanced scene switcher can be found in the "Plugin state" macro action type, although I would recommend to pause the relevant macros instead of completely stopping the plugin.

Network

The network tab offered the functionality to synchronize the currently active scene between multiple OBS instances running the Advanced Scene Switcher plugin.
It assumed the scenes have the same name on each OBS instance.

The same can be achieved by using Variables and the Websocket condition and action type.

The "Server" OBS instance will have to use a macro like this:
image This macro sets the value of the variable Scene Name to the name of the currently active scene whenever the current scene changes.
This value of the Scene Name variable is then sent out to all connected clients, just like it would have been when using the Network tab.

You can import this server side example macro using this code:

AAAJCXicvVZNj9s2EP0rBNFDu7Vc23Ecw7dk66ACdhNnvdlLUBS0NJKJlUiBpBxvDP/3zJD6crYJemkOBsTH4czjmw/6xEuRGG356tOJK1ECX/EtmAMYPuKVqC0CmSgs0MqIooCiA7S63guVo4UzNa7to6zWR0jeq60TxnV21unqdeKkVjbO3mn3p1a919zouupWqU4et+CcVDlSOnEDubQOybQGe2HvavWmdk6rNi5iG2L6DEUarrY3YjcgvZf5vsCfi7NrrVLpad3jic7CtP7v4YiX4Biv1eIC9zFxp1bP9z4GDHeTiyCBUWPUx2fCACPa44sTb4nQj454xnSGdItTNBDpwdrI5zQiMJq+TJLFfLmMlskijebZVES7eZpFs9l8sVy8Ei9g8RIdYMKtJPGm51EoiZCxLuC2KqTDTGy09WssmL8byzWSCNb/btQm8S/tHuHJDgoKJQpgMGyUHEJO53kBm2/hXiNfuBbyEpQbVk6ii0JUFtIuHLq4rrEWy8uCSIYYv31ihf9EGSQJahNQlMdC5zLhqwlqXRtBoW91KjNJtXniTpbwD5KyzgipnLezQCw9mYMoqMC6j8kY991TRZ9nurcMRwZZQNiH3kIBSdDy1B4ZtZ1KLAM2n5CepD0a8vHVls6Or7i/9r0RKiTkXpgcnN/sBBgERWVF8lNkPQgjxa4gZUHRR9r2bbvzrhlGxJX5Rb83azZjhYLKlHm82AGznVo0dsxDkJvjStXlw0D8roDw2otRe9M4PfJVNMV1vds6g5duJtlkCMkvIQlY13DcDETnDXYrXLL3vtAqkyq9I5TkC3cdjlSHxPuJWjXiU1XQQYyInqn5mdOMEB+jKkQCl3sNyD5Lt295YPNmMv9R3CD5RdhSuP36WBmwoSr4r2zKfmczdsVesN/YH2zOB0nfGF1W/aiXqqpdi/HX6CJXzBc9cWzTtwoeYm9MrPe6SAdDXj7b4FGE6QHDHF43inzVHKTRirL2cFkxH7fru83d+7fxzZr/5yaCskI3/faU6jQk0NdrUhuDob6dlN57jKdjlYYMNx0+HfZ3Kk0bfuLrEqvoBlSOmfrOiUqkKRrh+4qc5svz6H9txs+ws/hWgHvejaKSnnSnSol1IejN57+c+t48h3dLtdfsOrMHB71Jcwa6R8OGke6T3qbSY2R2GAD9H5ThTLDi0DgK0xkyUReu6/x+pn2ooYYmWJdEPh3PXo1n/PwV/JMbnQ==

The client side would have to configure a macro like this:
image

When any websocket message is received from the specified server (configured as "My connection" in this example) the value of the message will be read and assigned to the variable Scene Name.
Afterwards the plugin will switch to the scene with the name Scene Name with the currently active transition type.

You can import the client side example macro using this code:

AAAJu3icvVZLb+M2EP4rAk/t1nJtxbt53HZTL2og2bixk0uxWNDSSCZCkwJJeZ0a/u+dISVaTpo9FGgPBsThvL9vht6zDc+Ntuzqzz1TfAPsil1LAcqxAat5Y1FQcmmBToZLCTIKtLpec1WhhjMNnu2TqKc7yO/UwnHjop51uv6YO6GVnZVftPtNq6PXyuimjqdC508LcE6oClPaMwOVsA5MVFhze9+oT41zWnVxUTanTF9JMQ3X2Bu+6iW9FtVa4s/NymutCuHTWqJF1DCd/yXssAiG8bpenMh9TLxp1Ou7hyDD2/wkSMioVTrGT7iBhNIenlh8poR+ZOIzJhvq26xABV5srU09pikJ0/wsu3x/tirTMfBJOrlYXaZ8NOYplOfFKLvMsrMPK3SwBWMFNW98GARKBMRiwEUthUMk5tr6sydMTcTJLiaHQft9NpocvrYOpphbcPID2/Ms2o7IsgP8d+2e4Nn2yIftDEK0/hq73hc5XVUS5i/Fx376uBaqDdK7z7JcS8lrC0UMhy6uG+Tt5pQ8eV/Gbp8T6T+xZYKa/x1WFnsONDtSVyLHohCbxnAKf6sLUQri8p45sYFvmJh1hgucNdKzQJn6hLZcEiHjx2iI9+65ps8D1S6CSQ+1Q6cwxvaDtZzmkg3fMd9T2CGQpajIJyi+knFocaqd4L2hrttWUSBMSEEeIKNye2e8lMDNp6YswdypW+7ydXTSywsB4Pn/0v0tN8JXNmhLLLoau5svYb8tclCQ+MPxLmsvZwp7LorEy+UKEgsyloxwPQZEGJ5Us3ns4RN5hmV/GHSVzoodu0oRFNusFs5g0e1yHPVF4i/wEg/VnNOwqBP4fH+9L9QqhSruSdqH87il38aTDDEieqZ9kjidkMTHqCXP4fSuFSbfhVu/TaOXcUPLT8JuuFtPd7VBWgYq/ZSMk1+SLHmXnCU/J78mE9YDfW70pj6+HkLVjetk7CO6qFTi54Jy7OC7Ch5mXpmyXmtZ9N4N8eqCpSnCAyZxWG6aetZshdGKUHs8ZczDYno/v7/7PLuZEguIP4tICxrnMJqD7gUlTjrY1OjmeD0mngYAPV+7KX2xfL33GVrPVBEQbpfAuL8CCmG68CPPS2TRDagKkXrDouZFgUr4ZGNOkwtau//hMPoqvlmkTr5+PZBvdfB97GBvRqmXhqvwdCy7VnZb9V+uywFbSVzVD8oJuYzeT/6Z+CSXrRdcYxDfMxseFs+pjileRmrbnmD/D+WgY75tHYX3AUreSBcXy3Fl/tFAA22wmDsbD7PzYcYOfwNcf1f8

Example guides

Explanations

Clone this wiki locally