Recordings

Every track recorded from a session: the encoded frames written straight into an MP4 by the recorder node, with pre-roll from the relay, no decode or re-encode. Timestamps stay on the session clock, so a recording lines up with the JSON records made at the same time. Playback is a plain video element from the file's URL.

import rgb
session = rgb.sessions.get("detect-demo")
rec = session.record("cam0", pre_roll_s=10, seconds=30)       # a participant's video, or a model's: "cam0/depth"
session.detach(rec)                                              # or let `seconds` run out
rgb.sessions.get("detect-demo").recordings()                  # [{id, url, first_ts, last_ts, frames, ...}]