ltx2

AI video generation with LTX-2.3 22B — text-to-video, image-to-video clips for video production. Use when generating video clips, animating images, creating b-roll, animated backgrounds, or motion content. Triggers include video generation, animate image, b-roll, motion, video clip, text-to-video, i

By digitalsamba · 715 installs

npx skills add digitalsamba/claude-code-video-toolkit --skill ltx2

Source repository · Upstream listing

LTX 2.3 Video Generation Generate ~5 second video clips from text prompts or images using the LTX 2.3 22B DiT model. Runs on Modal (A100 80GB). Requires MODAL LTX2 ENDPOINT URL in .env . LTX 2.5 is a deploy time opt in on the same endpoint; see [LTX 2.5 (opt in)]( ltx 25 opt in). Quick Reference Parameters Parameter Default Description prompt (required) Text description of the video input Input image for image to video width 768 Video width (divisible by 64) height 512 Video height (divisible by 64) num frames 121 Frame count, must satisfy (n 1) % 8 == 0 fps 24 Frames per second quality standard standard (30 steps) or fast (15 steps) steps 30 Override inference steps directly seed random Seed for reproducibility output auto Output file path negative prompt sensible default What to avoid lora none Style LoRA preset. Currently: crt terminal . Style LoRAs Style LoRAs bias the output toward a specific visual aesthetic. They're baked into the Modal image and selected per request; switching LoRAs rebuilds the server pipeline. On an LTX2 VERSION=2.5 deployment: the presets below were trained on LTX 2.3. crt terminal was checked on 2.5 (2026 10 12) and does not reproduce its CRT look there: it changes the output, but the result is a photoreal scene with green text. Use a 2.3 deployment for it. Keys that don't match are skipped without an error, so compare any other 2.3 LoRA with 2.3 before relying on it. crt terminal — CRT / pixel art terminals Base: LTX 2.3 22B, trained by [@lovis93](https://huggingface.co/lovis93/crt animation terminal ltx 2.3 lora) (Apache 2.0). What the preset changes: Prepends crtanim, to the prompt (the LoRA's trigger word) Defaults to 1024×1024, 121 frames (the ratio it was trained on) Relaxes the default negative prompt so on screen text isn't filtered out Prompt pattern: <CRT aesthetic → <color palette → <animation style → <subject → <literal text in quotes → <mood . Keep on screen text to 1–3 words — the model can't render long strings reliably. The LoRA prefers static framing; ask for camera moves explicitly if you want them. Valid Frame Counts (n 1) % 8 == 0 : 25 (~1s), 49 (~2s), 73 (~3s), 97 (~4s), 121 (~5s default) , 161 (~6.7s), 193 (~8s max practical). Common Resolutions Resolution Ratio Notes 768x512 3:2 Default, good balance 512x512 1:1 Square, fastest 1024x576 16:9 Widescreen 576x1024 9:16 Portrait/vertical Prompting Guide LTX 2 responds well to cinematographic descriptions. Layer these dimensions: Camera: "Slow dolly forward", "Aerial drone shot", "Tracking shot", "Static wide angle" Lighting: "Golden hour", "Cinematic lighting", "Neon lit", "Soft diffused light" Motion: "Timelapse of...", "Slow motion", "Gentle camera drift", "Gradually transitions" Style: "Shot on 35mm film", "Documentary style", "Clean minimal aesthetic" Negative: Always implicitly avoids "worst quality, blurry, jittery, watermark, text, logo" Keep prompts under 200 words. Be specific about the scene. Good Prompts Bad Prompts Video Production Use Cases B Roll Clips Generate atmospheric 5s shots for cutaways between narrated scenes: Animated Slide Backgrounds Feed a slide screenshot and add subtle motion: Animated Portraits Bring still headshots to life: Stylized Character Cameo (SadTalker Alternative) For non realistic faces — fantasy characters, masked figures, heavy beards, helmets, illustrations — SadTalker often produces uncanny or broken lip sync because it's trained on photoreal humans. LTX 2 image to video is frequently a better choice when lip sync precision isn't critical (the viewer's brain fills in the gap as long as something is moving). Prompt for motion + atmosphere , not phonemes: When LTX 2 wins over SadTalker: Stylized / illustrated / fantasy characters Heavy facial hair or accessories obscuring the mouth Masked or helmeted figures Short cameo lines where atmosphere matters more than precision Dramatic VO rather than dialogue When SadTalker still wins: Photoreal human presenters Full sentences where mouth shape needs to match phonemes Tutorials / talking head explainers where the viewer is effectively reading lips Branded Intro/Outro Generate abstract motion backgrounds for title cards: Combining with Other Tools LTX 2 generates raw clips. Combine with the rest of the toolkit: Workflow Tools Generate clip → upscale ltx2.py → upscale.py Generate clip → add to Remotion ltx2.py → use as <OffthreadVideo in composition Generate image → animate flux2.py → ltx2.py input Generate clip → extract audio ltx2.py → ffmpeg i clip.mp4 vn audio.wav Generate clip → add voiceover ltx2.py → mix with qwen3 tts.py output Technical Details Model: LTX 2.3 22B DiT (Lightricks), bf16 GPU: A100 80GB on Modal (~$2.50/hr) Inference: ~2.5 min per clip (768x512, 121 frames, 30 steps) Cost: ~$0.07 per 5s clip warm, ~$0.12 cold at $2.50/hr (benchmark in docs/ltx2.md) Weights: ~80GB baked into the image. Not kept in VRAM between requests: every request (warm or cold) loads the text encoder and the transformer for each stage, then frees them Output: H.264 MP4 with synchronized ambient audio (24fps) Max duration: ~8s (193 frames) per clip Known Limitations Training data artifacts: ~30% of generations may have unwanted logos/text from training data. Re run with different seed . Text rendering: Cannot reliably generate readable text in video. Use Remotion overlays instead. Max duration: ~8s per clip. Longer content needs stitching. Audio: Generated audio is ambient/environmental only. Use voiceover/music tools for speech and music. License: Community License — free under $10M revenue, commercial license needed above that. Setup Important: HuggingFace token needs read access scope. Its account needs access to Google's gated [Gemma 3 text encoder](https://huggingface.co/google/gemma 3 12b it qat q4 0 unquantized); Google approves these requests by hand, so ask before deploying. Unauthenticated downloads are severely rate limited. LTX 2.5 (opt in) LTX2 VERSION=2.5 at deploy time swaps LTX 2.3 for LTX 2.5 behind the same endpoint, request format and tool. LTX 2.3 stays the default: benchmarked against it, 2.5 is ~25 45% slower per clip and the crt terminal LoRA only works on 2.3 (see docs/ltx2.md ). Access: Lightricks/LTX 2.5 is gated. Click "Agree and Access" on [the model page](https://huggingface.co/Lightricks/LTX 2.5) with the token's account first (approved automatically; it shares your contact info). It bundles a Gemma 4 text encoder, so 2.5 doesn't need the Gemma 3 access. License: LTX 2.x Community License. Free under $10M annual revenue, commercial use included; don't remove watermark or provenance features. Check: the tool prints Model: Lightricks/LTX 2.5 (or Lightricks/LTX 2.3 ) after each clip. LoRAs: crt terminal doesn't keep its look on 2.5, see Style LoRAs above. Speed: about 25 45% slower per clip than 2.3 (benchmark in docs/ltx2.md ). Details, differences and the benchmark plan: docs/ltx2.md .