* Implement filter requests * Fix CreateSourceFilter * Implement most Filter events * build against 27.1.3 * Update main.yml * SourceFilterNameChanged rename * revert main.yml changes * rename SourceFilterCreated and revert CI changes * cleanup * Base: Various cleanups + fix -Werror * Base: A few nitpicks/fixes * requesthandler: Fix CreateSourceFilter * utils: Fix CreateSourceFilter Use obs_source_t* instead of OBSSourceAutoRelease to prevent double release * requesthandler: Remove filterIndex from CreateSourceFilter The purpose of sceneItemEnabled in CreateSceneItem is to hide the scene item while we still hold the scene mutex (guaranteeing the input will never be shown). Since we don't hold a mutex when creating filters, there's no reason to do any extra steps. * requesthandler: Validate input/filter kinds in *DefaultSettings Co-authored-by: tt2468 <tt2468@gmail.com>
obs-websocket
WebSocket API for OBS Studio.
Downloads
Binaries for Windows, MacOS, and Linux are available in the Releases section.
Using obs-websocket
It is highly recommended to protect obs-websocket with a password against unauthorized control. To do this, open the "Websocket server settings" dialog under OBS' "Tools" menu. In the settings dialogs, you can enable or disable authentication and set a password for it.
(Psst. You can use --websocket_port
(value), --websocket_password
(value), and --websocket_debug
(flag) on the command line to override the configured values.)
Possible use cases
- Remote control OBS from a phone or tablet on the same local network
- Change your stream overlay/graphics based on the current scene
- Automate scene switching with a third-party program (e.g. : auto-pilot, foot pedal, ...)
Client software
- (No known clients supporting 5.0.0 at the moment. Ping us in the Discord if you have one!)
Client libraries (for developers)
Here's a list of available language APIs for obs-websocket:
- Python 3.7+ (Asyncio): simpleobsws by IRLToolkit
- Rust: obws by dnaka91
The 5.x server is a typical WebSocket server running by default on port 4455 (the port number can be changed in the Settings dialog under Tools
).
The protocol we use is documented in PROTOCOL.md.
We'd like to know what you're building with obs-websocket! If you do something in this fashion, feel free to drop a message in #project-showoff
in the discord server!
Contributors
Code Contributors
This project exists thanks to all the people who contribute. Contribute.
Financial Contributors
Become a financial contributor and help us sustain our community. Contribute
Individuals
Organizations
Support this project with your organization. Your logo will show up here with a link to your website. Contribute