diff --git a/docs/generated/protocol.json b/docs/generated/protocol.json index 2638c03f..2b9b4ee0 100644 --- a/docs/generated/protocol.json +++ b/docs/generated/protocol.json @@ -341,6 +341,14 @@ "initialVersion": "5.0.0", "enumValue": 506 }, + { + "description": "Starting the output failed.", + "enumIdentifier": "OutputStartFailed", + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "enumValue": 507 + }, { "description": "The resource was not found.\n\nNote: Resources are any kind of object in obs-websocket, like inputs, profiles, outputs, etc.", "enumIdentifier": "ResourceNotFound", @@ -1948,6 +1956,484 @@ ], "responseFields": [] }, + { + "description": "Gets a list of all scene items in a scene.\n\nScenes only", + "requestType": "GetSceneItemList", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene to get the items of", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [ + { + "valueName": "sceneItems", + "valueType": "Array", + "valueDescription": "Array of scene items in the scene" + } + ] + }, + { + "description": "Basically GetSceneItemList, but for groups.\n\nUsing groups at all in OBS is discouraged, as they are very broken under the hood.\n\nGroups only", + "requestType": "GetGroupItemList", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the group to get the items of", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [ + { + "valueName": "sceneItems", + "valueType": "Array", + "valueDescription": "Array of scene items in the group" + } + ] + }, + { + "description": "Searches a scene for a source, and returns its id.\n\nScenes and Groups", + "requestType": "GetSceneItemId", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene or group to search in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sourceName", + "valueType": "String", + "valueDescription": "Name of the source to find", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [ + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item" + } + ] + }, + { + "description": "Creates a new scene item using a source.\n\nScenes only", + "requestType": "CreateSceneItem", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene to create the new item in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sourceName", + "valueType": "String", + "valueDescription": "Name of the source to add to the scene", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemEnabled", + "valueType": "Boolean", + "valueDescription": "Enable state to apply to the scene item on creation", + "valueRestrictions": null, + "valueOptional": true, + "valueOptionalBehavior": "True" + } + ], + "responseFields": [ + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item" + } + ] + }, + { + "description": "Removes a scene item from a scene.\n\nScenes only", + "requestType": "RemoveSceneItem", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [] + }, + { + "description": "Duplicates a scene item, copying all transform and crop info.\n\nScenes only", + "requestType": "DuplicateSceneItem", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "destinationSceneName", + "valueType": "String", + "valueDescription": "Name of the scene to create the duplicated item in", + "valueRestrictions": null, + "valueOptional": true, + "valueOptionalBehavior": "`sceneName` is assumed" + } + ], + "responseFields": [ + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the duplicated scene item" + } + ] + }, + { + "description": "Gets the transform and crop info of a scene item.\n\nScenes and Groups", + "requestType": "GetSceneItemTransform", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [ + { + "valueName": "sceneItemTransform", + "valueType": "Object", + "valueDescription": "Object containing scene item transform info" + } + ] + }, + { + "description": "Sets the transform and crop info of a scene item.", + "requestType": "SetSceneItemTransform", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemTransform", + "valueType": "Object", + "valueDescription": "Object containing scene item transform info to update", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [] + }, + { + "description": "Gets the enable state of a scene item.\n\nScenes and Groups", + "requestType": "GetSceneItemEnabled", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [ + { + "valueName": "sceneItemEnabled", + "valueType": "Boolean", + "valueDescription": "Whether the scene item is enabled. `true` for enabled, `false` for disabled" + } + ] + }, + { + "description": "Sets the enable state of a scene item.\n\nScenes and Groups", + "requestType": "SetSceneItemEnabled", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemEnabled", + "valueType": "Boolean", + "valueDescription": "New enable state of the scene item", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [] + }, + { + "description": "Gets the lock state of a scene item.\n\nScenes and Groups", + "requestType": "GetSceneItemLocked", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [ + { + "valueName": "sceneItemLocked", + "valueType": "Boolean", + "valueDescription": "Whether the scene item is locked. `true` for locked, `false` for unlocked" + } + ] + }, + { + "description": "Sets the lock state of a scene item.\n\nScenes and Group", + "requestType": "SetSceneItemLocked", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemLocked", + "valueType": "Boolean", + "valueDescription": "New lock state of the scene item", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [] + }, + { + "description": "Gets the index position of a scene item in a scene.\n\nAn index of 0 is at the bottom of the source list in the UI.\n\nScenes and Groups", + "requestType": "GetSceneItemIndex", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [ + { + "valueName": "sceneItemIndex", + "valueType": "Number", + "valueDescription": "Index position of the scene item" + } + ] + }, + { + "description": "Sets the index position of a scene item in a scene.\n\nScenes and Groups", + "requestType": "SetSceneItemIndex", + "complexity": 3, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "scene items", + "requestFields": [ + { + "valueName": "sceneName", + "valueType": "String", + "valueDescription": "Name of the scene the item is in", + "valueRestrictions": null, + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemId", + "valueType": "Number", + "valueDescription": "Numeric ID of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + }, + { + "valueName": "sceneItemIndex", + "valueType": "Number", + "valueDescription": "New index position of the scene item", + "valueRestrictions": ">= 0", + "valueOptional": false, + "valueOptionalBehavior": null + } + ], + "responseFields": [] + }, { "description": "Gets an array of all scenes in OBS.", "requestType": "GetSceneList", @@ -1958,11 +2444,6 @@ "category": "scenes", "requestFields": [], "responseFields": [ - { - "valueName": "scenes", - "valueType": "Array", - "valueDescription": "Array of scenes in OBS" - }, { "valueName": "currentProgramSceneName", "valueType": "String", @@ -1972,6 +2453,11 @@ "valueName": "currentPreviewSceneName", "valueType": "String", "valueDescription": "Current preview scene. `null` if not in studio mode" + }, + { + "valueName": "scenes", + "valueType": "Array", + "valueDescription": "Array of scenes in OBS" } ] }, @@ -2271,6 +2757,92 @@ "valueDescription": "Base64-encoded screenshot" } ] + }, + { + "description": "Gets the status of the stream output.", + "requestType": "GetStreamStatus", + "complexity": 2, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "stream", + "requestFields": [], + "responseFields": [ + { + "valueName": "outputActive", + "valueType": "Boolean", + "valueDescription": "Whether the output is active" + }, + { + "valueName": "outputReconnecting", + "valueType": "Boolean", + "valueDescription": "Whether the output is currently reconnecting" + }, + { + "valueName": "outputTimecode", + "valueType": "String", + "valueDescription": "Current formatted timecode string for the output" + }, + { + "valueName": "outputDuration", + "valueType": "Number", + "valueDescription": "Current duration in milliseconds for the output" + }, + { + "valueName": "outputBytes", + "valueType": "Number", + "valueDescription": "Number of bytes sent by the output" + }, + { + "valueName": "outputSkippedFrames", + "valueType": "Number", + "valueDescription": "Number of frames skipped by the output's process" + }, + { + "valueName": "outputTotalFrames", + "valueType": "Number", + "valueDescription": "Total number of frames delivered by the output's process" + } + ] + }, + { + "description": "Toggles the status of the stream output.", + "requestType": "ToggleStream", + "complexity": 1, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "stream", + "requestFields": [], + "responseFields": [ + { + "valueName": "outputActive", + "valueType": "Boolean", + "valueDescription": "New state of the stream output" + } + ] + }, + { + "description": "Starts the stream output.", + "requestType": "StartStream", + "complexity": 1, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "stream", + "requestFields": [], + "responseFields": [] + }, + { + "description": "Stops the stream output.", + "requestType": "StopStream", + "complexity": 1, + "rpcVersion": "1", + "deprecated": false, + "initialVersion": "5.0.0", + "category": "stream", + "requestFields": [], + "responseFields": [] } ], "events": [ diff --git a/docs/generated/protocol.md b/docs/generated/protocol.md index f03675f9..24d84903 100644 --- a/docs/generated/protocol.md +++ b/docs/generated/protocol.md @@ -436,6 +436,7 @@ These are enumeration declarations, which are referenced throughout obs-websocke - [RequestStatus::OutputDisabled](#requeststatusoutputdisabled) - [RequestStatus::StudioModeActive](#requeststatusstudiomodeactive) - [RequestStatus::StudioModeNotActive](#requeststatusstudiomodenotactive) + - [RequestStatus::OutputStartFailed](#requeststatusoutputstartfailed) - [RequestStatus::ResourceNotFound](#requeststatusresourcenotfound) - [RequestStatus::ResourceAlreadyExists](#requeststatusresourcealreadyexists) - [RequestStatus::InvalidResourceType](#requeststatusinvalidresourcetype) @@ -949,6 +950,16 @@ Studio mode is not active and should be. --- +### RequestStatus::OutputStartFailed + +Starting the output failed. + +- Identifier Value: `507` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + +--- + ### RequestStatus::ResourceNotFound The resource was not found. @@ -1446,6 +1457,26 @@ The profile list has changed. - [SetInputAudioMonitorType](#setinputaudiomonitortype) - [GetInputPropertiesListPropertyItems](#getinputpropertieslistpropertyitems) - [PressInputPropertiesButton](#pressinputpropertiesbutton) +- [Scene Items](#scene-items) + - [GetSceneItemList](#getsceneitemlist) + - [GetGroupItemList](#getgroupitemlist) + - [GetSceneItemId](#getsceneitemid) + - [CreateSceneItem](#createsceneitem) + - [RemoveSceneItem](#removesceneitem) + - [DuplicateSceneItem](#duplicatesceneitem) + - [GetSceneItemTransform](#getsceneitemtransform) + - [SetSceneItemTransform](#setsceneitemtransform) + - [GetSceneItemEnabled](#getsceneitemenabled) + - [SetSceneItemEnabled](#setsceneitemenabled) + - [GetSceneItemLocked](#getsceneitemlocked) + - [SetSceneItemLocked](#setsceneitemlocked) + - [GetSceneItemIndex](#getsceneitemindex) + - [SetSceneItemIndex](#setsceneitemindex) +- [Stream](#stream) + - [GetStreamStatus](#getstreamstatus) + - [ToggleStream](#togglestream) + - [StartStream](#startstream) + - [StopStream](#stopstream) @@ -2064,9 +2095,9 @@ Gets an array of all scenes in OBS. | Name | Type | Description | | ---- | :---: | ----------- | -| scenes | Array<Object> | Array of scenes in OBS | | currentProgramSceneName | String | Current program scene | | currentPreviewSceneName | String | Current preview scene. `null` if not in studio mode | +| scenes | Array<Object> | Array of scenes in OBS | --- @@ -2625,3 +2656,414 @@ Note: Use this in cases where there is a button in the properties of an input th | propertyName | String | Name of the button property to press | None | N/A | +## Scene Items + +### GetSceneItemList + +Gets a list of all scene items in a scene. + +Scenes only + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene to get the items of | None | N/A | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItems | Array<Object> | Array of scene items in the scene | + +--- + +### GetGroupItemList + +Basically GetSceneItemList, but for groups. + +Using groups at all in OBS is discouraged, as they are very broken under the hood. + +Groups only + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the group to get the items of | None | N/A | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItems | Array<Object> | Array of scene items in the group | + +--- + +### GetSceneItemId + +Searches a scene for a source, and returns its id. + +Scenes and Groups + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene or group to search in | None | N/A | +| sourceName | String | Name of the source to find | None | N/A | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItemId | Number | Numeric ID of the scene item | + +--- + +### CreateSceneItem + +Creates a new scene item using a source. + +Scenes only + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene to create the new item in | None | N/A | +| sourceName | String | Name of the source to add to the scene | None | N/A | +| ?sceneItemEnabled | Boolean | Enable state to apply to the scene item on creation | None | True | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItemId | Number | Numeric ID of the scene item | + +--- + +### RemoveSceneItem + +Removes a scene item from a scene. + +Scenes only + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | + +--- + +### DuplicateSceneItem + +Duplicates a scene item, copying all transform and crop info. + +Scenes only + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | +| ?destinationSceneName | String | Name of the scene to create the duplicated item in | None | `sceneName` is assumed | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItemId | Number | Numeric ID of the duplicated scene item | + +--- + +### GetSceneItemTransform + +Gets the transform and crop info of a scene item. + +Scenes and Groups + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItemTransform | Object | Object containing scene item transform info | + +--- + +### SetSceneItemTransform + +Sets the transform and crop info of a scene item. + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | +| sceneItemTransform | Object | Object containing scene item transform info to update | None | N/A | + +--- + +### GetSceneItemEnabled + +Gets the enable state of a scene item. + +Scenes and Groups + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItemEnabled | Boolean | Whether the scene item is enabled. `true` for enabled, `false` for disabled | + +--- + +### SetSceneItemEnabled + +Sets the enable state of a scene item. + +Scenes and Groups + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | +| sceneItemEnabled | Boolean | New enable state of the scene item | None | N/A | + +--- + +### GetSceneItemLocked + +Gets the lock state of a scene item. + +Scenes and Groups + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItemLocked | Boolean | Whether the scene item is locked. `true` for locked, `false` for unlocked | + +--- + +### SetSceneItemLocked + +Sets the lock state of a scene item. + +Scenes and Group + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | +| sceneItemLocked | Boolean | New lock state of the scene item | None | N/A | + +--- + +### GetSceneItemIndex + +Gets the index position of a scene item in a scene. + +An index of 0 is at the bottom of the source list in the UI. + +Scenes and Groups + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| sceneItemIndex | Number | Index position of the scene item | + +--- + +### SetSceneItemIndex + +Sets the index position of a scene item in a scene. + +Scenes and Groups + +- Complexity Rating: `3/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Request Fields:** + +| Name | Type | Description | Value Restrictions | ?Default Behavior | +| ---- | :---: | ----------- | :----------------: | ----------------- | +| sceneName | String | Name of the scene the item is in | None | N/A | +| sceneItemId | Number | Numeric ID of the scene item | >= 0 | N/A | +| sceneItemIndex | Number | New index position of the scene item | >= 0 | N/A | + + +## Stream + +### GetStreamStatus + +Gets the status of the stream output. + +- Complexity Rating: `2/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| outputActive | Boolean | Whether the output is active | +| outputReconnecting | Boolean | Whether the output is currently reconnecting | +| outputTimecode | String | Current formatted timecode string for the output | +| outputDuration | Number | Current duration in milliseconds for the output | +| outputBytes | Number | Number of bytes sent by the output | +| outputSkippedFrames | Number | Number of frames skipped by the output's process | +| outputTotalFrames | Number | Total number of frames delivered by the output's process | + +--- + +### ToggleStream + +Toggles the status of the stream output. + +- Complexity Rating: `1/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + + +**Response Fields:** + +| Name | Type | Description | +| ---- | :---: | ----------- | +| outputActive | Boolean | New state of the stream output | + +--- + +### StartStream + +Starts the stream output. + +- Complexity Rating: `1/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + +--- + +### StopStream + +Stops the stream output. + +- Complexity Rating: `1/5` +- Latest Supported RPC Version: `1` +- Added in v5.0.0 + +