Releases: obsproject/obs-websocket
Release obs-websocket 4.9.1-compat (OBS 28+/Qt6)
Important Notes
- Install this version only if you require legacy 4.9.1 protocol support and are using OBS 28.0.0 or above
- For <28.0.0, use the compat binaries here
- It is recommended to uninstall compat whenever the tools you use start supporting V5, as 4.x is quite buggy and technically applies an amount of additional load to OBS internals.
Install instructions
Windows
- Using the installer (recommended) : download
obs-websocket-4.9.1-compat-Qt6-Windows-Installer.exe
, launch it and follow the instructions. - Using the
obs-websocket-4.9.1-compat-Qt6-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (C:\Program Files\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket-4.9.1-compat-Ubuntu64.deb
(provided below) and install it on your system. This binary is for Ubuntu 20.04.
macOS
Download obs-websocket-4.9.1-compat-Qt6-macOS.pkg
and run it, following the instructions. This binary is universal, meaning it works on both Intel and Apple Silicon macs.
obs-websocket 5.0.1
THIS VERSION (5.0.1) DOES NOT USE THE SAME PROTOCOL AS PREVIOUS 4.X VERSIONS LIKE 4.9.1. ADDITIONALLY INSTALL 4.9.1-compat
(AVAILABLE BELOW) TO MAINTAIN 4.X PROTOCOL SUPPORT
Important Notes
- Only use this release with OBS Studio v27! Do not install this if you are using an OBS version other than v27
Resources
- The protocol specification is available here
- The README has some software and libraries that support 5.0.0.
Changes since 5.0.0
This is a minor bugfix release. For changes, see here
Install instructions
Windows
- Using the installer (recommended) : download
obs-websocket-5.0.1-Windows-Installer.exe
, launch it and follow the instructions. - Using the
obs-websocket-5.0.1-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (C:\Program Files\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket-5.0.1-Ubuntu64.deb
(provided below) and install it on your system.
macOS
Download obs-websocket-5.0.1-macOS.pkg
and run it, following the instructions.
4.x compatability
We have also included binaries for a version of obs-websocket, 4.9.1-compat
. This can be run alongside 5.0.0 in OBS and can provide legacy support for the 4.x protocol.
obs-websocket 5.0.0
THIS VERSION (5.0.0) DOES NOT USE THE SAME PROTOCOL AS PREVIOUS 4.X VERSIONS LIKE 4.9.1. ADDITIONALLY INSTALL 4.9.1-compat
(AVAILABLE BELOW) TO MAINTAIN 4.X PROTOCOL SUPPORT
Important Notes
- Only use this release with OBS Studio 27.2.0 or above!
Resources
- The protocol specification is available here
- The README has some software and libraries that support 5.0.0.
Changes since 4.x
There are way too many changes to list here, so I'll just summarize some of the highlights
UI
- The UI has gotten a full revamp.
- New "Session Table" which displays the remote address of all currently connected WebSocket clients.
- New "Connect Info" dialog, featuring the ability to copy the IP and password of the server, and also a QR code generator which can be scanned to connect to obs-websocket locally.
- Password authentication is enabled by default, and generates a secure password for you that you can copy. We recommend always keeping authentication enabled, with a password generated by obs-websocket.
Protocol
- **The default port for obs-websocket 5.x is now
4455
. - The protocol has gotten a revamp, with many QOL improvements over the 4.x protocol. This is effectively a new protocol, so applications designed to work only with 4.x versions will not work with 5.x versions.
- See here for the design goals regarding the 5.x protocol.
Requests
- Virtually anything possible in 4.x is possible in 5.x. If you are having trouble migrating your code to 5.x, you are invited to join the Discord server and ask for guidance. We are also working on a migration guide which will be releasing soon.
- We added a new "vendor" API to obs-websocket, which allows third-party plugins to extend their plugin's functionality through obs-websocket requests and events. If you are an OBS plugin author, we invite you to explore this system as a means of adding further features to your plugins.
- We've already added this functionality to obs-browser
- A sample plugin c file with this feature can be found here
- Some new requests have been added for opening UI dialogs. This should have great adoption for people building macros.
OpenInputPropertiesDialog
OpenInputFiltersDialog
OpenInputInteractDialog
- We've added
Get/SetPersistentData
to allow you to store custom JSON data on the machine where obs-websocket is running. - You can now set OBS' video settings via
Get/SetVideoSettings
. - The ability to remove inputs (previously called sources) has finally been added.
- Limited support for groups has been added, but we recommend using nested scenes over groups when possible.
- You can now change the blend mode of scene items.
Request Batches
- Request batches have gotten a bit of an overhaul.
- We've added a new RequestBatchExecutionType, allowing you to do things like execute requests in batches in-sync with video composition for things like animations.
- Here is a Python sample from simpleobsws where the classic DVD bounce animation is recreated using SerialFrame request batches.
Events
- It's now possible to receive a stream of audio level updates by subscribing to the
InputVolumeMeters
event. - We've added the
CurrentSceneCollectionChanging
event which should be used as a signal to pause any outgoing requests to obs-websocket. Performing requests during a scene collection change is considered undefined behavior. - More audio-related input events like
InputAudioBalanceChanged
.
Install instructions
Windows
- Using the installer (recommended) : download it, launch it and follow the instructions.
- Using the
obs-websocket-5.0.0-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (C:\Program Files\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket-5.0.0-Ubuntu64.deb
(provided below) and install it on your system.
macOS
Download obs-websocket-5.0.0-macOS.pkg
and run it, following the instructions.
4.x compatability
We have also included binaries for a version of obs-websocket, 4.9.1-compat
. This can be run alongside 5.0.0 in OBS and can provide legacy support for the 4.x protocol.
obs-websocket 5.0.0-beta1
THIS IS A PRE-RELEASE. UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING, DOWNLOAD 4.9.1
Important Notes
- Only use this release with OBS Studio 27.2.0 or above!
- This is the first release which is basically feature complete. See the todo below for missing requests.
- If you develop software that integrates with obs-websocket, we highly recommend releasing a version that supports the 5.x protocol, as there is not much more time before we release 5.0.0.
Resources
- The protocol specification is available here
- The planned requests sheet is available here
- The planned events sheet is available here
- The README has been updated with a few 5.x-compatible libraries.
What's left to do?:
The goal of 5.0.0 is to reach feature parity with 4.x. As such, all that's left to do is to implement the projector and output requests (like GetOutputList
). Since a very small number of people generally use these requests, I decided to release beta1 with them not included for now. These requests will be implemented before 5.0.0 is released.
Changes since 5.0.0-alpha3
Warning: This may be incomplete
Implemented Requests:
GetRecordDirectory
is now enabledRemoveInput
is now enabledOpenInputPropertiesDialog
OpenInputFiltersDialog
OpenInputInteractDialog
GetInputAudioBalance
SetInputAudioBalance
GetGroupList
GetInputAudioTracks
SetInputAudioTracks
GetSpecialInputs
GetSceneItemBlendMode
SetSceneItemBlendMode
GetSourceFilter
GetVirtualCamStatus
ToggleVirtualCam
StartVirtualCam
StopVirtualCam
GetReplayBufferStatus
ToggleReplayBuffer
StartReplayBuffer
StopReplayBuffer
SaveReplayBuffer
GetLastReplayBufferReplay
SendStreamCaption
GetSceneSceneTransitionOverride
SetSceneSceneTransitionOverride
GetCurrentSceneTransitionCursor
SetTBarPosition
GetSourceFilterList
CreateSourceFilter
RemoveSourceFilter
GetSourceFilterDefaultSettings
SetSourceFilterName
SetSourceFilterIndex
SetSourceFilterSettings
SetSourceFilterEnabled
Implemented Events:
CurrentSceneCollectionChanging
is now enabledCurrentProfileChanging
is now enabledInputAudioBalanceChanged
SceneItemSelected
CurrentSceneTransitionChanged
CurrentSceneTransitionDurationChanged
SceneTransitionStarted
SceneTransitionEnded
SceneTransitionVideoEnded
SourceFilterCreated
SourceFilterRemoved
SourceFilterListReindexed
Notable changes:
- The default port for 5.x obs-websocket is now
4455
- This was changed as a measure to avoid problems with 4.x versions
- We now have macOS builds thanks to @Brendonovich @Palakis
Additions/Enhancements:
SetInputAudioMonitorType
now checks for monitor availability before applying- Downgraded our ASIO version to 1.12.1 to match other 3rd party plugins, which avoids a crash on macOS
- Various minor performance improvements
Fixes:
- Fixed a bug where profile parameters set with
SetProfileParameter
would not persist
Install instructions
Windows
- Using the installer (recommended) : download it, launch it and follow the instructions.
- Using the
obs-websocket-5.0.0-beta1-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (C:\Program Files\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket-5.0.0-beta1-Ubuntu64.deb
(provided below) and install it on your system.
macOS
Download obs-websocket-5.0.0-beta1-macOS.pkg
and run it, following the instructions.
4.x compatability
We have also included binaries for a version of obs-websocket, 4.9.1-compat
. This can be run alongside 5.0.0-beta1 in OBS and can provide legacy support for the 4.x protocol.
obs-websocket 5.0.0-alpha3
THIS IS A PRE-RELEASE. UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING, DOWNLOAD 4.9.1
Important Notes
- Only use this release with OBS Studio 27.1.3 or above.
- All plugin components have been finished, however there are some events and requests which have not yet been implemented. See the event and request sheets to find out what has been implemented.
Resources
- The protocol specification is available here
- The planned requests sheet is available here
- The planned events sheet is available here
- To aid developers, I've updated simpleobsws (a client library I maintain) for the latest 5.0.0 protocol spec. This should help with testing and as an implementation example. See the branch here
So what's going on?
As you may have noticed, we've moved to the OBS Project! The plan is to begin bundling obs-websocket with OBS Studio starting with version 28.0.0. Palakis and I have joined the OBS Project's core team as a result, which has significantly accelerated the development of new features for obs-websocket. Version 5.0.0 will still be released independently of OBS, but alongside version 27.2.
We expect to have at least 6 months between the official release of 5.0.0 and the bundling of obs-websocket into OBS, providing a fair amount of time to transition legacy 4.x applications to 5.x. Even after obs-websocket is bundled with OBS, it should still be possible to replace the obs-websocket binary file with a 4.x version to keep using 4.x.
Release plans:
The version being released today is probably roughly 90% feature-complete. As such, we expect the next pre-release version to be 5.0.0-beta1 (feature-complete release), after the OBS 27.2.0 beta is released. From there, it's just down to whatever bugs need fixing.
Changes since 5.0.0-alpha2
Warning: This may be incomplete
Implemented Requests:
GetSceneItemId
DuplicateSceneItem
GetSceneItemEnabled
SetSceneItemEnabled
GetSceneItemLocked
SetSceneItemLocked
GetSceneItemIndex
SetSceneItemIndex
GetSceneItemTransform
SetSceneItemTransform
GetRecordStatus
ToggleRecord
StartRecord
StopRecord
ToggleRecordPause
PauseRecord
ResumeRecord
GetMediaInputStatus
SetMediaInputCursor
OffsetMediaInputCursor
TriggerMediaInputAction
CallVendorRequest
- For calling a request registered by a vendor (plugin/script)GetTransitionKindList
GetSceneTransitionList
GetCurrentSceneTransition
SetCurrentSceneTransition
SetCurrentSceneTransitionDuration
SetCurrentSceneTransitionSettings
TriggerStudioModeTransition
Implemented Events:
SceneItemTransformChanged
VendorEvent
- A vendor emits a custom eventInputVolumeMeters
- Receive volume level updates of all active inputs every 50msCurrentSceneChanged
->CurrentProgramSceneChanged
Notable changes:
- This version actually has protocol docs now!
- Added request batch execution types. This opens a plethora of new ways to do cool things with OBS. See here for more details.
- Added "variables" support to request batches. This allows you to take a response field of one request and inject it as a request field into another request, all within the same batch.
- Added an external plugin/script API. This allows plugins/scripts to register requests/events with obs-websocket, to allow WebSocket clients to interact with them. See here
Additions/Enhancements:
- Removed groups from all scene list array returns. This must be updated on your end if you use
GetSceneList
orSceneListReindexed
.- This also returns the correct order to the
scenes
array.
- This also returns the correct order to the
- Removed the
ignoreNonFatalRequestChecks
session parameter. It was not effectively implemented and got in the way. May be re-added in the future. - Removed the
ignoreInvalidMessages
session parameter. There is not a foreseeable case where making obs-websocket less strict in this regard would lead to good results. - The Windows installer now will fail if OBS is not already installed
- The WebSocket server only restarts when it actually needs to (versus before when changing almost any setting would trigger a restart)
- Improved the random number generator used to generate passwords and keys
- Added the
Ui
event subscription - Added
ResourceCreationFailed
request status identifier - Added
ResourceNotConfigurable
request status identifier - Connect Info now updates the information on settings apply instead of closing the dialog
- Updated the Issue and PR templates to newer standards
- Added a 6 character minimum WebSoceket password length
- Implemented
haltOnFailure
for serial batch requests
Fixes:
- Fixed the name of
SceneItemListReindexed
(wasSceneItemReindexed
) - Fixed the
AuthRequired
profile parameter name. (WasAuthRequred
) - Fixed an issue where the server password would not generate automatically on first load
- Config changes
- Fixed WebSocket password is not generated if FirstLoad and overridden
- Save generated password immediately if FirstLoad
- Do not generate new password if FirstLoad and password already exists
- More logging
- Removed dependency on QtConcurrent. Thanks to micolous for the suggestion
- Fixed the validation of
slotValue
inSetPersistentData
Install instructions
Windows
- Using the installer (recommended, works only with combined 32/64-bit installations) : download it, launch it and follow the instructions.
- Using the
obs-websocket-5.0.0-alpha3-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (C:\Program Files\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket-5.0.0-alpha3-Ubuntu64.deb
(provided below) and install it on your system.
macOS
MacOS binaries are not available as of the time of this release, but will likely be uploaded to this release at a later date. Please check back later.
obs-websocket 5.0.0-alpha2
THIS IS A PRE-RELEASE. UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING, DOWNLOAD 4.9.1
Important Notes
- Only use this release with OBS Studio 27.1.0 or above.
- All plugin components have been finished, however there are some events and requests which have not yet been implemented. See the event and request sheets to find out what has been implemented.
Resources
- The protocol specification is available here
- Breaking changes to the protocol specification performed during the development process are available here
- The planned requests sheet is available here
- The planned events sheet is available here
- To aid developers, I've updated simpleobsws (a client library I maintain) for the latest 5.0.0 protocol spec. This should help with testing and as an implementation example. See the branch here
Changes since 5.0.0-alpha1
- obs-websocket now reports the extended plugin version in the log and around the plugin (
5.0.0-alpha2
instead of just5.0.0
) - The QR code format has been updated from
obswebsocket|[host]:[port]|[password]
toobsws://[host]:[port]/[password]
.obswss://
is to be used for WSS connections. - Fixed the global data realm functionality for persistent data requests.
eventIntent
is now a key in event payload data.- The header for specifying JSON vs MsgPack has been changed from
Content-Type
to theSec-WebSocket-Protocol
standard.obswebsocket.json
andobswebsocket.msgpack
are the currently supported subprotocols. - The RequestStatus enum has been refactored and heavily simplified. For example,
InputNotFound
andSceneNotFound
are now justResourceNotFound
. - (minor)
RemoveScene
now makes sure you are not removing the last scene. - Added these requests:
GetInputAudioMonitorType
SetInputAudioMonitorType
GetInputPropertiesListPropertyItems
(this one is really dope)PressInputPropertiesButton
ToggleStream
GetSceneItemList
GetGroupSceneItemList
CreateSceneItem
RemoveSceneItem
About groups...
I've gotten many questions about whether groups will officially be supported in OBS. Today I spent a bunch of time looking into what will be possible for interacting with groups in obs-websocket. Unfortunately, we are very restricted due to how groups work in OBS. However, I can say that what is and is not possible will be clearly defined in 5.x.
Install instructions
Windows
- Using the installer (recommended, works only with combined 32/64-bit installations) : download it, launch it and follow the instructions.
- Using the
obs-websocket-5.0.0-alpha2-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (C:\Program Files\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket-5.0.0-alpha2-Ubuntu64.deb
(provided below) and install it on your system.
macOS
Sorry, but no binaries are available for macOS right now.
obs-websocket 5.0.0-alpha1
Important Notes
- Only use this release with OBS Studio 27.1.0 or above.
- All plugin components have been finished, however there are some events and requests which have not yet been implemented. See the event and request sheets to find out what has been implemented.
- We've changed a lot about the low-level protocol since first announcing it. If you are developing software and do not know about the changes (like OpCodes), please check it out.
Resources
- The protocol specification is available here
- Breaking changes to the protocol specification performed during the development process are available here
- The planned requests sheet is available here
- The planned events sheet is available here
- To aid developers, I've updated simpleobsws (a client library I maintain) for the latest 5.0.0 protocol spec. This should help with testing and as an implementation example. See the branch here
Install instructions
Windows
- Using the installer (recommended, works only with combined 32/64-bit installations) : download it, launch it and follow the instructions.
- Using the
obs-websocket-5.0.0-alpha1-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (C:\Program Files\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket-5.0.0-alpha1-Ubuntu64.deb
(provided below) and install it on your system.
macOS
Sorry, but no binaries are available for macOS right now.
obs-websocket 4.9.1
Only use this release with OBS Studio 27.0.0 or above!
Changes since 4.9.0
New Features
-
Added Events:
-
Added Requests:
- 4 new Virtualcam-related requests.
Sleep
- Pause execution of a batch request for the given duration of time.GetSourceActive
- Whether the specified source is active on program (the output feed).
Enhancements
- Added
scale.filter
field to theSceneItemTransform
typedef. - The
playPause
parameter of thePlayPauseMedia
request is now optional. - The
volumeDb
parameter has been added to theSourceVolumeChanged
event. - Added support for obs-websocket to be built inline with OBS-Studio. (Versus out of tree)
Fixes
- Fixed an issue where not all image file formats were supported in 4.9.0.
- Fixed multiple scenarios where OBS could crash during shutdown with obs-websocket installed.
- Fixed an issue causing the Ubuntu deb package to have an incorrect version.
- Fixed an issue where creating a scene with
CreateScene
then deleting it would require an OBS restart in order to use the name again. - The Windows and MacOS binaries are now built against Qt 5.15.2, just like OBS. This helps fix a number of issues.
- Fixed some memory leaks in
SetSceneTransitionOverride
,SetTBarPosition
, andReleaseTBar
.
Important Notice!
This is the last planned release of obs-websocket v4.x.x. All future releases (5.x.x) will not be backwards-compatible with 4.x.x!
Over the years, obs-websocket has gone from a simple way for techies to quickly automate things to an advanced software suite with a plethora of applications that rely on it, and over 100,000 users. To say the least, there have been some growing pains in the process. Without going into too much technical detail, the plugin was originally based OBSRemote protocol which was created in early 2013. As time has progressed, more and more functionality has been built on that original design, and it was only a matter of time before it needed a complete redo.
What this means for normal users:
This means that when 5.0.0 comes out, your client software (Touch Portal, LioranBoard, etc) will also need to be updated when using them with the upcoming 5.0.0. 5.0.0 will be an exciting release, with lots of new features and performance improvements. If you're interested in seeing the kind of things in store, check out our dev updates discussion here. Here is a list of applications that plan to support v5.0.0 when it comes out:
- Touch Portal
- LioranBoard
- Streamer.bot
- StreamControl (Android App)
- obs-web (Website)
- obs-tablet-remote (Website)
- WebCaptioner (Website)
- obs-websocket-http (HTTP Server)
- simpleobsws (Python Client Library)
- obws (Rust Client Library)
- obs-java-client (Java Client Library)
- websocket-obs-java (Java Client Library)
- obs-websocket-js (JS Client Library)
(If you are a developer planning to release an update to your software along with 5.0.0, shoot me a message on the Discord to be added here.)
What this means for developers
Ah yes, there's no better feeling than updating your software in order to not break because one of your main dependencies decided to do a full rewrite (/s). We understand that there are developers out there who make heavy usage of obs-websocket to build incredible productions, and that updating this software can be difficult. That is why I highly encourage developers to join our Discord where we are more than happy to answer your questions as you update your software to support 5.x. We also post dev preview builds there any time there has been a notable update. Here are some helpful links for 5.x that may help you:
- New protocol documentation (very different from 4.x protocol)
- Planned Requests
- Planned Events
- Example Protocol Implementation
A final note
While Palakis and I absolutely love working on obs-websocket, it's a big piece of software that requires constant upkeep and attention. We've dedicated countless hours of our time to making sure that obs-websocket keeps working reliably so that people can continue to use it to make stunning content. However, we both also have other life obligations, meaning limited amounts of time to work on obs-websocket. If you appreciate obs-websocket and would like to contribute financially in order to help keep the project going, I encourage you to visit to our OpenCollective page. Contributing helps go towards the time we put into maintaining the plugin, along with the occasional expense which would normally be paid for out-of-pocket by one of us. I would also like to thank our code contributors as well for giving us a hand with furthering development.
Install instructions
Windows
- Using the installer (recommended, works only with combined 32/64-bit installations) : download it, launch it and follow the instructions.
- Using the
obs-websocket-4.9.1-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (eitherC:\Program Files\obs-studio
orC:\Program Files (x86)\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket_4.9.1-1_amd64.deb
(provided below) and install it on your system.
macOS
Download and run obs-websocket-4.9.1-macOS.pkg
(provided below).
obs-websocket 4.9.0
Only use this release with OBS Studio 26.1 or above!
Changes since 4.8.0
New Features
-
Added Events:
- New
Media
category with lots of events SourceAudioActivated
SourceAudioDeactivated
- New
-
Added Requests:
- New
Media Control
category with lots of requests ExecuteBatch
CreateSource
CreateScene
GetSourceDefaultSettings
RefreshBrowserSource
AddSceneItem
GetSceneItemList
GetAudioActive
TriggerHotkeyByName
TriggerHotkeyBySequence
GetRecordingStatus
GetReplayBufferStatus
GetTransitionSettings
SetTransitionSettings
GetTransitionPosition
ReleaseTBar
SetTBarPosition
- New
Enhancements
- Made password authentication enabled by default and added a new popup asking to set a new password on first startup (#657)
- Added the ability to lock obs-websocket to only using an IPv4 address to bind to (#559)
- Added
recordingFilename
field to the response ofGetRecordingStatus
and the various Recording events (#621) - Added scene item ID support to
SetSceneItemRender
(#628) - Changed the
position
datatype inGetSceneItemProperties
to a double instead of an integer (#533) TakeSourceScreenshot
now defaults to the current scene if no source name is provided (#557)SetCurrentSceneCollection
andSetCurrentProfile
now check if the provided sc/profile name is valid (#560)- More detailed state information for various events. More details in PR description (#619)
- Added more translations provided through Crowdin (#636)
Fixes
- Fixed a crash that can happen when OBS exits with existing websocket clients (#644)
- Fixed a crash that can happen when notifications are enabled in obs-websocket (#571)
- Fixed
useDecibel
parameter ofGetVolume
when the volume is-INFINITY
(#529) - Fixed
missing request parameters
response when performingGetOutputInfo
,StartOutput
,StopOutput
(#618) - Fixed the file permissions of the Ubuntu deb release file. (Previously were 777) (#627)
- Reenabled captions requests for MacOS (#546)
SetVolume
now allows mul values higher than1.0
and dB values higher than0.0
(#629)
Notes
- The README has been updated with some new libraries and web clients that can be used to interface with obs-websocket
- Added a new guide for enabling SSL access with ngrok: SSL-TUNNELlING.md
Install instructions
Windows
- Using the installer (recommended, works only with combined 32/64-bit installations) : download it, launch it and follow the instructions.
- Using the obs-websocket-4.9.0-Windows.zip archive : copy the contents of the archive to the root of your OBS Studio installation folder (either
C:\Program Files\obs-studio
orC:\Program Files (x86)\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket_4.9.0-1_amd64.deb (provided below) and install it on your system.
macOS
Download and run obs-websocket-4.9.0-macOS.pkg
(provided below).
obs-websocket 4.8
Only use this release with OBS Studio 25 or above!
Changes since 4.7.0
New Features
-
Added Events:
-
Added Requests:
Enhancements
- In
GetSceneItemProperties
,SetSceneItemProperties
andResetSceneItem
, you can now target scene items either by their source name or by their ID (#449) - Added
itemId
response property to theGetSceneItemProperties
request - Added
alignment
response property to theGetSceneItemProperties
request - Added
type
response property to theTransitionBegin
event - Added
muted
property toSceneItem
typedef - Added
supported-image-export-formats
response property to theGetVersion
request - Added
useDecibel
request property toSetVolume
andGetVolume
requests. See docs for more info - Added
compressionQuality
andfileFormat
request properties toTakeSourceScreenshot
- Added
sourceType
response property toSourceRenamed
event SendCaptions
now usesobs_output_output_caption_text2
internally- The macOS binary and installer now have proper digital signatures and are notarized by Apple
Fixes
- Fixed crashes when calling
EnableStudioMode
,DisableStudioMode
orToggleStudioMode
- Fixed an issue where
SetStreamSettings
wouldn't apply if switching service type - Any event that returns transition duration now returns
-1
if the transition is fixed (Eg. Cut, Stinger) SetSyncOffset
now allows negative offsets- Removed
from-scene
fromTransitionEnd
since it isnt actually available - Fixed JPEG support in
TakeSourceScreenshot
on Windows - Fixed a crash when sending an event on OBS exit
- Fixed source recognition on GDI+ and Freetype 2 sources
- Fixed the OBS log getting spammed with unnecessary messages on Linux (regardless of whether debug logging was enabled)
- Fixed an issue where the plugin failed to load on MacOS
- Fixed a bunch of memory leaks in
GetCurrentProfile
,GetCurrentSceneCollection
and theHeartbeat
event
Important Notes
SetBrowserSourceProperties
andGetBrowserSourceProperties
are now deprecated in favor ofSetSourceSettings
andGetSourceSettings
- The build instructions for linux have changed. See the build doc for more info
- Unfortunately, T-Bar control did not make it into this release, as the libobs API doesn't yet provide all the necessary functions to achieve this functionality
Install instructions
Windows
- Using the installer (recommended, works only with combined 32/64-bit installations) : download it, launch it and follow the instructions.
- Using the obs-websocket-4.8.0-Windows.zip archive : copy the contents of the archive to the root of your OBS Studio installation folder (either
C:\Program Files\obs-studio
orC:\Program Files (x86)\obs-studio
).
Debian / Ubuntu (64-bit)
Download obs-websocket_4.8.0-1_amd64.deb (provided below) and install it on your system.
macOS
Download and run obs-websocket-4.8.0-macOS.pkg (provided below).