--- license: apache-2.0 base_model: Wan-AI/Wan2.1-I2V-14B-720P library_name: diffsynth pipeline_tag: image-to-video tags: - image-to-video - camera-control - video-generation - wan --- # WorldCast — anchor-conditioned camera-control video generation Trained external modules (a source self-attention bank + anchor channel adapter + camera projection, ~2 GB) that attach to a **frozen** Wan2.1-I2V-14B-720P backbone, enabling anchor-viewpoint-conditioned video generation along explicit camera trajectories — `orbit_360` (full orbit ring), `orbit_[_cw|_ccw]` (horizontal arcs of any sweep), `orbit_180_push` / `orbit_360_push` (push-pull arcs), `lemniscate` (figure-8), `orbit_tilt_20` (tilted orbit ring), `spiral` (SEVA 2-turn spiral), `zoom_in` / `zoom_out` (dolly), `turn_left` / `turn_right` (lateral trucks) — with Plücker camera-ray injection and first-frame/body-view anchor conditioning. ## Files > **⚠️ Weights: coming soon.** The checkpoints listed below are not > published yet — they will be added to this repository in an upcoming > update. | File | What it is | |---|---| | `checkpoints/worldcast_bank.safetensors` | the trained modules (`source_self_attn_bank.*` + `anchor_channel_adapter.*`), bank-only — the base DiT weights are NOT inside | | `checkpoints/base_dit.safetensors` | the frozen base the bank was trained against (DiT-compatible weights + `camera_proj` + I2V channel adapter) — the two checkpoints must come from the same release | ## Requirements - Code: the companion inference repository (WorldCast) — inference only, no training code - Base model: [Wan-AI/Wan2.1-I2V-14B-720P](https://huggingface.co/Wan-AI/Wan2.1-I2V-14B-720P) (VAE / text-image encoders come from the base model tree) - GPU: >= 48 GB VRAM recommended for 480x832, 81 frames ## Quickstart ```bash git clone worldcast && cd worldcast pip install -r requirements.txt # place weights mkdir -p checkpoints pretrained cp worldcast_bank.safetensors checkpoints/ cp base_dit.safetensors checkpoints/ # download the Wan2.1 base into pretrained/Wan2.1-I2V-14B-720P/ python demo.py \ --manifest demo_case_traj5.json \ --model_root pretrained/Wan2.1-I2V-14B-720P \ --ckpt checkpoints/worldcast_bank.safetensors \ --init_dit_from checkpoints/base_dit.safetensors ``` ## Sampling defaults 50 steps / cfg 5.0 without a step-distillation LoRA; the bank is architecture-locked to the training line's flags (per-layer proj_out bank on DiT rope, 20 bank layers) — see the companion repository's README for the full flag matrix. ## License Apache-2.0 (the Wan2.1 base is Apache-2.0; these derived weights are released under the same terms).