OBS integration with Luxafor LED devices
Project description
obs-tally-luxafor
obs-tally-luxafor is a Python package that integrates OBS (Open Broadcaster Software) with Luxafor LED devices. It listens for scene changes via OBS WebSocket and automatically updates the color of your Luxafor device.
Features
- OBS Integration: Uses obsws-python to listen for scene changes.
- Luxafor Control: Provides a simple API client to control Luxafor LED devices (brightness, color, patterns).
- Command-Line Configuration: Customize connection parameters and behavior via command-line arguments.
Installation
To install the package in development (editable) mode:
cd obs-tally-luxafor
pip install -e .
After publishing to PyPI, you can install it via:
pip install obs-tally-luxafor
Configuration
The package can be configured both by modifying default values in the source code and via command-line arguments when launching the integration. The available command-line parameters include:
Luxafor API:
-
--base-url
The URL of your Luxafor API server (default:http://127.0.0.1:5383). -
--secret-token
The secret token for the Luxafor API (default:luxafor).
OBS WebSocket:
-
--host
OBS host (default:localhost). -
--port
Port for OBS WebSocket (default:4455for OBS WebSocket v5). -
--password
Password for OBS WebSocket (default:password).
Scene Trigger:
--scene-name
The scene name that should trigger the red LED color (default:scene). When the current program scene in OBS matches this value, the Luxafor LED will change to red. For any other scene, the LED will change to green.
Usage
Once installed, run the integration using the command-line script:
obs-tally-luxafor [OPTIONS]
For example, to run with a custom scene name:
obs-tally-luxafor --scene-name "my_custom_scene"
To see all available options, run:
obs-tally-luxafor --help
This command will start the OBS event listener. When the current program scene changes, the package will update the Luxafor LED color accordingly, with detailed logs indicating which color is set and why.
API Reference
LuxaforClient
The LuxaforClient class (found in obs_tally_luxafor/client.py) provides methods to interact with your Luxafor device:
-
change_color(color)
Changes the LED color to the specified hex value. -
play_pattern(pattern_id)
Plays a pre-defined lighting pattern on the device.
Dependencies
License
This project is licensed under the MIT License.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file obs_tally_luxafor-0.3.1.tar.gz.
File metadata
- Download URL: obs_tally_luxafor-0.3.1.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83df49fbee0a14c187d779e341db7b1e7fe359142a09935069408a4ba1331567
|
|
| MD5 |
bc0ea19a7f251123c1f87ec7a399c1a0
|
|
| BLAKE2b-256 |
bf82cb66df26fb7e0053255c9514a3893eb53b95dee721aa297733fff3077983
|
File details
Details for the file obs_tally_luxafor-0.3.1-py3-none-any.whl.
File metadata
- Download URL: obs_tally_luxafor-0.3.1-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a75fdeaeda4128daa0857e1270777399a1f0702626b4ae3b924bb2f6aafbc804
|
|
| MD5 |
c066b20af90a0b35c9d72625ea9e63dc
|
|
| BLAKE2b-256 |
386dd9371ca0c473a9a7a0abeefb5a9382b66671b12816d51731dfed350a84f5
|