# A Continuity Manifest for Short Scene Takes

A sequence assembled from generated short takes stays coherent only if you write down the space you think they share. This tutorial uses a local continuity manifest—a small JSON or YAML file beside the media—to record window direction, surface material, light, and in/out points. It is an editorial checklist, not a product sequence API and not a storyboard generator.

The manifest does not join clips. You still compare pictures, play the cut, and reject a take that belongs to another room.

## A shot continuity manifest for image-to-video sequences

Keep one manifest per intended scene, not one per interesting clip. A compact record can look like this:

```json
{
  "scene": "quiet-cafe-before-opening",
  "window": "left",
  "surface": "pale counter",
  "light": "warm morning, dry",
  "motion": "gentle, no walk-ins",
  "takes": [
    {
      "id": "cup-01",
      "job": "establish warmth",
      "still": "refs/cup.jpg",
      "clip": "out/cup-01.mp4",
      "in_s": 0.20,
      "out_s": 2.80,
      "status": "keep"
    }
  ]
}
```

The cafe in that example is a working illustration in prose, not a documented production or a test of a specific recipe. The fields matter more than the setting: `window`, `surface`, and `light` describe the room; `in_s` and `out_s` describe the trusted interval; `status` should be “keep,” “trim,” or “replace,” with a reason you could act on later.

“Trim before the window bends” is usable. “Make it cinematic” is not.

## Record the space before you generate the next take

Write the room fields first. If you do not yet know whether the window is on the left, you are not ready to admit a second angle. The still supplies visual evidence, but not a complete set behind every object. A later view has to invent unseen sides, contact shadows, and reflections. The manifest is how you remember which inventions you already accepted.

Extract review frames at the in-point, a mid point, and the out-point:

```bash
ffmpeg -y -ss 0.20 -i cup-01.mp4 \
  -frames:v 1 review/cup-01_in.png
ffmpeg -y -ss 1.40 -i cup-01.mp4 \
  -frames:v 1 review/cup-01_mid.png
ffmpeg -y -ss 2.80 -i cup-01.mp4 \
  -frames:v 1 review/cup-01_out.png
```

Compare those frames with the still and with the manifest, not only with the previous thumbnail. Look for three separate failure classes:

- Space warp: a straight window bows, a table expands, or an object loses contact with the counter.
- Action breakdown: steam becomes a solid ribbon, or a curtain passes through its sill.
- Set drift: two otherwise acceptable takes disagree on cup side, counter material, or time of day.

![Three frames from one official night-sky take](https://cdn.hashnode.com/uploads/gql/6ac7155f8cadc38d9e483af7/7cdbd7bd-c91b-4a68-a4a8-a73873866926.png)

*Official MixVio Image to Video demo (galaxy-sky): three frames from one short take, shown so you can sample the interval before editing. Not a measured quality test, and not a claim that later frames were generated independently of the still. Source frames are narrower than this 1600-pixel canvas. Source: MixVio Image to Video demo.*

A take can be marked `trim` if only the tail fails. It should be `replace` if it describes a different room. Cutting earlier cannot reconcile two sets.

## One job per take, one still path per row

Give each take a job, not the whole story. In the cafe illustration, one take may establish warmth, another may carry light across the counter, and a third may settle the movement. Write a separate motion brief, and store the still you actually used.

A hosted generator such as [the Image-to-Video page used to generate each take](https://mixvio.ai/tools/image-to-video?utm_source=hashnode&utm_medium=article&utm_campaign=animated-sequences-from-stills-remix&utm_content=hashnode-sequence_continuity_manifest-v1-inline#effect-workspace) accepts JPEG, PNG, or WebP and returns one short private MP4 per run. It does not assemble those files into a sequence. Start with clear, well-lit, readable references you own or may animate. Review logos, typography, packaging, and subject details for drift.

Available durations depend on the selected MixVio route; several run from a few seconds up to 15, and Seedance 2.5 also supports continuous 4–30-second takes at 480p–1080p. Choose length in the generator. A longer available take is not an instruction to keep every moment. Read the live quote before you submit. Quoted credits are reserved at submission and released on failure or safe cancellation. Creative dissatisfaction is not a technical failure, and a submitted provider request may not be cancelable.

![An official object-and-atmosphere take from a different scene](https://cdn.hashnode.com/uploads/gql/6ac7155f8cadc38d9e483af7/a35e1719-f9ef-4b0c-bb50-3056d03b5683.png)

*Official MixVio Image to Video demo (spaceship-approach): one object-and-atmosphere take. It is separate official material, not a cutaway from the cafe example or from the other demos above, and not a MixVio editing interface. Source: MixVio Image to Video demo.*

The official cover gathers three unrelated demos for the same reason: they can each be a short take, but they do not share a space. Do not admit a striking clip to the manifest only because it is atmospheric.

## Validate joins against the manifest, not against a transition

A small check can catch incomplete rows before you edit:

```python
def admit(row, scene):
    if row["status"] == "replace":
        return False
    if row["out_s"] <= row["in_s"]:
        return False
    return row["still"] and scene["window"]
```

The function does not score continuity. After you place two keepers on a timeline, compare the outgoing and incoming pictures with the same `window`, `surface`, and `light` fields. Do shadows imply the same window? Does the counter keep its material? Play the join at normal speed, once with no transition.

If the join needs a long dissolve to hide a different counter, mark the incoming take `replace`. Do not manufacture continuity with an effect. Keep a clean out-frame as a possible handoff, or choose a fresh still that already matches the room. Do not propagate a subtly warped tail just because it came from a `keep` row. Optional end-frame input exists only on supported MixVio routes; it is not required for this method.

Match white balance later in your own editor if needed. Grading can reconcile warmth; it cannot restore a missing window. Room tone, if you add it, should be muted during the picture pass. These steps are not built-in MixVio sequence tools.

For route names, the official [Kling 4.0 guide](https://kling.ai/quickstart/kling-4-model-user-guide) and [Seedance 2.5 introduction](https://seed.bytedance.com/en/seedance2_5) provide provider context. They do not define a continuity API in the hosted workspace.

One still can anchor a space, but every new view asks for unseen details. Bring in a matching authorized still when another angle needs a clearer starting point. Private outputs still involve necessary provider processing, and paid commercial use remains subject to Terms, provider rules, and reference rights. Evaluation-only outputs are not for commercial publishing.

## FAQ

**Is the manifest a substitute for watching the join?**

No. It stores the room you think you have. The join still has to be visible without a transition.

**Can I leave `window` blank and fill it after several takes?**

You can, but then you have no admission test. Write the space first, or you will be comparing clips to each other instead of to a room.

## Bottom line

Describe the room, then keep only the intervals that still agree with that description. The continuity manifest is a local record. It is not a product feature that assembles a sequence for you.

