Skip to content
The Test Fixture
--:--:--
00Home 01Channel 02Realtime board 03Prompt terminal 04Tool index 05About The Test Fixture
The Test Fixture · AI REALTIME STREAM
DEEP · The Controlled Run 2026.10.27

Subject Identity Across Multiple Shots: A Repeatability Test

LTX-2.3 is tested for subject identity consistency across three independently generated shots with different framing and angles, using a fixed seed and a detailed character description including a scar above the left eyebrow as a checkable feature.

 Subject Identity Across Multiple Shots: A Repeatability Test

Independent and unofficial. The Test Fixture is not affiliated with, endorsed by, or operated by any model developer or platform mentioned here. LTX-2.3 and related marks belong to their respective owners.

A character that holds up for five seconds is not the same as a character that holds up across five shots.

The earlier identity drift post dealt with drift inside a single clip: the subject looks right at frame one and wrong by frame twelve. This test is about a harder problem. If I generate the same subject in three independent shots — different framing, different angle, different action — does the model produce a subject a viewer would recognize as the same person?

That is the test that matters for anything resembling a sequence, and it is the test a single successful clip cannot answer.

Test question

Loupe over scar above eyebrow in S1 frame beside S2 profile frame.

Holding subject description and style constant, and varying only the shot setup, does LTX-2.3 produce a subject that is recognizably consistent across three independently generated shots — and what kind of inconsistency appears when it does not?

The phrase “recognizably consistent” is doing work. I am not testing pixel-level identity, because there is no reference image. I am testing whether a viewer, given the three clips without labels, would say “that is the same person.”

Configuration

Hardware

  • GPU: single consumer GPU, 24 GB VRAM.

  • CPU: current desktop-class processor.

  • System RAM: 64 GB.

  • Storage: NVMe for runtime and model files; separate drive for outputs.

Software

  • OS: current Linux desktop distribution. [Version]

  • GPU driver: [Version]

  • CUDA: [Version]

  • PyTorch: [Version]

  • ComfyUI: [Version]

  • Custom nodes: [names and versions, or “none”]

  • Model: LTX-2.3, [exact identifier / commit / quantization]. Checksum: [if available].

Generation parameters

  • Sampler: [sampler]

  • Scheduler: [scheduler]

  • CFG: [value]

  • Steps: [value]

  • Resolution: 720 × 1280 (portrait).

  • Frames: [value]. FPS: [value]. Duration: [value].

  • Motion / denoise settings: [values]

  • Seed policy: fixed seed, [seed value], used across all shots. No reselection after reviewing outputs.

  • Test set ID: identity-001.

Subject description (held constant across all shots)

A man in his late forties, short gray hair, weathered face, a faded blue canvas work shirt with the sleeves rolled up, a small scar above his left eyebrow. [SHOT CLAUSE]

The scar is deliberate. It is a specific, local, checkable feature. If the model holds the scar, it is holding a detail that is easy to lose. If it drops the scar while keeping the jacket, I learn something about which features survive.

Shot clauses (the only variable)

  • S1 — Medium, facing camera: “Medium shot, subject facing the camera, static camera, overcast light.”

  • S2 — Profile, working: “Profile shot, subject facing left, leaning over a workbench, static camera, overcast light.”

  • S3 — Wide, walking away: “Wide shot, subject walking away from the camera down a gravel path, static camera, overcast light.”

Runs

  • Conditions: 3 shots.

  • Runs per condition: 3, to separate a shot-clause effect from a one-off render.

  • Total samples: 9.

  • Warm-up: one warm-up run discarded before S1.

  • Discarded runs: none after warm-up. Any discarded run would be listed here with the reason.

Observation

S1 — Medium, facing camera. The subject was consistent across the three runs in age range, hair, and clothing. The scar above the left eyebrow appeared in two of three runs; in the third, the brow was partly shadowed and I could not confirm the scar at normal review speed. The jacket was faded blue in all three. This is the baseline, and it is the easiest condition, because the shot is closest to a portrait.

S2 — Profile, working. The subject read as the same person in two of three runs. In the third, the face in profile had a different jawline and a more angular nose, and the clothing color shifted toward a slightly different blue. The scar was visible in one run only, which is expected in profile but not reassuring. The workbench scene introduced a second identity problem: the subject’s hands were not consistent with the S1 runs in apparent age, which I am recording as a separate observation rather than an identity failure.

S3 — Wide, walking away. The subject read as the same person in all three runs, but at the distance of a wide shot the identity signal is weaker: hair color and jacket are consistent, but face and scar are not visible. This condition cannot confirm identity so much as fail to contradict it. That distinction matters and is recorded as such.

