OBS Studio (Legacy)
For OBS versions prior to 28.0, using OBS Websocket v4.
Aitum supports integrating with OBS. This allows you to control your OBS instance, including switching scenes, managing sources, and more. You can also use scene switches as triggers to activate rules in Aitum. While there are many forks and derivatives of OBS, we only guarantee support with OBS Studio. If you are using Streamlabs Desktop, we support that separately.
Setup
You need OBS Websocket version 4.9.1. If you need to update/install this, you can download from the bottom of this page.
To get started, open OBS and go to Tools → WebSockets Server Settings in the toolbar. On this window, you will see the settings for your OBS websocket. Ensure that “Enable WebSockets server” is checked, then make a note of the port and optionally enable authentication. The settings you see on this page will be used within the Aitum app to configure the integration with OBS.
After configuring OBS websocket, open Aitum and then go to the Settings tab. Click on Integrations to access the integrations page. Click New Integration to open the new integration wizard, and then select OBS. Give your integration a nice name that you will remember it by (useful if you have multiple OBS instances!), and then enter the port and the password of your OBS websocket. You only need to enter a password if you checked “Enable authentication” on the OBS websocket settings.
After you press Save, Aitum will automatically try and connect to your OBS websocket. If the connection failed, you will be informed by an error message on the app.
Upgrading to OBS Websocket V5
OBS version 28.0 and higher come pre-installed with OBS Websocket V5. If you are creating an integration for the first time on OBS 28.0+, instead of creating an OBS (Legacy) integration, you should create a normal OBS integration.
If you have an existing OBS (Legacy) integration, you can upgrade it to an OBS Websocket V5 integration by going to the integrations page, clicking on your OBS (Legacy) integration, and then clicking the “Upgrade to OBS Websocket 5” button at the bottom of the popup window. You should do this once you have upgraded OBS to version 28.0 or higher.
Aitum will upgrade your integration, and then migrate your existing rules to the new integration. If you have any problems, please get help on our Discord server.
Triggers
Scene Changed
Activated when you change scene in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Local Variable Usage | Visible in Trigger | Description |
---|---|---|---|---|---|---|
Scene | No | Text (dropdown) | No | Yes | Yes | Name of the scene |
Scene Changed From
Activated when you change scene in OBS from a specific scene.
Fields:
Field | Required | Field Type | Allows Variables | Local Variable Usage | Visible in Trigger | Description |
---|---|---|---|---|---|---|
Scene | No | Text (dropdown) | No | Yes | Yes | Name of the scene |
Scene Collection Changed
Activated when you change scene collection in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Local Variable Usage | Visible in Trigger | Description |
---|---|---|---|---|---|---|
Scene Collection | No | Text | No | Yes | Yes | Name of the scene collection |
Stream Starting
Activated when you hit “Start Streaming” in OBS.
Stream Stopping
Activated when you hit “Stop Streaming” in OBS.
Filter Visibility Changed
Activated when you change a filter’s visibility on a source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Local Variable Usage | Visible in Trigger | Description |
---|---|---|---|---|---|---|
Source | No | Text (dropdown) | No | Yes | Yes | Name of the source |
Filter | No | Text (dropdown) | No | Yes | Yes | Name of the filter |
Visibility | No | Switch | No | Yes | Yes | State of the filter’s visibility |
Source Visibility Changed
Activated when you change a source’s visibility in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Local Variable Usage | Visible in Trigger | Description |
---|---|---|---|---|---|---|
Scene | No | Text (dropdown) | No | Yes | Yes | Name of the scene |
Source | No | Text (dropdown) | No | Yes | Yes | Name of the source |
Visibility | No | Switch | No | Yes | Yes | State of the filter’s visibility |
Actions
Change Scene
Use this to change to a scene in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Scene | Yes | Text (dropdown) | Yes | The scene you want to change to |
Change To Last Scene
Use this to change to the last scene you were on in OBS.
Change Filter Visibility
Use this to change visibility on a source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Source | Yes | Text (dropdown) | Yes | The source you want to change |
Filter | Yes | Text (dropdown) | Yes | The filter you want to change |
Visibility | Yes | Switch | Yes | The visibility of the filter |
Change Scene Filter Visibility
Use this to change visibility on a scene in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Scene | Yes | Text (dropdown) | Yes | The scene you want to change |
Filter | Yes | Text (dropdown) | Yes | The filter you want to change |
Visibility | Yes | Switch | Yes | The visibility of the filter |
Change Source Visibility
Use this to change visibility of a source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Scene | Yes | Text (dropdown) | Yes | The scene containing the source |
Source | Yes | Text (dropdown) | Yes | The source you want to change |
Visibility | Yes | Switch | Yes | The visibility of the source |
Refresh Browser Source
Use this to refresh a browser source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Browser Source | Yes | Text (dropdown) | Yes | The browser source you want to refresh |
Set Source Text
Use this to set the text of a text source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Text Source | Yes | Text (dropdown) | Yes | The text source you want to set the value of |
Start/Stop Recording
Use this to start or stop recording in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Action | Yes | Switch | Yes | Start/stop recording |
Toggle Recording
Use this to toggle recording in OBS.
Start/Stop Streaming
Use this to start or stop streaming in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Action | Yes | Switch | Yes | Start/stop streaming |
Toggle Streaming
Use this to toggle streaming in OBS.
Start/Stop Replay Buffer
Use this to start or stop the replay buffer in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Action | Yes | Switch | Yes | Start/stop replay buffer |
Toggle Replay Buffer
Use this to toggle the replay buffer in OBS.
Save Replay Buffer
Use this to save the replay buffer in OBS.
Mute Audio
Use this to mute/unmute any audio source (global sources or sources on scenes) in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Audio Source | Yes | Text (dropdown) | Yes | The audio source you want to change |
Mute | Yes | Switch | Yes | Muted/Unmuted |
Media Source: Play/Pause
Use this to play/pause a media source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Media Source | Yes | Text (dropdown) | Yes | The media source you want to change |
Action | Yes | Switch | Yes | Pause/Play |
Media Source: Restart
Use this to restart a media source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Media Source | Yes | Text (dropdown) | Yes | The media source you want to change |
Media Source: Stop
Use this to stop a media source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Media Source | Yes | Text (dropdown) | Yes | The media source you want to change |
Media Source: Next
Use this to change the next item in playlist in a media source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Media Source | Yes | Text (dropdown) | Yes | The media source you want to change |
Media Source: Previous
Use this to change the previous item in playlist in a media source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Media Source | Yes | Text (dropdown) | Yes | The media source you want to change |
Open Projector
Use this to open a projector window for a source in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Preview Type | Yes | Text (dropdown) | Yes | The type of projector you want |
Monitor | No | Text (dropdown) | Yes | The monitor you want to display the projector on (fullscreen) |
Name | No | Text | Yes | The name of the source you wish to display |
Broadcast Custom Message
Use this to broadcast a custom websocket message in OBS.
Fields:
Field | Required | Field Type | Allows Variables | Description |
---|---|---|---|---|
Message | Yes | Text | Yes | The message you want to broadcast. Please read the OBS websocket documentation for more info |
Useful information
If you’ve started/restarted OBS after Aitum was launched, there will not be a connection. To remedy this, you can force a reconnection to the OBS websocket server on the integrations page.
Troubleshooting
If you aren’t seeing OBS related dropdowns appearing in rules, please check the status of your OBS integration on the integrations page. If the integration has a yellow outline around it, then this means there was a problem with it.
Please verify the information matches your OBS WebSocket Server settings, your OBS WebSocket version is 4.9.1 and OBS is running.