Skip to content

obs-websocket 5.0.0-beta1

Pre-release
Pre-release
Compare
Choose a tag to compare
@tt2468 tt2468 released this 02 Mar 01:44
· 276 commits to master since this release

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 enabled
  • RemoveInput is now enabled
  • OpenInputPropertiesDialog
  • 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 enabled
  • CurrentProfileChanging is now enabled
  • InputAudioBalanceChanged
  • 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.