Control

Choose a Transport

Pick HTTP or OSC for delivery—then use one shared command catalog.

DearScenario Player has one command catalog (play, load, seek, …) and two transports that deliver those commands. The transport changes delivery, confirmation, and topology—not what the player can do.

Commands are the catalog. Protocols are filters.
Browse what you can do in the Command Reference. Use this page only to pick how your controller talks to the player.

Transport filter

What is controlling the player?

Commands are the catalog. Protocols are filters. Pick the wire format your controller already speaks, then open the Command Reference for every action.

ControllerHTTP · OSCSame commandsPlayer

Decide from your controller

If you are controlling from…ChooseWhy
A web app, shell script, Python, Node.js, or automationHTTPRequest/response, clear errors, easiest to debug.
QLab, TouchDesigner, Max/MSP, or similarOSCNative cue / realtime patching; playback profile only.

Confirmation vs observation

NeedUse
Know the cue was accepted or rejectedHTTP
Non-critical or continuous valuesOSC
Watch playback after any transportStatus

OSC has no success acknowledgement. HTTP confirms validation and queue admission. If the show cannot continue until media is ready or playing, also observe that state through GET /api/status.

One envelope, two spellings

HTTP uses JSON:

{ "cmd": "play", "params": {} }
TransportHow that command is carried
HTTPPOST /api/command with the JSON body
OSCAddress form such as /player/play (playback subset only)

Same play cue:

HTTP
curl -X POST http://<player-ip>:18290/api/command \
  -H "Content-Type: application/json" \
  -d '{"cmd":"play","params":{}}'
OSC
/player/play

For every other command’s parameters and transport availability, use the Command Reference—do not hunt per-command HTTP paths. There are none.

Ports

EndpointRole
18290HTTP, Web Console, OSC (when enabled, on the UDP socket)
18292Remote-debug preview WebSocket (not a command protocol)

Next step

  1. Open the Command Reference and pick a command.
  2. Switch the transport tab to match your controller.
  3. Read only the matching Transports guide for connection details.
  4. Wire Observe if you need live playback state.

For copyable QLab, Crestron, Companion, and Node-RED starters, see Minimal integration examples. These are documentation examples; real-platform validation remains part of release acceptance.

Not in the current public API

The following are future directions, not current transport commitments: multi-machine frame-locked sync, playlist/scheduler/timeline control, OAuth or Internet-facing bearer auth, and cross-restart global sequence counters. Build against the published command catalog (web-console/api_spec.json) and HTTP route list (web-console/openapi.json) only.