Bot releases are visible (Hide)
Published by tt2468 about 2 years ago
obs-websocket-4.9.1-compat-Qt6-Windows-Installer.exe
, launch it and follow the instructions.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
).Download obs-websocket-4.9.1-compat-Ubuntu64.deb
(provided below) and install it on your system. This binary is for Ubuntu 20.04.
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.
Published by tt2468 about 2 years ago
4.9.1-compat
(AVAILABLE BELOW) TO MAINTAIN 4.X PROTOCOL SUPPORTThis is a minor bugfix release. For changes, see here
obs-websocket-5.0.1-Windows-Installer.exe
, launch it and follow the instructions.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
).Download obs-websocket-5.0.1-Ubuntu64.deb
(provided below) and install it on your system.
Download obs-websocket-5.0.1-macOS.pkg
and run it, following the instructions.
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.
Published by tt2468 over 2 years ago
4.9.1-compat
(AVAILABLE BELOW) TO MAINTAIN 4.X PROTOCOL SUPPORTThere are way too many changes to list here, so I'll just summarize some of the highlights
4455
.OpenInputPropertiesDialog
OpenInputFiltersDialog
OpenInputInteractDialog
Get/SetPersistentData
to allow you to store custom JSON data on the machine where obs-websocket is running.Get/SetVideoSettings
.
InputVolumeMeters
event.
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.InputAudioBalanceChanged
.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
).Download obs-websocket-5.0.0-Ubuntu64.deb
(provided below) and install it on your system.
Download obs-websocket-5.0.0-macOS.pkg
and run it, following the instructions.
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.
Published by tt2468 over 2 years ago
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.
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:
4455
Additions/Enhancements:
SetInputAudioMonitorType
now checks for monitor availability before applyingFixes:
SetProfileParameter
would not persistobs-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
).Download obs-websocket-5.0.0-beta1-Ubuntu64.deb
(provided below) and install it on your system.
Download obs-websocket-5.0.0-beta1-macOS.pkg
and run it, following the instructions.
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.
Published by tt2468 almost 3 years ago
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.
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:
Additions/Enhancements:
GetSceneList
or SceneListReindexed
.
scenes
array.ignoreNonFatalRequestChecks
session parameter. It was not effectively implemented and got in the way. May be re-added in the future.ignoreInvalidMessages
session parameter. There is not a foreseeable case where making obs-websocket less strict in this regard would lead to good results.Ui
event subscriptionResourceCreationFailed
request status identifierResourceNotConfigurable
request status identifierhaltOnFailure
for serial batch requestsFixes:
SceneItemListReindexed
(was SceneItemReindexed
)AuthRequired
profile parameter name. (Was AuthRequred
)slotValue
in SetPersistentData
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
).Download obs-websocket-5.0.0-alpha3-Ubuntu64.deb
(provided below) and install it on your system.
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.
Published by tt2468 about 3 years ago
5.0.0-alpha2
instead of just 5.0.0
)obswebsocket|[host]:[port]|[password]
to obsws://[host]:[port]/[password]
. obswss://
is to be used for WSS connections.eventIntent
is now a key in event payload data.Content-Type
to the Sec-WebSocket-Protocol
standard. obswebsocket.json
and obswebsocket.msgpack
are the currently supported subprotocols.InputNotFound
and SceneNotFound
are now just ResourceNotFound
.RemoveScene
now makes sure you are not removing the last scene.GetInputAudioMonitorType
SetInputAudioMonitorType
GetInputPropertiesListPropertyItems
(this one is really dope)PressInputPropertiesButton
ToggleStream
GetSceneItemList
GetGroupSceneItemList
CreateSceneItem
RemoveSceneItem
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.
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
).Download obs-websocket-5.0.0-alpha2-Ubuntu64.deb
(provided below) and install it on your system.
Sorry, but no binaries are available for macOS right now.
Published by tt2468 about 3 years ago
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
).Download obs-websocket-5.0.0-alpha1-Ubuntu64.deb
(provided below) and install it on your system.
Sorry, but no binaries are available for macOS right now.
Published by tt2468 over 3 years ago
Only use this release with OBS Studio 27.0.0 or above!
Added Events:
Added 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).scale.filter
field to the SceneItemTransform
typedef.playPause
parameter of the PlayPauseMedia
request is now optional.volumeDb
parameter has been added to the SourceVolumeChanged
event.CreateScene
then deleting it would require an OBS restart in order to use the name again.SetSceneTransitionOverride
, SetTBarPosition
, and ReleaseTBar
.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.
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:
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:
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.
obs-websocket-4.9.1-Windows.zip
archive : copy the contents of the archive to the root of your OBS Studio installation folder (either C:\Program Files\obs-studio
or C:\Program Files (x86)\obs-studio
).Download obs-websocket_4.9.1-1_amd64.deb
(provided below) and install it on your system.
Download and run obs-websocket-4.9.1-macOS.pkg
(provided below).
Published by tt2468 over 3 years ago
Only use this release with OBS Studio 26.1 or above!
Added Events:
Media
category with lots of eventsSourceAudioActivated
SourceAudioDeactivated
Added Requests:
Media Control
category with lots of requestsExecuteBatch
CreateSource
CreateScene
GetSourceDefaultSettings
RefreshBrowserSource
AddSceneItem
GetSceneItemList
GetAudioActive
TriggerHotkeyByName
TriggerHotkeyBySequence
GetRecordingStatus
GetReplayBufferStatus
GetTransitionSettings
SetTransitionSettings
GetTransitionPosition
ReleaseTBar
SetTBarPosition
recordingFilename
field to the response of GetRecordingStatus
and the various Recording events (#621)SetSceneItemRender
(#628)position
datatype in GetSceneItemProperties
to a double instead of an integer (#533)TakeSourceScreenshot
now defaults to the current scene if no source name is provided (#557)SetCurrentSceneCollection
and SetCurrentProfile
now check if the provided sc/profile name is valid (#560)useDecibel
parameter of GetVolume
when the volume is -INFINITY
(#529)missing request parameters
response when performing GetOutputInfo
, StartOutput
, StopOutput
(#618)SetVolume
now allows mul values higher than 1.0
and dB values higher than 0.0
(#629)C:\Program Files\obs-studio
or C:\Program Files (x86)\obs-studio
).Download obs-websocket_4.9.0-1_amd64.deb (provided below) and install it on your system.
Download and run obs-websocket-4.9.0-macOS.pkg
(provided below).
Published by Palakis over 4 years ago
Only use this release with OBS Studio 25 or above!
Added Events:
Added Requests:
GetSceneItemProperties
, SetSceneItemProperties
and ResetSceneItem
, you can now target scene items either by their source name or by their ID (#449)itemId
response property to the GetSceneItemProperties
requestalignment
response property to the GetSceneItemProperties
requesttype
response property to the TransitionBegin
eventmuted
property to SceneItem
typedefsupported-image-export-formats
response property to the GetVersion
requestuseDecibel
request property to SetVolume
and GetVolume
requests. See docs for more infocompressionQuality
and fileFormat
request properties to TakeSourceScreenshot
sourceType
response property to SourceRenamed
eventSendCaptions
now uses obs_output_output_caption_text2
internallyEnableStudioMode
, DisableStudioMode
or ToggleStudioMode
SetStreamSettings
wouldn't apply if switching service type-1
if the transition is fixed (Eg. Cut, Stinger)SetSyncOffset
now allows negative offsetsfrom-scene
from TransitionEnd
since it isnt actually availableTakeSourceScreenshot
on WindowsGetCurrentProfile
, GetCurrentSceneCollection
and the Heartbeat
eventSetBrowserSourceProperties
and GetBrowserSourceProperties
are now deprecated in favor of SetSourceSettings
and GetSourceSettings
C:\Program Files\obs-studio
or C:\Program Files (x86)\obs-studio
).Download obs-websocket_4.8.0-1_amd64.deb (provided below) and install it on your system.
Download and run obs-websocket-4.8.0-macOS.pkg (provided below).
Published by Palakis almost 5 years ago
Only use this release with OBS 23 or above!
PauseRecording
and ResumeRecording
RecordingPaused
and RecordingResumed
recording-paused
field in the response/event fields of GetStreamingStatus
, Heartbeat
and StreamStatus
BroadcastCustomMessage
request type will send a BroadcastCustomMessage
event to all connected clientsSetSourceFilterVisibility
(#388)
filterEnabled
boolean fieldSourceFilterVisibilityChanged
ListOutputs
, GetOutputInfo
, StartOutput
and StopOutput
GetVideoInfo
(#319)GetSourceFilterInfo
(#388)TransitionBegin
event now reports a duration of 0 if the reported transition is a Cut transition (#364)TakeSourceScreenshot
can take scene screenshots as well (#384)ToggleStudioMode
or TransitionToProgram
(#320)ReorderSceneItems
now works without crashing (#365)GetBrowserSourceProperties
and SetBrowserSourceProperties
(#360)C:\Program Files\obs-studio
or C:\Program Files (x86)\obs-studio
).Download and run obs-websocket-4.7.0-macOS.pkg.
Note: the installer package is now digitally signed, so macOS shouldn't complain. However, if it is the case and a security alert pops up when trying to launch the installer, go to the "Security & Privacy" panel under macOS Settings and click "Open Anyway".
Published by Palakis over 5 years ago
Only use this release with OBS 23 or above!
TakeSourceScreenshot
: take an image snapshot of a source (either an input or a scene) and save it straight to a file and/or receive it in the response as base64-encoded Data URISendCaptions
(Windows/macOS only): send closed captions text to the streaming output. For instance, Twitch's player supports closed captions sent through SendCaptions
GetStats
: provides most of the metrics found in OBS' Stats window.GetVideoInfo
: Fetch information about OBS' video output settings: base/canvas size and output size, pixel format, YUV settings, ...StreamStatus
and Heartbeat
events now include data from OBS' stats and a replay-buffer-active
property (for StreamStatus
)GetSceneItemProperties
and SetSceneItemProperties
now have support for a locked
property that allows users to lock or unlock a scene item and get its current lock stateGetSceneItemProperties
now includes width
and height
values computed from the item's base dimensions and current scaling settings.item-id
propertySourceOrderChanged
now includes a list of the reordered scene itemsparentGroupName
on scene items that belong to a groupchildren
on groupsSetSceneItemProperties
when trying to set the bounds type of a scene itemGetSourcesTypesList
is supposed to be GetSourceTypesList
C:\Program Files\obs-studio
or C:\Program Files (x86)\obs-studio
).Download and run obs-websocket-4.6.1.pkg.
Note: the installer package is now digitally signed, so macOS shouldn't complain. However, if it is the case and a security alert pops up when trying to launch the installer, go to the "Security & Privacy" panel under macOS Settings and click "Open Anyway".
Published by Palakis over 5 years ago
TakeSourceScreenshot
: take an image snapshot of a source (either an input or a scene) and save it straight to a file and/or receive it in the response as base64-encoded Data URISendCaptions
(Windows/macOS only): send closed captions text to the streaming output. For instance, Twitch's player supports closed captions sent through SendCaptions
GetStats
: provides most of the metrics found in OBS' Stats window.GetVideoInfo
: Fetch information about OBS' video output settings: base/canvas size and output size, pixel format, YUV settings, ...StreamStatus
and Heartbeat
events now include data from OBS' stats and a replay-buffer-active
property (for StreamStatus
)GetSceneItemProperties
and SetSceneItemProperties
now have support for a locked
property that allows users to lock or unlock a scene item and get its current lock stateGetSceneItemProperties
now includes width
and height
values computed from the item's base dimensions and current scaling settings.item-id
propertySourceOrderChanged
now includes a list of the reordered scene itemsparentGroupName
on scene items that belong to a groupchildren
on groupsSetSceneItemProperties
when trying to set the bounds type of a scene itemGetSourcesTypesList
is supposed to be GetSourceTypesList
C:\Program Files\obs-studio
or C:\Program Files (x86)\obs-studio
).Download and run obs-websocket-4.6.0.pkg.
Note: the installer package is now digitally signed, so macOS shouldn't complain. However, if it is the case and a security alert pops up when trying to launch the installer, go to the "Security & Privacy" panel under macOS Settings and click "Open Anyway".
Published by Palakis over 5 years ago
Only use this release with OBS 22 or above!
scene-name
parameter: deemed useless on sources, which are independent from scenesrender
request parameter and response propertyGetVolume
: fix typo in protocol specification (❎ mute
; ✔️ muted
)Download and run obs-websocket-4.5.1.pkg.
Note: the installer package is now digitally signed, so macOS shouldn't complain. However, if it is the case and a security alert pops up when trying to launch the installer, go to the "Security & Privacy" panel under macOS Settings and click "Open Anyway".
Published by Palakis almost 6 years ago
Only use this release with OBS 22 or above!
This is a Release Candidate for obs-websocket 4.5.0. Some things may be broken, so please test it before using it in production.
Minor non-backwards-compatible changes are in 4.5.0, detailed below in the changelog. Check if your code is affected by one of the changes, and update your code accordingly.
If you're using a ready-made tool/software that uses obs-websocket, test it and report any issue to the developer/publisher of the aforementioned software.
scene-name
parameter: deemed useless on sources, which are independent from scenesrender
request parameter and response propertyGetVolume
: fix typo in protocol specification (❎ mute
; ✔️ muted
)Download and run obs-websocket-4.5.0.pkg.
Note: OS X may show you a security alert when launching the installer, preventing your from installing obs-websocket. If this happens, go to the "Security & Privacy" panel in OS X Settings and click "Open Anyway".
Published by Palakis about 6 years ago
Only use this release with OBS 22 or above!
TransitionBegin
event: new from-scene
and to-scene
fields to provide source and destination scene names for the currently running transitionTransitionBegin
event not triggering when using Transition OverridesDownload and run obs-websocket-4.4.0.pkg.
Note: OS X may show you a security alert when launching the installer, preventing your from installing obs-ndi. If this happens, go to the "Security & Privacy" panel in OS X Settings and click "Open Anyway".
Published by Palakis over 6 years ago
CAUTION: ONLY use this release with OBS 21.1 or above!
Published by Palakis over 6 years ago
CAUTION: ONLY use this release with OBS 21.0.3 or below!
Download and run obs-websocket-4.3.2.pkg.
Note: OS X may show you a security alert when launching the installer, preventing your from installing obs-ndi. If this happens, go to the "Security & Privacy" panel in OS X Settings and click "Open Anyway".
Published by Palakis over 6 years ago
Download and run obs-websocket-4.3.1.pkg.
Note: OS X may show you a security alert when launching the installer, preventing your from installing obs-ndi. If this happens, go to the "Security & Privacy" panel in OS X Settings and click "Open Anyway".
Published by Palakis almost 7 years ago
StartStreaming
are not persisted.SetRecordingFolder
creates the specified folder if it doesn't exist.Download and run obs-websocket-latest-4.3.0.pkg.
Note: OS X may show you a security alert when launching the installer, preventing your from installing obs-ndi. If this happens, go to the "Security & Privacy" panel in OS X Settings and click "Open Anyway".