Sync current OBS scene to channel mute state of a Behringer XAir Mixer
Go to file
lebaston100 65a7a38a37
Merge pull request #5 from onyx-and-iris/add_x32_support
Add x32 support, move all configuration into tomls
2022-11-08 23:09:28 +01:00
__main__.py read mixer kind from config.toml 2022-11-08 19:13:11 +00:00
.gitignore Initial commit 2019-04-28 14:44:11 +02:00
config.toml read mixer kind from config.toml 2022-11-08 19:13:11 +00:00
LICENSE update for websocket v5, obs 28 2022-09-27 09:25:25 +01:00
mapping.toml x32 support added. 2022-11-08 18:24:42 +00:00
README.md read mixer kind from config.toml 2022-11-08 19:13:11 +00:00
setup.py x32 support added. 2022-11-08 18:24:42 +00:00

OBS-to-XAir

This is a small script that mutes, unmutes and toggles groups of channels on Behringer XAir Mixers depending on the current scene.

Requirements

Installation

  • First install latest version of Python.

    • Ensure you tick Add Python 3.x to PATH during setup.
  • Download the repository files with git or the green Code button. Then in command prompt:

cd OBS-to-XAir
pip install .

Configuration

  • Configure websocket settings within OBS->Tools->obs-websocket Settings

  • Open the included config.toml and set OBS host, port and password as well as the xair mixers kind and ip.

    • Mixer kind may be any one of (XR12, XR16, XR18, MR18, X32)
  • Set the scene to channel mutes mapping in mapping.toml.

Usage

Simply run the script, there will be confirmation of mixer connection and OBS connection if everything is successful. Switch between the defined scenes.

Closing OBS will stop the script.

Further notes

Since this script relies upon two interfaces, obsws-python and xair-api this code can be readily modified to interact with any OBS events and set any xair parameters. Check the README files for each interface for further details.

Compatibility

This script was developed and tested with:

  • OBS 28.01
  • obs-websocket 5.0.1
  • A Midas MR18 and an X32 emulator.

Special Thanks

  • OBS team and the obs-websocket developers + Behringer/Midas for the OSC protocol.
  • Adem for contributions towards the obsws-python wrapper.
  • Onyx-and-Iris for contributions towards the obsws-python and xair-api wrappers.