Analyse once: sidecar files beside the sources, shooting time from the container

The storage rule that makes a long film possible a month later: each clip's shots, frame scores, beats and speech live in a file beside it, and shooting time comes from the container metadata.

Claude CodeLife2Filmffmpegintermediate15 minunverified
ANALYSIS STORAGE, the checklist

1. For every clip.mp4, write clip.analysis.json beside it: shot boundaries, per-frame or per-segment quality scores, beat positions, speech with word timings, the detector versions used.
2. Shooting time comes from the container: `ffprobe -v error -show_entries format_tags=creation_time -of csv=p=0 clip.mp4`. Never from the file name, never from the file's mtime (copying resets it). Camera clocks drift; write the offset per camera in a trip-level file and apply it, do not edit the sources.
3. Resolve symlinks before writing sidecars: an analysis written into a symlinked subset folder ends up beside the links, not the originals.
4. Never leave a rendered film inside the source folder; the next run treats it as one more clip.
5. A clip is re-analysed only when its hash changes or the detector version does; otherwise read the sidecar.
6. Archive sources and sidecars together, after the films are out, never mid-edit.
7. Keep one short real camera file per device in a verification set, and check the delivered file itself, not only synthetic sources.

In Claude Code, paste the prompt as a message, or run /video-edit which does this end to end.

Steps

  1. Run the analysis over the whole folder once: a shot detector, a frame scorer, a beat tracker and whisper-family STT with word timings. Life2Film Studio does the frame scoring, scene detection and segment ranking on the device; `npm i life2film-engine` gives the beats, shots and frame scores in WASM.
  2. Write every result as a sidecar next to its clip, then build the day's text file and the cut from the sidecars, not from the video.
  3. A month later, the trip film reads the sidecars of 20 days in seconds instead of re-analysing 20 days of footage.

Tips

  • Two phones on one trip can disagree by minutes; the offset file is what keeps same-place, same-time cutaways honest.
  • The sidecar is also the provenance: which model found the shots, which version scored the frames, when.
works withClaude Code: Runs as a skill or a prompt in the terminal; can read your files and write the result. · Life2Film: The montage app: analysis, segment scoring and cuts on your device. · ffmpeg: A terminal command you run yourself.
skillnpx skills add fortunto2/solo-factory/video-edit · source
costFree. No API, no key.
statusUnverified: written from the technique, not yet run end to end by us.
licenseCC BY 4.0 for the text here; skills are MIT.
updated2026-11-01
for agentsanalyse-once-sidecar-files-metadata-time.md
#analysis#sidecar#metadata#ffprobe#workflow#archive

Related

Editing & montage intermediate

The day as one text file: an agent reads the speech and proposes the story

The step before any timeline: the day's speech in shooting order, numbered by clip and sentence, read by an agent like a scriptwriter. It proposes story, scenes, hook and cutaways; you argue in text.

Claude CodeClaude
Scripts & shot lists advanced

Write the cut as a script, not a timeline: the JSON storyboard prompt

An agent prompt that writes the edit of real footage as a small JSON file: which sentences, which cover shots, what the cold open is. A complaint becomes a one-line edit, and the render repeats.

Claude CodeClaude
Editing & montage beginner

Take something from every clip, and list the ones you cut with a reason

A rule for cutting someone else's footage, or your own from a year ago: each clip was filmed because it mattered, so each gets a chance, and the rejects get a written reason the person can argue with.

Claude CodeLife2FilmCapCut / any editor
Video generation intermediate

Generate a 10-clip b-roll pack for a talking-head video

One agent prompt that reads your transcript and writes ten generation prompts for cutaways that show what is being said, each tagged with the sentence it covers.

Claude CodeClaudeChatGPT
Editing & montage intermediate

Cold open, then hook: 8-10 s of best frames, hand-picked from a contact sheet

The opening that holds a viewer on real footage: 8-10 s of the strongest frames with no speech, then one line with a twist. What to look for on the sheet, and why the automatic pick is wrong.

Claude CodeLife2FilmCapCut / any editor
Editing & montage intermediate

The critic pass: repeats and sagging scenes first, mid-word joins second

A two-pass review prompt for a subagent or a second session: pass one on structure (repeats, sagging scenes), pass two on joins (mid-word cuts, audio seams). One read finds one kind of problem.

Claude CodeClaude