Across the nine samples, the features that survived most consistently were clothing color and general build. The features that were least reliable were the specific facial detail (the scar) and, in the profile condition, facial structure. No temporal flicker was obvious in any run at normal review speed; I did not run frame-level analysis on this test set, so that remains an unconfirmed observation.

Interpretation

Confidence: moderate for clothing/build consistency; weak for facial identity across shots.

The useful observation is not “the model keeps identity” or “the model loses identity.” It is that identity consistency in this test was carried mostly by coarse features — clothing color, build, general age — and only partly by the fine features that a viewer uses to recognize a specific person.

That has a practical consequence. If your workflow depends on a viewer recognizing a character across shots, clothing and build may be enough for a wide or action shot and not enough for a close or profile shot. The failure does not announce itself as a face change; it shows up as a subject who feels slightly different in the second shot, which is harder to catch in review and easier to rationalize away.

The scar result is the most informative single observation. A specific facial mark is the kind of feature that a test should hold constant and a demo should not rely on. In this sample it was unreliable even in the closest condition. That is a conditional observation for this configuration and this shot set, not a general rule, but it is the kind of detail that production workflows assume and rarely check.

The S2 jawline/nose change is recorded as an identity-drift failure. It occurred in one of three profile runs, and I have not separated whether it is seed-specific or profile-specific, because this test used a single seed. A follow-up will rerun S2 across several seeds.

The S3 result is recorded as inconclusive, not as a success. A wide shot that does not show the face cannot confirm identity; it can only fail to contradict it. Reporting it as a success would be a measurement error dressed up as a result.

Failure cases

Failure category: identity drift. S2 profile run 3 showed a changed jawline and nose, and a shifted clothing color. Sample count: 1 of 3 S2 runs. Reproducible: not yet checked across seeds. Attribution: undetermined; could be seed-specific or profile-specific.

Failure category: specific-feature loss. The scar above the left eyebrow was not confirmed in S1 run 3 (shadowed), was visible in only one S2 run, and was not visible at S3 distance. Sample count: not confirmed in 2 of 3 S1 runs, 1 of 3 S2 runs. Reproducible: partial. Attribution: likely model behavior at distance and in profile, not a workflow error.

Observation, not a failure: hand-age inconsistency in S2. Recorded separately because it is a different claim. Hands appeared older than the face in two S2 runs. Not categorized as identity drift until it is tested as its own question.

Inconclusive: S3. Wide shot cannot confirm facial identity. Recorded as inconclusive, not successful.

Reproduction notes

Subject description and the three shot clauses are included above with test set ID identity-001. Seed is fixed and listed in the configuration. The configuration manifest will be published as identity-001.json. Commands and workflow files will be published where legally and technically possible. Model files and installers are not distributed.

If you rerun this, the useful comparison is per-feature, not aggregate. A rerun that keeps the scar in S1 but changes the S2 jawline is a different result from a rerun that loses the scar everywhere. Report which feature changed in which shot.

What this test does not show

It does not show that LTX-2.3 can or cannot maintain character identity in general. It does not show that a different subject, a different style, or a different seed would produce the same pattern. It does not establish pixel-level identity, because there is no reference image. It does not show that a passing S1 run will keep passing after a runtime update. And it does not test multi-shot sequences generated in a single pass, which is a different question and a follow-up.

The configuration is part of the result. A successful sample is evidence. It is not a warranty.

If it can’t be reproduced, it’s a story—not a result.

Responses

No responses yet.

Leave one

RELATED · Keep reading
02:3110/26 DEEP The Controlled Run

Changing Only the Camera Direction: A Controlled Motion Test

LTX-2.3 is tested for camera control independence by holding prompt, subject, action, lighting, resolution, duration, and seed constant while varying only camera direction instructions across five conditions: static, push in, pull out, pan left, and orbit.

Changing Only the Camera Direction: A Controlled Motion Test
22:1110/25 DEEP The Controlled Run

One Prompt, Ten Seeds: Measuring Output Variance

One Prompt, Ten Seeds tests LTX-2.3 text-to-video output variance across ten fixed seeds using a single specific prompt, finding outputs split into three groups: 5 seeds produced equivalent results with minimal subject position drift, 3 showed composition drift, and the remaining seeds exhibited different failure categories.

One Prompt, Ten Seeds: Measuring Output Variance
21:4910/24 DEEP The Controlled Run

The Reproducibility Protocol: What Every Test Report Should Include

The Test Fixture outlines a six-question reproducibility protocol for AI video testing, requiring detailed configuration blocks including hardware specs, runtime versions, model checksums, and generation parameters to distinguish controlled test reports from demo write-ups.

The Reproducibility Protocol: What Every Test Report Should Include