Repository navigation
Reference Script Functions Meldstudio
Also on the Cuebot Docs site.
Functions for C# (Cb.Call) and Python (a cb method each, or cb.call). See Script functions for how to use them.
Starts connecting to Meld Studio. It does not wait: Cuebot keeps trying in the background until it works.
Gives back: true once connecting has started (not when it is connected).
C#
var answer = await Cb.Call("meldstudio.connect");Python
answer = cb.meldstudio_connect()Disconnects Cuebot from Meld Studio.
Gives back: true when done.
C#
var answer = await Cb.Call("meldstudio.disconnect");Python
answer = cb.meldstudio_disconnect()Lists your Meld Studio scenes in order.
Gives back: A list of scenes. Each has id, name, current (true when showing) and staged (true when lined up next).
C#
var answer = await Cb.Call("meldstudio.getScenes");Python
answer = cb.meldstudio_get_scenes()Gives you everything Meld Studio reports about your setup: scenes, layers, effects and audio tracks. For advanced scripts.
Gives back: An object with one entry per item, named by its id. Each entry holds the item's details as Meld Studio sends them.
C#
var answer = await Cb.Call("meldstudio.getSession");Python
answer = cb.meldstudio_get_session()Tells you whether Meld Studio is connected, recording or live, and which scene is showing.
Gives back: isConnected, isRecording, isStreaming (true/false), currentScene (its name, or null) and apiVersion.
C#
var answer = await Cb.Call("meldstudio.getStatus");Python
answer = cb.meldstudio_get_status()Hides a layer in Meld Studio. Fails with an error when no layer matches.
| Value | In Python | What to put in |
|---|---|---|
layer |
layer |
The layer's name, like "Webcam", or its id. |
scene |
scene |
Optional. The scene the layer is in. Leave it out to search the current scene first, then all scenes. |
Gives back: false (the layer is hidden now).
C#
var answer = await Cb.Call("meldstudio.hideLayer", new { layer = "Webcam" });Python
answer = cb.meldstudio_hide_layer(layer="Webcam")Calls any of Meld Studio's own functions by name. For advanced users. Fails with an error when this Meld Studio version does not have it.
| Value | In Python | What to put in |
|---|---|---|
method |
method |
The Meld function name, like "setStagedScene". Needed. |
args |
args |
Optional. A list of values to pass to it, like [""]. |
Gives back: Meld Studio's answer, or null when it gives none.
C#
var answer = await Cb.Call("meldstudio.invoke", new { method = "showStagedScene" });Python
answer = cb.meldstudio_invoke(method="showStagedScene")Checks whether Cuebot is connected to Meld Studio right now.
Gives back: true while connected, otherwise false.
C#
var answer = await Cb.Call("meldstudio.isConnected");Python
answer = cb.meldstudio_is_connected()Starts or stops recording in Meld Studio. Fails with an error when Meld Studio is not connected.
| Value | In Python | What to put in |
|---|---|---|
state |
state |
Optional. "Start", "Stop" or "Toggle" (switch). Default "Toggle". |
Gives back: true when recording now, false when not.
C#
var answer = await Cb.Call("meldstudio.recording", new { state = "Start" });Python
answer = cb.meldstudio_recording(state="Start")Takes a screenshot in Meld Studio.
| Value | In Python | What to put in |
|---|---|---|
vertical |
vertical |
Optional. true takes it of the vertical (phone) canvas. Default false. |
Gives back: true when done.
C#
var answer = await Cb.Call("meldstudio.screenshot");Python
answer = cb.meldstudio_screenshot()Runs one of Meld Studio's own commands, like saving a clip or showing the replay.
| Value | In Python | What to put in |
|---|---|---|
command |
command |
The Meld command name, like "meld.recordClip" or "meld.replay.show". |
Gives back: true when done.
C#
var answer = await Cb.Call("meldstudio.sendCommand", new { command = "meld.recordClip" });Python
answer = cb.meldstudio_send_command(command="meld.recordClip")Turns an effect on a Meld Studio layer on or off, like a blur or colour filter. Fails with an error when the layer or effect is not found.
| Value | In Python | What to put in |
|---|---|---|
layer |
layer |
The layer's name, like "Webcam", or its id. |
effect |
effect |
The effect's name, like "Blur", or its id. |
state |
state |
Optional. "Enabled", "Disabled" or "Toggle" (switch). Default "Toggle". |
scene |
scene |
Optional. The scene the layer is in. Leave it out to search the current scene first. |
Gives back: true when the effect is on now, false when off.
C#
var answer = await Cb.Call("meldstudio.setEffectEnabled", new { layer = "Webcam", effect = "Blur", state = "Enabled" });Python
answer = cb.meldstudio_set_effect_enabled(layer="Webcam", effect="Blur", state="Enabled")Shows, hides or flips a layer in Meld Studio. Fails with an error when no layer matches.
| Value | In Python | What to put in |
|---|---|---|
layer |
layer |
The layer's name, like "Webcam", or its id. |
state |
state |
Optional. "Visible", "Hidden" or "Toggle" (switch). Default "Toggle". |
scene |
scene |
Optional. The scene the layer is in. Leave it out to search the current scene first, then all scenes. |
Gives back: true when the layer is visible now, false when hidden.
C#
var answer = await Cb.Call("meldstudio.setLayerVisibility", new { layer = "Webcam", state = "Hidden" });Python
answer = cb.meldstudio_set_layer_visibility(layer="Webcam", state="Hidden")Changes the volume (gain) of an audio track in Meld Studio. Fails with an error when no track matches.
| Value | In Python | What to put in |
|---|---|---|
track |
track |
The audio track's name, like "Music", or its id. |
gain |
gain |
The volume as a number from 0 (silent) to 1 (full), like 0.5. It must be a number, not text. |
Gives back: true when done.
C#
var answer = await Cb.Call("meldstudio.setTrackGain", new { track = "Music", gain = 0.5 });Python
answer = cb.meldstudio_set_track_gain(track="Music", gain=0.5)Mutes or unmutes an audio track in Meld Studio. Fails with an error when no track matches.
| Value | In Python | What to put in |
|---|---|---|
track |
track |
The audio track's name, like "Microphone", or its id. |
state |
state |
Optional. "Muted", "NotMuted" or "Toggle" (switch). Default "Toggle". |
Gives back: true when the track is muted now, false when not.
C#
var answer = await Cb.Call("meldstudio.setTrackMuted", new { track = "Microphone", state = "Muted" });Python
answer = cb.meldstudio_set_track_muted(track="Microphone", state="Muted")Makes a layer in Meld Studio visible. Fails with an error when no layer matches.
| Value | In Python | What to put in |
|---|---|---|
layer |
layer |
The layer's name, like "Webcam", or its id. |
scene |
scene |
Optional. The scene the layer is in. Leave it out to search the current scene first, then all scenes. |
Gives back: true (the layer is visible now).
C#
var answer = await Cb.Call("meldstudio.showLayer", new { layer = "Webcam" });Python
answer = cb.meldstudio_show_layer(layer="Webcam")Switches Meld Studio to another scene. Fails with an error when no scene matches or Meld Studio is not connected.
| Value | In Python | What to put in |
|---|---|---|
scene |
scene |
The scene's name as Meld Studio shows it, like "Gameplay", or its id. |
Gives back: The name of the scene that is now showing.
C#
var answer = await Cb.Call("meldstudio.showScene", new { scene = "Gameplay" });Python
answer = cb.meldstudio_show_scene(scene="Gameplay")Switches Meld Studio to another scene. Works just like meldstudio.showScene.
| Value | In Python | What to put in |
|---|---|---|
sceneName |
scene_name |
The scene's name as Meld Studio shows it, like "Gameplay". An id works too. |
Gives back: The name of the scene that is now showing.
C#
var answer = await Cb.Call("meldstudio.showSceneByName", new { sceneName = "Gameplay" });Python
answer = cb.meldstudio_show_scene_by_name(scene_name="Gameplay")Goes live or stops streaming in Meld Studio. Fails with an error when Meld Studio is not connected.
| Value | In Python | What to put in |
|---|---|---|
state |
state |
Optional. "Start", "Stop" or "Toggle" (switch). Default "Toggle". |
Gives back: true when streaming now, false when not.
C#
var answer = await Cb.Call("meldstudio.streaming", new { state = "Stop" });Python
answer = cb.meldstudio_streaming(state="Stop")Cuebot by Tech Daddy Digital · MIT license · Privacy
Cuebot Docs (the same pages, nicer to read)
- Home
- Start here
-
Guides
- Chat commands
- Overlays and alerts
- Writing your own overlay widgets
- Text-to-speech
- Music and now playing
- Points, store and giveaways
- Subathons and goals
- Stream apps and devices
- VTuber apps
- Stream Deck
- The phone app
- Donations and integrations
- Discord bot
- The setup assistant and AI tools
- The assistant on your own computer
- Moving from Streamer.bot
- Cuebot's servers
- Writing code (C# and Python)
- Python in detail
- Using your own code editor
- Controlling Cuebot from other programs
- Backups and your data
- Linux
- Command-line options
- Troubleshooting
- What's experimental
- Reference
