/// <summary> /// List every available scene /// </summary> /// <returns>A <see cref="List{OBSScene}" /> of <see cref="OBSScene"/> objects describing each scene</returns> public async Task <List <OBSScene> > ListScenes() { JObject response = await SendRequest("GetSceneList"); JArray items = (JArray)response["scenes"]; var scenes = new List <OBSScene>(); foreach (JObject sceneData in items) { OBSScene scene = new OBSScene(sceneData); scenes.Add(scene); } return(scenes); }
/// <summary> /// Set the relative crop coordinates of the specified source item /// </summary> /// <param name="sceneItem">Scene item object</param> /// <param name="cropInfo">Crop coordinates</param> /// <param name="scene">Parent scene of scene item</param> public void SetSceneItemCrop(SceneItem sceneItem, SceneItemCropInfo cropInfo, OBSScene scene) { SetSceneItemCrop(sceneItem.SourceName, cropInfo, scene.Name); }
/// <summary> /// Change the currently active preview scene to the one specified. /// Triggers an error if Studio Mode is disabled. /// </summary> /// <param name="previewScene">Preview scene object</param> public void SetPreviewScene(OBSScene previewScene) { SetPreviewScene(previewScene.Name); }