Live Sight
In plain words: Live camera sessions
The planned bounded session for live camera or RTSP streams, defining arming, privacy masks, frame and clock tracking, gaps and reconnects, so old frames are never treated as current.
- 1A live feed is a bounded LiveSightSession, never an endless finite job.
- 2Frames are identified by stream epoch and sequence; unproved reconnects start a new epoch.
- 3GStreamer is the first transport candidate; camera control and other world effects stay with the app.
Designed LiveSightSession@1 is not delivered.
Words on this page, decoded click one for its card
A finite observation has a last frame. An armed camera route needs an explicit way to end, account for missing frames, and keep old observations from acting as current sight. This designed passage defines that session around Sight's typed visual estimates.
LiveSightSession@1 is not delivered. Vision owns its contract;
State of Work owns delivery. The controlling
CompositionApp admits capture and every world effect; Sight returns observations under that scope.
Arm one bounded session
Arming a camera or RTSP feed requires a bounded session, not an infinite SightJob. The later
LiveSightSession@1 pins camera and controller identity, named purpose, and the retained admitted
authority or policy receipt. It names viewers, zones, privacy masks, the active window,
resolution, and rate, and separately admits raw-frame access, recording, analysis, retention,
and egress scopes.
It also fixes the stream epoch, queue, cardinality, latency and resource budgets, sampling and drop policy, and downstream consumers. The receipt records the basis on which LychD admitted that session; it does not claim legal certification.
Keep frame and clock truth
Identify each frame by stream epoch and sequence. Reported RTP, device, or PTS clocks may be absent, synthesized, or reset, so preserve their provenance and the uncertainty in their mapping to monotonic and wall clocks. Bounded queues prevent an unnoticed backlog: when upstream cannot pause, the admitted sampling or drop policy emits exact gaps and watermarks.
Continue the same epoch after reconnect only when contiguous transport is proved; otherwise close it. A new epoch gets a new local track namespace. Cross-epoch association is a separately attributed inference, never reuse of an old track identity. Checkpoints retain references, cursors, prompts, and gaps, excluding raw frames, framework objects, device handles, and unbounded history.
Contain transport and control
GStreamer
is the first later live transport candidate for RTSP jitter, timestamps, hardware decode, and
bounded appsink delivery.
Pipeline strings and network routes are immutable allowlisted RuneService Config File profiles, never operator or
model-authored code. Only the contained transport worker receives the exact admitted RTSP route;
inference workers remain networkless. Starting capture, PTZ, recording, camera configuration,
robot motion, or another world effect remains with the controlling CompositionApp. Sight only observes.