LIVE · AUDIT-CHAINED · EU-RESIDENT
SYSTEM · 99.99% UPTIME
v 1.0 ↗ MADE IN EU
Capture

Composite + per-participant recording

Every session can record the full composite (operator + field side-by-side, with annotations burned in) and per-participant audio + video files. Stored in your S3 bucket, lifecycle-managed to Glacier at 90 days, retrievable for 7 years to clear eIDAS retention.

Two recording shapes, one egress pipeline

Composite

One MP4, what the operator saw

Single side-by-side composition rendered by LiveKit egress. Operator tile on the left, field tile on the right; annotation strokes drawn during the session are burned in. Good for case files where "what did the agent see" is the question.

Per-participant

N tracks, isolated

One MP4 per participant, audio + video separable, no compositing. Annotation overlays burn in per tile so a single participant's stream still carries the marks. Good for forensic re-analysis: zoom on the field-side raw frames without the operator's tile in the way.

Multi-party works the same way

Up to 7 participants per session as of 2026-05-19 — late joiners get their own egress request that joins the recording without re-starting the composite. Grids of 4-on-1 inspections (claims adjuster + field + two appraisers + supervisor) record cleanly: composite renders an N-up grid, per-participant track per person, all anchored together in the audit chain.

Post-processing

Egress output (raw MP4) goes through a CPU encode to libx264 medium / crf20 — smaller files, predictable quality, no GPU dependency. Annotation overlays are rasterised per-frame so they survive the re-encode. The post-processed file is what lands in S3; the raw egress file is dropped after.

StageOutput
LiveKit egressRaw MP4 + annotation JSON. Lands in scratch S3 prefix.
Annotation burn-inPer-tile strokes rasterised onto frames matching the recording timeline.
Re-encodelibx264 medium / crf20. Smaller, audit-friendly, no GPU.
Anchor + persistSHA-256 lands in the audit chain; final MP4 moves to the org's evidence prefix.

Storage, retention, cost

S3 lifecycle rules transition objects to Glacier Instant Retrieval at 90 days, then Deep Archive at 1 year. The retention window itself stays at 7 years (or whatever your org configured) — eIDAS-aligned, no platform default that surprises legal. Glacier retrieval is sub-12-hour for the rare case an auditor needs the full bytes; the SHA-256 in the audit chain doesn't need the bytes to verify the receipt is unforged.

Cost is the obvious thing: a 30-minute composite at 720p ≈ 250 MB; per-participant doubles or quadruples that. Glacier-at-90d is non-negotiable in our hosting cost model — it's the difference between hosting feeling like a SaaS line item and hosting feeling like a tax.

Recording is opt-in per session

The operator decides at session start whether to record — no default-on surprise. The field user sees a banner when recording is active. Both consent moments land in the audit chain.