Chain Three AI Video Shots Into One Take, and the Drift Fix Everyone Gets Backwards
A free workflow for MiniMax H3 that holds the same face and the same voice across shots, and the measured reason the obvious corrections make it worse.
A video workflow went up yesterday whose documentation tells you that three of its own controls do nothing.
Not "use with care." Nothing. They were verified dead by reading the source, and they ship set to zero specifically so nobody spends an afternoon tuning a knob that is not wired to anything. A fourth dial gets the same treatment from the other direction: it does something, just very little, and the file says plainly that it is not the fix it was described as two versions ago.
I have read a lot of workflow drops. Almost none of them admit that. This one reads like a lab notebook, and the thing it is a notebook about is the problem everyone hits the moment they try to make AI video longer than one clip.
The problem is that shots remember wrong
Generate a five second clip and it looks fine. Generate three of them and cut them together and you have three different people in three different rooms.
The way around that is chaining: each new shot starts from the tail of the one before it, so the model is handed an actual picture of your character rather than re-imagining them from your description. That works. The face carries. The wardrobe carries. The room carries.
What also carries is every small error.
Each shot regenerates from the previous shot's own output, so whatever the model invented last time becomes the source material this time. Invented texture compounds. Over ten shots, the workflow author measured brightness climbing about 5.5 percent per join and colour about 8.6 percent per join, and, worse than the number, the drift was accelerating. Sharpness ratchets roughly 1.3 times at every join, which shows up as a visible step at each seam and eventually as a video that looks like someone turned the clarity slider up in stages.
The sound goes the other way. Left to run on pure recency, where each shot hears only the one before it, the voice band collapsed: 84 to 92 percent of the energy between 4 and 10 kHz gone by shot eight. Your narrator starts crisp and ends muffled.
This is the part most tutorials skip, and the reason they skip it is that the obvious fix does not work.
Why the per-shot corrections fail
Every one of these workflows has dials for evening out colour and brightness on each shot. Reach for them and the numbers get worse, not better. A render with every per-shot control switched on measured 142 percent more texture and 18 percent more brightness across three shots, with a visible step at each join.
Here is the mechanism, and it is the single most useful thing in the documentation.
What gets handed to the next shot is not the video you are watching. The workflow pins the previous shot's raw data, stored before it is ever turned into pictures. The per-shot dials operate on the pictures. So you are correcting the thing on your screen while the uncorrected version, drift and all, is what feeds forward. You fix the symptom in the frame you can see and pass the disease along untouched.
Once you know that, the right moves are obvious and they are all upstream or downstream, never per-shot:
Upstream. Turn off the recency memory entirely so the only reference is shot one, which nothing has been added to yet. That single change took brightness drift from 5.5 percent to 2.2 percent per join and colour from 8.6 to 3.9, and it stopped the drift accelerating, which is the more important half. Identity held. Framing actually improved.
Downstream. Correct the finished video, once, against a single global target taken from shot one. Because every frame lands on the same number, this cannot create a seam. A three shot chain drifting 22 percent brighter came out flat.
Nowhere. Texture. There is no honest fix after the fact, because blur is the only lever and blur destroys real detail along with the invented kind. Your options are to level every shot to one house texture across the whole chain, or to keep chains short.
Put this into practice
The workflow pack is Apache 2.0 and about 10 MB, because it is graphs and code rather than model weights. Four graphs ship. Start with the CORE one, which runs on stock ComfyUI with no third-party packs at all. The full graph wants five extra packs and you do not need it to find out whether this is for you.
1. Install the pack. Copy the ComfyUI-H3-Multishot folder into ComfyUI/custom_nodes/ and restart. You need ComfyUI v0.30.0 or newer, which is where MiniMax H3 support landed.
2. Get three things, not one. The compressed model file from joeygambino/MiniMax-H3-GGUF, picked by card memory: the largest for 32 GB, the middle one for 24 to 32 GB, the smallest for 16 GB. Then the text reader and both decoder files from Comfy-Org/MiniMax-H3. There are two decoders, one for picture and one for sound, and both get wired in. People miss the second one and then wonder why there is no audio.
3. Open the CORE graph at workflows/H3_Seamless_Chain_CORE.json.
4. Write your shots into the script box, one per shot, with --- alone on a line between them. Leave the continuity mode on first_frame, which is the model's own trained hand-off and needs nothing extra. Leave the memory reserve at zero. Leave the per-shot seed switch on.
5. Queue once. Not once per shot. The whole chain renders from one queue.
That is the mechanical part. The part that decides whether the joins actually read as invisible is the writing, and the author documents five rules that were each written after a specific failure:
- Open every shot holding the previous shot's exact closing arrangement, and stay quiet for about two seconds before anyone speaks. The head of a chained shot is a regeneration of the previous tail and gets discarded, so anything you put there is thrown away.
- Give that hold something to do. A held frame with nothing happening renders as a literal freeze. Write in a breath, a weight shift, an eyeline change.
- Never split a spoken line across two shots. Budget the dialogue plus four seconds of quiet inside the shot length. At the shipped 15 second shot that is about 27 words. Move the whole line to the next shot rather than cutting it.
- Repeat each character's appearance and the room description word for word in every shot. Not paraphrased. Rewording a description between shots is the most common cause of a face changing mid-scene.
- Change something physical in every shot. Repeating the description is about appearance, not action. If you can swap two shots' actions and the script still reads correctly, the model cannot tell them apart either, and shot three comes back as a near-copy of shot two.
One more that will bite you: negations get rendered. There is no negative branch in this setup to subtract anything, so writing "the shot does not repeat" puts repeat into what the model is reading. Same with stillness. "Goes still" freezes the whole frame. Say what changes, never what does not.
Where this bites
It is slow, and on a normal card it is really slow. On a 24 GB 3090 at the shipped size, later shots run about 98 seconds a step, roughly 23 minutes per shot, because the reference material the chain carries pushes most of the model off the card and it streams the rest from system memory every step. A three shot scene is over an hour. The documented ladder if that is too much: drop the resolution first, then shorten the shots, then start switching on the memory-saving options.
Leave the memory reserve alone. A hand-set value that suited shot one was wrong for shot two, left the model 399 megabytes short, and took a render from 18.8 seconds a step to 283. That is a fifteen times collapse bought by "optimizing." Letting it size itself turned a 37 minute chain into 14.
Resolution is fixed for the whole chain. You cannot start small and finish big.
Long takes still ratchet. The author measures about 13 percent extra fine texture per join even with every anti-drift setting on, and recommends capping continuous takes at roughly four windows, which is somewhere around 30 to 40 seconds. A fix is listed as in progress, which means it is not fixed.
And the speed add-ons are less useful than they look. Three were tested on the same seed. One gave 29 percent back, another 21 percent, and both produced visible distortion on people while leaving environments alone. The third turned out to be doing nothing at all at the shipped step count, and the earlier speed number attributed to it did not reproduce; it now ships off. Stacking two of them was no faster than the better one alone and damaged the output badly.
The part I keep thinking about
The most valuable thing in this release is not the workflow. It is the habit.
Someone measured their own controls, found three of them inert, and shipped that finding in the settings file next to the controls themselves. Someone tested a speed add-on, published a 11 percent improvement, retested it a day later, found zero cache hits on two different cards, and corrected the number in place with the date attached.
Almost nothing in this field is documented that way. We are mostly working from screenshots and confident forum posts, and the gap between "this setting helps" and "this setting was verified to help, here is the seed" is where entire weekends go.
If you are chaining video shots at all, the specific thing worth stealing today is the diagnosis, not the pack: find out whether the correction you are reaching for operates on what you see or on what gets passed forward. Those are usually two different things, and only one of them is the one that matters.
Medium metadata
- Title: Chain Three AI Video Shots Into One Take, and the Drift Fix Everyone Gets Backwards
- Subtitle: A free workflow for MiniMax H3 that holds the same face and the same voice across shots, and the measured reason the obvious corrections make it worse.
- Tags: AI Video, Filmmaking, Generative Ai Tools, Comfyui, Creative Technology
- Meta description: Chained AI video shots drift because each shot regenerates from the last one's output. A new ComfyUI workflow for MiniMax H3 measures the drift, names three of its own dead controls, and shows why per-shot colour and brightness corrections cannot fix it.