Why generated clips drift, and what fixes it
A text-to-image call carries no memory. Ask for "a robotic arm" five times and you get five different arms — each internally plausible, none the same character. Longer prompts do not fix this, because prose cannot specify a face.
Two channels, every clip
Each generation is conditioned on written canon and real image parts.
Every reference is role-tagged
This is the part that makes it work rather than produce mush. An untagged pile of reference images invites the model to average them. Naming each one's job — and what it may not contribute — keeps a style plate from leaking its subject into the shot, and keeps the previous frame from being copied wholesale.
The canon is locked
A generated frame never silently becomes the new reference. If clip 40 references clip 39, and 39 referenced 38, drift compounds invisibly until the character has quietly become someone else. References are set deliberately and then frozen.
Products come from photographs
A manufacturer does not want a plausible machine — they want theirs, correct down to the panel layout. Product entities are anchored on the operator's own photographs and marked authoritative: reproduce the geometry, do not redesign it, do not invent labels. This is the axis most tools cannot serve at all.
The pipeline is open source: github.com/hemangjoshi37a/object-talk-pipeline