title | description | published | date | tags | editor | dateCreated |
---|---|---|---|---|---|---|
OBS Studio Requests v5 |
Information on OBS requests that is used in Streamer.bot with OBS raw. |
true |
2023-03-16 11:26:19 UTC |
markdown |
2022-07-19 18:29:42 UTC |
There are a handful of events that the OBS websocket broadcasts when things occur within OBS itself.
It's important to note, that while it may seem like one event maybe the one to use, there is the possibility that another one is better suited for the use case.
For example, a single scene change, fires off more events then just changing the scene, there are the transition events the happen, a pre and post event for the switch, etc.
This is the format you need to follow with each request{.subtitle}
In the request data you need to fill in the request fields that are shown on each page below
{
"requestType": "request method",
"requestData": { ... }
}
General & Miscellaneous OBS Studio requests{.subtitle}
- GetVersion Gets data about the current plugin and RPC version
- GetStats Gets statistics about OBS, obs-websocket, and the current session
- BroadcastCustomEvent Broadcasts a
CustomEvent
to all WebSocket clients. Receivers are clients which are identified and subscribed - CallVendorRequest Call a request registered to a vendor
- GetHotkeyList Gets an array of all hotkey names in OBS
- TriggerHotkeyByName Triggers a hotkey using its name. See
GetHotkeyList
- TriggerHotkeyByKeySequence Triggers a hotkey using a sequence of keys
- Sleep Sleeps for a time duration or number of frames. Only available in request batches with types
SERIAL_REALTIME
orSERIAL_FRAME
{.btn-grid .my-5}
Config related OBS Studio requests{.subtitle}
- GetPersistentData Gets the value of a "slot" from the selected persistent data realm
- SetPersistentData Sets the value of a "slot" from the selected persistent data realm
- GetSceneCollectionList Gets an array of all scene collections
- SetCurrentSceneCollection Switches to a scene collection.
- CreateSceneCollection Creates a new scene collection, switching to it in the process
- GetProfileList Gets an array of all profiles
- SetCurrentProfile Switches to a profile
- CreateProfile Creates a new profile, switching to it in the process
- RemoveProfile Removes a profile. If the current profile is chosen, it will change to a different profile first
- GetProfileParameter Gets a parameter from the current profile's configuration
- SetProfileParameter Sets the value of a parameter in the current profile's configuration
- GetVideoSettings Gets the current video settings
- SetVideoSettings Sets the current video settings
- GetStreamServiceSettings Gets the current stream service settings (stream destination)
- SetStreamServiceSettings Sets the current stream service settings (stream destination) {.btn-grid .my-5}
Source related OBS Studio requests{.subtitle}
- GetSourceActive Gets the active and show state of a source
- GetSourceScreenshot Gets a Base64-encoded screenshot of a source
- SaveSourceScreenshot Saves a screenshot of a source to the filesystem {.btn-grid .my-5}
Scene related OBS Studio requests{.subtitle}
- GetSceneList Gets an array of all scenes in OBS
- GetGroupList Gets an array of all groups in OBS
- GetCurrentProgramScene Gets the current program scene
- SetCurrentProgramScene Sets the current program scene
- GetCurrentPreviewScene Gets the current preview scene
- SetCurrentPreviewScene Sets the current preview scene
- CreateScene Creates a new scene in OBS
- RemoveScene Removes a scene from OBS
- SetSceneName Sets the name of a scene (rename)
- GetSceneSceneTransitionOverride Gets the scene transition overridden for a scene
- SetSceneSceneTransitionOverride Gets the scene transition overridden for a scene {.btn-grid .my-5}
Input related OBS Studio requests{.subtitle}
- GetInputList Gets an array of all inputs in OBS
- GetInputKindList Gets an array of all available input kinds in OBS
- GetSpecialInputs Gets the names of all special inputs
- CreateInput Creates a new input, adding it as a scene item to the specified scene
- RemoveInput Removes an existing input
- SetInputName Sets the name of an input (rename)
- GetInputDefaultSettings Gets the default settings for an input kind
- GetInputSettings Gets the settings of an input
- SetInputSettings Sets the settings of an input
- GetInputMute Gets the audio mute state of an input
- SetInputMute Sets the audio mute state of an input
- ToggleInputMute Toggles the audio mute state of an input
- GetInputVolume Gets the current volume setting of an input.
- SetInputVolume Sets the volume setting of an input
- GetInputAudioBalance Gets the audio balance of an input
- SetInputAudioBalance Sets the audio balance of an input
- GetInputAudioSyncOffset Gets the audio sync offset of an input
- SetInputAudioSyncOffset Sets the audio sync offset of an input
- GetInputAudioMonitorType Gets the audio monitor type of an input
- SetInputAudioMonitorType Sets the audio monitor type of an input
- GetInputAudioTracks Gets the enable state of all audio tracks of an input
- SetInputAudioTracks Sets the enable state of audio tracks of an input
- GetInputPropertiesListPropertyItems Gets the items of a list property from an input's properties
- PressInputPropertiesButton Presses a button in the properties of an input {.btn-grid .my-5}
Transition related OBS Studio requests{.subtitle}
- GetTransitionKindList Gets an array of all available transition kinds
- GetSceneTransitionList Gets an array of all scene transitions in OBS
- GetCurrentSceneTransition Gets information about the current scene transition
- SetCurrentSceneTransition Sets the current scene transition
- SetCurrentSceneTransitionDuration Sets the duration of the current scene transition, if it is not fixed
- SetCurrentSceneTransitionSettings Sets the settings of the current scene transition
- GetCurrentSceneTransitionCursor Gets the cursor position of the current scene transition
- TriggerStudioModeTransition Triggers the current scene transition. Same functionality as the Transition button in studio mode
- SetTBarPosition Sets the position of the TBar {.btn-grid .my-5}
Filter related OBS Studio requests{.subtitle}
- GetSourceFilterList Gets an array of all of a source's filters
- GetSourceFilterDefaultSettings Gets the default settings for a filter kind
- CreateSourceFilter Creates a new filter, adding it to the specified source
- RemoveSourceFilter Removes a filter from a source
- SetSourceFilterName Sets the name of a source filter (rename)
- GetSourceFilter Gets the info for a specific source filter
- SetSourceFilterIndex Sets the index position of a filter on a source
- SetSourceFilterSettings Sets the settings of a source filter
- SetSourceFilterEnabled Sets the enable state of a source filter {.btn-grid .my-5}
Scene Item related OBS Studio requests{.subtitle}
- GetSceneItemList Gets a list of all scene items in a scene
- GetGroupSceneItemList Basically GetSceneItemList, but for groups
- GetSceneItemId Searches a scene for a source, and returns its id
- CreateSceneItem Creates a new scene item using a source
- RemoveSceneItem Removes a scene item from a scene
- DuplicateSceneItem Duplicates a scene item, copying all transform and crop info
- GetSceneItemTransform Gets the transform and crop info of a scene item
- SetSceneItemTransform Sets the transform and crop info of a scene item
- GetSceneItemEnabled Gets the enable state of a scene item
- SetSceneItemEnabled Sets the enable state of a scene item
- GetSceneItemLocked Gets the lock state of a scene item
- SetSceneItemLocked Sets the lock state of a scene item
- GetSceneItemIndex Gets the index position of a scene item in a scene
- SetSceneItemIndex Sets the index position of a scene item in a scene
- GetSceneItemBlendMode Gets the blend mode of a scene item
- SetSceneItemBlendMode Sets the blend mode of a scene item {.btn-grid .my-5}
Output related OBS Studio requests{.subtitle}
- GetVirtualCamStatus Gets the status of the virtualcam output
- ToggleVirtualCam Toggles the state of the virtualcam output
- StartVirtualCam Starts the virtualcam output
- StopVirtualCam Stops the virtualcam output
- GetReplayBufferStatus Gets the status of the replay buffer output
- ToggleReplayBuffer Toggles the state of the replay buffer output
- StartReplayBuffer Starts the replay buffer output
- StopReplayBuffer Stops the replay buffer output
- SaveReplayBuffer Saves the contents of the replay buffer output
- GetLastReplayBufferReplay Gets the filename of the last replay buffer save file
- GetOutputList Gets the list of available outputs
- GetOutputStatus Gets the status of an output
- ToggleOutput Toggles the status of an output
- StartOutput Starts an output
- StopOutput Stops an output
- GetOutputSettings Gets the settings of an output
- SetOutputSettings Sets the settings of an output {.btn-grid .my-5}
Stream related OBS Studio requests{.subtitle}
- GetStreamStatus Gets the status of the stream output
- ToggleStream Toggles the status of the stream output
- StartStream Starts the stream output
- StopStream Stops the stream output
- SendStreamCaption Sends CEA-608 caption text over the stream output {.btn-grid .my-5}
Record related OBS Studio requests{.subtitle}
- GetRecordStatus Gets the status of the record output
- ToggleRecord Toggles the status of the record output
- StartRecord Starts the record output
- StopRecord Stops the record output
- ToggleRecordPause Toggles pause on the record output
- PauseRecord Pauses the record output
- ResumeRecord Resumes the record output {.btn-grid .my-5}
Media Input related OBS Studio requests{.subtitle}
- GetMediaInputStatus Gets the status of a media input
- SetMediaInputCursor Sets the cursor position of a media input
- OffsetMediaInputCursor Offsets the current cursor position of a media input by the specified value
- TriggerMediaInputAction Triggers an action on a media input {.btn-grid .my-5}
Ui related OBS Studio requests{.subtitle}
- GetStudioModeEnabled Gets whether studio is enabled
- SetStudioModeEnabled Enables or disables studio mode
- OpenInputPropertiesDialog Opens the properties dialog of an input
- OpenInputFiltersDialog Opens the filters dialog of an input
- OpenInputInteractDialog Opens the interact dialog of an input
- GetMonitorList Gets a list of connected monitors and information about them
- OpenVideoMixProjector Opens a projector for a specific output video mix
- OpenSourceProjector Opens a projector for a source {.btn-grid .my-5}
This are examples for requests that existed in privious version of the obs websocket{.subtitle}
- RefreshBrowserSource Refresh a browser source {.btn-grid .my-5}
- Events Go Back
OBS Studio Configure broadcaster: OBS Studio {.btn-grid .my-5}