Why AI video clips are eight seconds long — and how to make a longer film anyway
AI video models cap out at a few seconds per clip. The way past the cap is not a longer clip; it is a cut that holds.
Every AI video model ships with the same disappointment in the spec sheet. Veo 3.1 generates eight seconds. Gemini Omni Flash generates five to eight. Whatever model you reach for, the ceiling is a single-digit number of seconds, and the film in your head is three minutes long.
The obvious responses to that gap mostly do not work, and the one that does work is older than cinema software: the cut.
Why not just wait for longer clips?
Clip length is not a dial the providers forgot to turn up. A video model holds the whole clip in its attention at once, so cost and instability grow with every added second — and drift compounds. A character who is 98% consistent frame-to-frame is someone else entirely by second thirty. The ceilings have crept upward, but slowly, and every second past the sweet spot gets more expensive and less reliable. A three-minute single take is not one product cycle away.
More practically: even if you could generate three minutes in one pass, you would not want to. One bad gesture at 2:40 would cost you a full re-render of everything, at whatever three minutes of generation bills at. Nobody edits film that way, and nobody should generate it that way.
Why not just chain clips together?
The standard workaround is extension: take the last frame of clip one, feed it in as the first frame of clip two, repeat. It fails slowly instead of failing fast. Each hand-off loses a little identity — the jacket changes cut, the lighting warms, the face is almost right. By the fourth link in the chain you are steering a different scene.
The deeper problem is structural: a chain has no joints. Every clip depends on the exact pixels of the one before it, so fixing shot two means re-rolling shot two and everything after it. Your film is a house of cards where touching any card rebuilds the rest of the row.
The cut is the unit, not the clip
Films were never long takes. A finished scene is a sequence of short shots — most of them a few seconds long, which is to say: exactly the length AI video models are good at. The eight-second cap is only a crisis if you think in takes. If you think in shots, the models are already the right shape.
What the cut needs to survive generation is a guarantee at the boundary. When shot three ends and shot four begins, the frame on either side of that cut has to be yours — authored, fixed, not whatever the model happened to drift to. If the boundary frame is pinned, two things follow:
- The cut is invisible, because both shots land on the same image.
- Every shot becomes independently re-rollable. Re-generating shot three cannot disturb shot four, because shot four was never conditioned on shot three’s output — only on the shared boundary still.
That second property is the economic one. It converts “one bad gesture costs the whole film” into “one bad gesture costs one clip.”
Does the boundary actually hold?
That is a testable claim, so before building a product on it we tested it: 28 instrumented renders across Veo 3.1, Veo 3.1 Fast, and Gemini Omni Flash, every conditioning mode, each configuration run twice, measured with mean-absolute-difference and a difference hash against the authored still. The full method and table are in the fidelity report, but the shape of the result:
- The best configuration — Omni Flash, five seconds, first and last frame plus three reference images — lands 0.7% MAD from the authored boundary still. The control (two genuinely different stills of the same subject) measures 16.6%. An order of magnitude of headroom.
- The guarantee is conditional, not universal. Veo 3.1 at four seconds treats the target frame as a suggestion and drifts to 5.5% — visibly loose — then snaps back to 1.5% at eight seconds. Clip length changes whether the model respects the boundary at all.
That second finding is why “just pin a frame” is not a workflow you can run by hand reliably. The rules about which model, which duration, and which conditioning combination actually honour a pinned boundary are empirical, provider-specific, and occasionally silly. They belong in software that refuses the bad combination at authoring time, not in a notes file you consult before every render.
What this means if you are making something longer than eight seconds
Whether you use our tool or a folder full of scripts, the approach that survives contact with the models is the same:
- Write shots, not takes. Plan the film as an ordered list of clips at the length your model is faithful at, with the cuts decided up front.
- Author the boundaries. Generate or choose a still for each cut you care about, and condition both adjacent clips on it. The still is the contract; the clips are replaceable.
- Re-roll clips, never sequences. If a shot is wrong, regenerate that shot against its unchanged boundaries. If regenerating one shot forces you to touch its neighbours, your structure is a chain, and it will cost you.
- Measure, don’t squint. A 64×64 difference hash between the boundary still and the clip’s actual endpoint frame tells you whether the seam held before you spend an evening in a video editor finding out.
The eight-second cap looks like the obstacle. It is closer to a forcing function: it pushes generated video toward the structure film always had — short shots, deliberate cuts, and the ability to fix one without paying for the rest.
That structure is what Lunar Canoe is: a storyboard where the seams are first-class, pinned, and measured. The clips stay short. The film doesn’t.
Written by the people building Lunar Canoe, a storyboard for AI video. More posts on the blog index, or subscribe by RSS.