@@ -680,6 +680,12 @@ export interface OBSRequestTypes {
680680 * Object of settings to apply
681681 */
682682inputSettings : JsonObject ;
683+ /**
684+ * True == apply the settings on top of existing ones, False == reset the input to its defaults, then apply settings.
685+ *
686+ * @defaultValue true
687+ */
688+ overlay ?: boolean ;
683689} ;
684690GetInputMute : {
685691/**
@@ -783,6 +789,188 @@ export interface OBSRequestTypes {
783789 */
784790propertyName : string ;
785791} ;
792+ GetSceneItemList : {
793+ /**
794+ * Name of the scene to get the items of
795+ */
796+ sceneName : string ;
797+ } ;
798+ GetGroupItemList : {
799+ /**
800+ * Name of the group to get the items of
801+ */
802+ sceneName : string ;
803+ } ;
804+ GetSceneItemId : {
805+ /**
806+ * Name of the scene or group to search in
807+ */
808+ sceneName : string ;
809+ /**
810+ * Name of the source to find
811+ */
812+ sourceName : string ;
813+ } ;
814+ CreateSceneItem : {
815+ /**
816+ * Name of the scene to create the new item in
817+ */
818+ sceneName : string ;
819+ /**
820+ * Name of the source to add to the scene
821+ */
822+ sourceName : string ;
823+ /**
824+ * Enable state to apply to the scene item on creation
825+ *
826+ * @defaultValue True
827+ */
828+ sceneItemEnabled ?: boolean ;
829+ } ;
830+ RemoveSceneItem : {
831+ /**
832+ * Name of the scene the item is in
833+ */
834+ sceneName : string ;
835+ /**
836+ * Numeric ID of the scene item
837+ *
838+ * @restrictions >= 0
839+ */
840+ sceneItemId : number ;
841+ } ;
842+ DuplicateSceneItem : {
843+ /**
844+ * Name of the scene the item is in
845+ */
846+ sceneName : string ;
847+ /**
848+ * Numeric ID of the scene item
849+ *
850+ * @restrictions >= 0
851+ */
852+ sceneItemId : number ;
853+ /**
854+ * Name of the scene to create the duplicated item in
855+ *
856+ * @defaultValue `sceneName` is assumed
857+ */
858+ destinationSceneName ?: string ;
859+ } ;
860+ GetSceneItemTransform : {
861+ /**
862+ * Name of the scene the item is in
863+ */
864+ sceneName : string ;
865+ /**
866+ * Numeric ID of the scene item
867+ *
868+ * @restrictions >= 0
869+ */
870+ sceneItemId : number ;
871+ } ;
872+ SetSceneItemTransform : {
873+ /**
874+ * Name of the scene the item is in
875+ */
876+ sceneName : string ;
877+ /**
878+ * Numeric ID of the scene item
879+ *
880+ * @restrictions >= 0
881+ */
882+ sceneItemId : number ;
883+ /**
884+ * Object containing scene item transform info to update
885+ */
886+ sceneItemTransform : JsonObject ;
887+ } ;
888+ GetSceneItemEnabled : {
889+ /**
890+ * Name of the scene the item is in
891+ */
892+ sceneName : string ;
893+ /**
894+ * Numeric ID of the scene item
895+ *
896+ * @restrictions >= 0
897+ */
898+ sceneItemId : number ;
899+ } ;
900+ SetSceneItemEnabled : {
901+ /**
902+ * Name of the scene the item is in
903+ */
904+ sceneName : string ;
905+ /**
906+ * Numeric ID of the scene item
907+ *
908+ * @restrictions >= 0
909+ */
910+ sceneItemId : number ;
911+ /**
912+ * New enable state of the scene item
913+ */
914+ sceneItemEnabled : boolean ;
915+ } ;
916+ GetSceneItemLocked : {
917+ /**
918+ * Name of the scene the item is in
919+ */
920+ sceneName : string ;
921+ /**
922+ * Numeric ID of the scene item
923+ *
924+ * @restrictions >= 0
925+ */
926+ sceneItemId : number ;
927+ } ;
928+ SetSceneItemLocked : {
929+ /**
930+ * Name of the scene the item is in
931+ */
932+ sceneName : string ;
933+ /**
934+ * Numeric ID of the scene item
935+ *
936+ * @restrictions >= 0
937+ */
938+ sceneItemId : number ;
939+ /**
940+ * New lock state of the scene item
941+ */
942+ sceneItemLocked : boolean ;
943+ } ;
944+ GetSceneItemIndex : {
945+ /**
946+ * Name of the scene the item is in
947+ */
948+ sceneName : string ;
949+ /**
950+ * Numeric ID of the scene item
951+ *
952+ * @restrictions >= 0
953+ */
954+ sceneItemId : number ;
955+ } ;
956+ SetSceneItemIndex : {
957+ /**
958+ * Name of the scene the item is in
959+ */
960+ sceneName : string ;
961+ /**
962+ * Numeric ID of the scene item
963+ *
964+ * @restrictions >= 0
965+ */
966+ sceneItemId : number ;
967+ /**
968+ * New index position of the scene item
969+ *
970+ * @restrictions >= 0
971+ */
972+ sceneItemIndex : number ;
973+ } ;
786974GetSceneList : never ;
787975GetCurrentProgramScene : never ;
788976SetCurrentProgramScene : {
@@ -892,6 +1080,10 @@ export interface OBSRequestTypes {
8921080 */
8931081imageCompressionQuality ?: number ;
8941082} ;
1083+ GetStreamStatus : never ;
1084+ ToggleStream : never ;
1085+ StartStream : never ;
1086+ StopStream : never ;
8951087}
8961088
8971089export interface OBSResponseTypes {
@@ -1149,11 +1341,66 @@ export interface OBSResponseTypes {
11491341propertyItems : JsonArray ;
11501342} ;
11511343PressInputPropertiesButton : undefined ;
1152- GetSceneList : {
1344+ GetSceneItemList : {
11531345/**
1154- * Array of scenes in OBS
1346+ * Array of scene items in the scene
11551347 */
1156- scenes : JsonArray ;
1348+ sceneItems : JsonArray ;
1349+ } ;
1350+ GetGroupItemList : {
1351+ /**
1352+ * Array of scene items in the group
1353+ */
1354+ sceneItems : JsonArray ;
1355+ } ;
1356+ GetSceneItemId : {
1357+ /**
1358+ * Numeric ID of the scene item
1359+ */
1360+ sceneItemId : number ;
1361+ } ;
1362+ CreateSceneItem : {
1363+ /**
1364+ * Numeric ID of the scene item
1365+ */
1366+ sceneItemId : number ;
1367+ } ;
1368+ RemoveSceneItem : undefined ;
1369+ DuplicateSceneItem : {
1370+ /**
1371+ * Numeric ID of the duplicated scene item
1372+ */
1373+ sceneItemId : number ;
1374+ } ;
1375+ GetSceneItemTransform : {
1376+ /**
1377+ * Object containing scene item transform info
1378+ */
1379+ sceneItemTransform : JsonObject ;
1380+ } ;
1381+ SetSceneItemTransform : undefined ;
1382+ GetSceneItemEnabled : {
1383+ /**
1384+ * Whether the scene item is enabled. `true` for enabled, `false` for disabled
1385+ */
1386+ sceneItemEnabled : boolean ;
1387+ } ;
1388+ SetSceneItemEnabled : undefined ;
1389+ GetSceneItemLocked : {
1390+ /**
1391+ * Whether the scene item is locked. `true` for locked, `false` for unlocked
1392+ */
1393+ sceneItemLocked : boolean ;
1394+ } ;
1395+ SetSceneItemLocked : undefined ;
1396+ GetSceneItemIndex : {
1397+ /**
1398+ * Index position of the scene item
1399+ */
1400+ sceneItemIndex : number ;
1401+ } ;
1402+ SetSceneItemIndex : undefined ;
1403+ GetSceneList : {
11571404/**
11581405 * Current program scene
11591406 */
@@ -1162,6 +1409,10 @@ export interface OBSResponseTypes {
11621409 * Current preview scene. `null` if not in studio mode
11631410 */
11641411currentPreviewSceneName : string ;
1412+ /**
1413+ * Array of scenes in OBS
1414+ */
1415+ scenes : JsonArray ;
11651416} ;
11661417GetCurrentProgramScene : {
11671418/**
@@ -1202,4 +1453,42 @@ export interface OBSResponseTypes {
12021453 */
12031454imageData : string ;
12041455} ;
1456+ GetStreamStatus : {
1457+ /**
1458+ * Whether the output is active
1459+ */
1460+ outputActive : boolean ;
1461+ /**
1462+ * Whether the output is currently reconnecting
1463+ */
1464+ outputReconnecting : boolean ;
1465+ /**
1466+ * Current formatted timecode string for the output
1467+ */
1468+ outputTimecode : string ;
1469+ /**
1470+ * Current duration in milliseconds for the output
1471+ */
1472+ outputDuration : number ;
1473+ /**
1474+ * Number of bytes sent by the output
1475+ */
1476+ outputBytes : number ;
1477+ /**
1478+ * Number of frames skipped by the output's process
1479+ */
1480+ outputSkippedFrames : number ;
1481+ /**
1482+ * Total number of frames delivered by the output's process
1483+ */
1484+ outputTotalFrames : number ;
1485+ } ;
1486+ ToggleStream : {
1487+ /**
1488+ * New state of the stream output
1489+ */
1490+ outputActive : boolean ;
1491+ } ;
1492+ StartStream : undefined ;
1493+ StopStream : undefined ;
12051494}
0 commit comments