Time-line docs
AutomationsNode-RED nodes

Input nodesRequires Pro

Reference the current-track and Key Point nodes provided by Time-line Live.

Full reference for the Live in nodes, generated from the in-editor help.

Current song

Emits the backend currentTrack snapshot for the “now playing” deck, with a continuous Stream output.

Outputs

  • Change (edge-triggered): emits when the song context changes (deck/track/title/artist) or its basic state changes (active/isPlaying/isOnAir/bpm/pitch/durationMs)
  • Stream (continuous): forwards the backend currentTrack snapshot at ≈30fps

Output: change — msg.topic: tl/current-track. The trimmed msg.payload contains these fields when they are available:

Prop

Type

Output: stream — msg.topic: tl/current-track/stream. Payload is the full currentTrack snapshot: the fields above plus beatInMeasure, beat, currentPositionMs, and the Key Point timeline fields (currentKeypoint/nextKeypoint/currentKeypointProgress, Group fields like currentKeypointGroup/currentKeypointGroupProgress, Family fields like currentKeypointFamily/currentKeypointFamilyProgress).

BPM updates are included: the stream reflects live BPM changes, and the change output also fires when bpm changes.

Node status: idle, song title, or ws disconnected.

Current Key Point

Emits for every Key Point (including Unknown), the current section of the now-playing track, whatever it is.

Outputs

  • Event (edge-triggered): emits on keypoint changes (enter/exit)
  • Stream (continuous): emits while a track is active (≈30fps)

Output: event — msg.topic: tl/keypoint/<keypointId>/event. msg.payload.keypointId is the actual current Key Point (e.g. drive, build, drop, unknown). Payload fields are the same as the Key Point nodes below, plus reason (keypoint_changed, ws_disconnected, flow_disabled, play_started).

Prop

Type

When the Key Point changes, this node emits an exit for the previous Key Point (reason: "keypoint_changed") followed by an enter for the new one.

Output: stream — msg.topic: tl/keypoint/<keypointId>; the full snapshot, like the Key Point nodes below.

Key Point nodes

Drive, Drive Break, Build, Rhythmic Build, Pre-Drop, Drop, Fake Drop, Drop Break, Breakdown, Outro and Unknown all behave identically — only the keypointId and topics differ. Drive is used as the example; substitute your node's id.

Emits when the now-playing track is in the Drive Key Point. keypointId: drive.

Outputs

  • Event (edge-triggered): emits once on Key Point enter/exit
  • Stream (continuous): emits while active or within the target Pre/Post Window (≈30fps)

Output: event

msg.topic: tl/keypoint/drive/event

msg.payload uses the event payload fields above. Example:

{
  "event": "enter",
  "keypointId": "drive",
  "deckId": 1,
  "trackId": 12345,
  "currentPositionMs": 42123,
  "durationMs": 240000,
  "currentKeypoint": "drive",
  "currentKeypointProgress": 0.42,
  "nextKeypoint": "drive-break",
  "currentKeypointFamily": "drive",
  "previousKeypointFamily": null,
  "nextKeypointFamily": null,
  "currentKeypointFamilyProgress": 0.10,
  "currentKeypointFamilyStep": 1,
  "currentKeypointFamilyTotalSteps": 1,
  "currentKeypointGroup": "drive",
  "previousKeypointGroup": null,
  "nextKeypointGroup": null,
  "currentKeypointGroupProgress": 0.10,
  "currentKeypointGroupStep": 1,
  "currentKeypointGroupTotalSteps": 1
}

Edge cases:

  • On websocket disconnect while active, an exit event is emitted with reason: "ws_disconnected".
  • If the Node-RED tab is disabled while active, an exit event is emitted with reason: "flow_disabled".
  • If playback starts while already inside the Key Point (e.g. you pressed Play mid-section), the node emits a fresh enter with reason: "play_started".

Output: stream

msg.topic: tl/keypoint/drive

msg.payload contains the backend currentTrack snapshot fields plus these target Stream fields for Key Point, Group and Family windows:

Prop

Type

The event output remains exact enter/exit only; Pre/Post Windows only affect the Stream output.

Notes

  • Connects to the backend websocket at ws://127.0.0.1:<TIME_LINE_WS_PORT> (defaults to 17880).
  • Node status: idle, active, or ws disconnected.

How is this guide?

Last updated on

On this page