Skip to content
decosa

50 · Film, TV and games · Creative and media · live

Script to animatic

Open the toolJSON

Eval results

Not held outRun 26 Sep 2026Eval write-up (decosa-api, access required)

  • Shot-list coverage of lines needing a shot, before any code repair100% in 10 of 10 runssyntheticn = 105 scripts x 2 runs, 78 required lines per pass
  • Invented dialogue0syntheticn = 100 by construction: dialogue is cited by line id and inserted by code
  • Grounding verdicts on shot actions: supported / partial / unsupported / contradicted128 / 17 / 3 / 3syntheticn = 151Of the 6 hard flags read by hand, 2 were real and 4 over-strict
  • Planted invented actions judged unsupported10 of 10syntheticn = 1066 unplanted shots in the same pass: 57 supported, 9 partial, 0 unsupported or contradicted
  • Character identity (CLIP cosine to sheet), unlocked vs locked look (default)0.528 vs 0.690syntheticn = 18Nearest-sheet accuracy 0.33 vs 0.75 (12 frames; chance about 0.42)
  • Model cost per shot list$0.0035-0.013syntheticAt the gateway list price; render GPU time not billed in the demo

Dataset

5 scripts: 3 original CC0 (screenplay, 30 s ad, game cutscene) and 2 public-domain stage plays (Wilde, Glaspell); 18 single-character shots for the consistency test.

Caveats

  • No held-out split: the Last Lamp sample was used during development, and prompt rules were added after a first run on it.
  • The planted inventions are blunt on purpose, and the plants and the checker have the same author; a subtle invention lands in partial at best.
  • Whole-frame CLIP scores are confounded by background and framing: read them as differences between arms, not absolute truth.
  • Frames are not checked against existing characters; one robot came out close to a well-known film robot and was withdrawn. Review for resemblance before sharing.
  • A shot-list prompt rule and a judge fix went in after these numbers and are not re-measured.

Nightly smoke check

Loading the nightly status…

Result
pass
Run
26 Sep 2026
Latency, this run
n/a
p50 over passed runs
531 s
Receipts
16
Model calls
n/a
Tokens
n/a
Cost per run
$0.007

Self-host verification

Verified on 26 Sep 2026: Fresh clone of the branch into a clean directory, docker build of the api image plus the Kokoro layer from the assemble prompt, compose with named volumes, pointed at the already-running local Qwen3.8-27B (direct route) and ComfyUI; the rehearsal bundle; then torn down.

9 of 9 rehearsal checks passed (render 576 s, C2PA stamped, record verified), no script text in the container logs. Found on the way: frames could not be moved from the work volume to the data volume (cross-device rename); fixed with a regression test.

Rehearsal bundle: animatic-studio.zip (2 KB, 9 checks). Mock inputs plus the expected results, so you can prove your own setup works before any real data touches it.

Known limits

  • Frames are rough and characters are only partly consistent from shot to shot (no identity adapter).
  • Frames aren't checked against existing characters; review for resemblance before sharing. A vague look can drift towards a familiar character (in testing, a one-line robot description came out close to a well-known film robot).
  • Long speeches stretch their shots past the drafted length; the timeline shows by how much.
  • The grounding check also marks harmless staging details as partial; a person decides.
  • Renders share one GPU with other demos: several minutes per animatic, longer when the queue is busy.
  • C2PA credentials use a development certificate, so public validators show the issuer as untrusted.

Models and licences

Standard tier. Licence posture: permissive (Apache, MIT or BSD).

  • Drafts the shot list (line ids, framing, action, duration) and a look per character; the same model is the grounding judge that checks each shot against its linesQwen3.8-27B (NVIDIA NVFP4)Apache-2.0
  • Character sheets, one still per shot (text only: every frame repeats each visible character's look), and optional image-to-video motion from a shot's stillWan2.2-VACE-Fun-A14BApache-2.0
  • 4-step distillation LoRAs for Wan2.2 (used at 6 steps, cfg 2 for stills)Wan2.2-Lightning T2V 4-step LoRAsApache-2.0
  • Temp dialogue in stock voicepacks, only for speakers the consent ledger allowsKokoro-82MApache-2.0
  • C2PA content credential on the MP4, with the consent-ledger links of the voiced speakersc2pa-rs via c2pa-pythonMIT OR Apache-2.0

All quality evidence

Every sourced number on the tool’s Stack tab, by tier. Some are proxies from another task; their labels say so.

Lite · breakdown only, no GPU renderer (2)
  • Model coverage of script lines: 100% in 10 of 10 runsdecosa-api docs/evals/animatic-studio.md, 2026-09-26
  • Planted invented events flagged by the grounding check: 10 of 10decosa-api docs/evals/animatic-studio.md, 2026-09-26
Standard · the hosted demo (5)
  • Script lines covered by the model's shot list, before code repair: 100% in 10 of 10 runs (5 scripts, 78 required lines)decosa-api docs/evals/animatic-studio.md, 2026-09-26
  • Invented dialogue in the cut: 0 by construction (the model cites line ids; code inserts the words); 0 quoted phrases outside the cited lines in 10 runsdecosa-api docs/evals/animatic-studio.md, 2026-09-26
  • Planted invented events flagged by the grounding check: 10 of 10 (unsupported)decosa-api docs/evals/animatic-studio.md, 2026-09-26
  • Character consistency (CLIP ViT-L/14 similarity of each frame to its character sheet): 0.69 with each look repeated in every frame vs 0.53 without; nearest-sheet identification 0.75 vs 0.33 (18 frames, 3 scripts). Reference-image conditioning scored 0.81 but copied the sheet's pose, so it is off.decosa-api docs/evals/animatic-studio.md, 2026-09-26
  • Render time per full animatic on the shared GPU: 359-726 s for 7-18 shots (6 runs); about 13 s per frame when the GPU is free; 45-47 s to re-render one shotmeasured on our server 2026-09-26
Best · self-host with LTX-2.3 or MiniMax H3 (licence pending) motion (1)
  • Any: not measured yet

How we measure · All tools