After a shoot, the useful details end up scattered: camera cards, sound rolls, notes, reports, bins, exports. By the time the grade starts, someone is often doing the same search again - the take, the line, the setup, the look.
This is our attempt to keep that work attached to the media. The first version takes camera originals and sound files, makes proxies, syncs audio, transcribes dialogue and indexes the result. Slate OCR, focus notes, visual tags and report reconciliation come after the core run is dependable.
A shoot moves through a chain of repeatable stages. Re-running a job only fills in the work that is missing.
Ingest, probe, proxy, sync and transcribe run end to end today, with face detection available per job. Stand-in backends keep local development and CI simple; production points the same code at the real render and transcription services.
Slate, visual tags, focus and reconcile tables are in the schema, but are not driven by a flow yet. They are the next layer, not part of the default run.
The point is not to make editors live in another tool. The metadata should come back into the edit and the grade as bin columns, markers and sidecars.
Clips are keyed by source file, so the hand-off stays close to the way assistants already relink and rebuild bins.
A small orchestration service talks over HTTP to the heavier render and transcription services.
Transcription and proxy rendering run outside the core app. Rendering is routed per clip: FFmpeg for common codecs, Resolve for RAW formats FFmpeg cannot decode cleanly. The core asks for a connector by type; config picks the implementation.
The order is deliberately boring: make the core run reliable, wire in the real backends, then add more metadata.
This is still in development, so the order can move. The dependency chain is what matters.
Built at The Studio in Dunkeld by a director of photography who also works as a platform engineer. The tool comes from doing the dailies work, not from trying to invent a new category.
Licensed AGPL-3.0-or-later. The FFmpeg render path lands before the source opens, so a self-hoster can cover everyday codecs without a Resolve licence. Resolve stays optional for RAW. Source opens once it is past v0.1.