---
license: cc-by-nc-4.0
base_model: Lightricks/LTX-2.3-22B
library_name: diffusers
---
# LTX-2.3 — 360° Equirectangular Outpainting IC-LoRA · **v0.1**
**Proof-of-concept** IC-LoRA adapter for [Lightricks/LTX-2.3-22B](https://huggingface.co/Lightricks) that
outpaints standard widescreen footage into a full **360° equirectangular** projection for immersive/VR viewing.
> This is an **early v0.1 release**. Expect rough edges, limited subject variety, and inconsistent
> coherence outside the sweet spot described below. A new version with a much larger, more diverse
> dataset is planned.
---
## Samples
Three clips from the model. `sweep` is a rendered 2D camera pan through the
360° output — the easiest way to judge results without a VR player.
`fl-eq` shows the flat source and the equirect output side-by-side.
### Clip 1 — sweep
Side-by-side (flat input · equirect output):
### Clip 2 — sweep
Side-by-side:
### Clip 3 — sweep
Side-by-side:
Raw equirectangular outputs (load in a 360° player for VR):
[clip1-eq.mp4](./samples/clip1-eq.mp4) ·
[clip2-eq.mp4](./samples/clip2-eq.mp4) ·
[clip3-eq.mp4](./samples/clip3-eq.mp4)
## What it does
- **Input**: a flat 2.39:1 (cinemascope) clip and a matching equirectangular *reference* (the input
projected into the equirect canvas, with the unknown regions left masked/black)
- **Output**: the model fills in the masked regions, turning the flat shot into a plausible
360° equirectangular video that can be viewed in a VR/360 player
Intended for transforming existing live-action or cinematic footage into immersive content.
## Sweet spot (v0.1)
The v0.1 model was tuned toward a deliberately narrow domain to validate the approach:
- **Semi-static establishing city / urban scenes** (no heavy camera motion)
- **~100° horizontal field of view** in the source clip
- **2.39:1 source aspect** (standard cinemascope)
It will **generalize poorly** outside these conditions — fast action, extreme close-ups, heavily
stylised imagery, or very different FOVs are not reliably handled yet.
## Files
| File | What it is |
|---|---|
| `ltx-2.3-22b-ic-lora-360-equirect-poc-step3500.safetensors` | The LoRA weights (final step 3500 checkpoint, ~1.3 GB) |
| `Equirect-Outpaint.json` | Reference ComfyUI workflow wired end-to-end for this LoRA |
| `samples/clipN-fl-eq.mp4` | Flat input + equirect output side-by-side (3626×960) |
| `samples/clipN-eq.mp4` | Raw equirectangular output (1920×960) — load in a 360° player |
| `samples/clipN-sweep.mp4` | 2D camera sweep through the 360° output (1920×1080) for quick preview without a VR player |
Three sample clips (`clip1`, `clip2`, `clip3`) are included under `samples/`.
## Usage
Load on top of `ltx-2.3-22b-dev.safetensors` with the LTX-2 `video_to_video` pipeline and pass:
- **Trigger word**: `equirectangular` (works without any trigger word or prompt too, but with a descriptive prompt you can direct the content of outpainted part)
- **Reference video**: your source clip projected into the equirect canvas with unknown regions masked
- **Resolution**: 1920x960, 121 frames, 24 fps
Only tested in ComfyUI with the workflow available in this repo. Please note that the workflow's padding node crops your input footage to 2.39:1, you can select whether it's cut from center, top or bottom. Other aspect ratios will work poorly in this early version.
### Companion tooling
A small ComfyUI helper pack — **[ComfyUI-EquirectProjector](https://github.com/Burgstall-labs/ComfyUI-EquirectProjector)** —
was written alongside this LoRA to produce the masked equirectangular reference from a flat clip.
Pair it with the standard LTX-2 video-to-video nodes. The `Equirect-Outpaint.json` workflow in this
repo shows the exact wiring.
## Training (v0.1)
| | |
|--|--|
| Base model | LTX-2.3-22B (dev) |
| Strategy | IC-LoRA (`video_to_video`) |
| Rank / alpha | 128 / 128 |
| Target modules | video self+cross attention + FFN |
| Resolution | 1024×512, 41 frames @ 24 fps |
| Optimizer | Prodigy (D-Adaptation), lr=1.0, constant |
| Precision | bf16, gradient checkpointing |
| Steps | 3500 |
| Hardware | 1× NVIDIA H100 80GB |
| Dataset | Small curated POC set (not released) — semi-static city establishing clips |
The final **step 3500** checkpoint is shipped here. Intermediate checkpoints were used for
validation during training but aren't included in this release.
## What's next
Next version is planned on a significantly larger and more diverse dataset covering:
- Broader subject matter (interiors, landscapes, crowds, vehicles, …)
- Varied input FOVs and focal lengths
- A wider range of camera motion — not just static establishing shots
- Better handling of the polar regions (top/bottom caps of the equirect canvas)
## Limitations
- Does not model the top/bottom caps of the sphere well — expect stretching or repetition
- Struggles with busy motion and fast cuts
- Prompt adherence is weak; conditioning is dominated by the reference video
- Outputs are not a substitute for natively captured 360 footage — this is a creative
re-projection, not a reconstruction
## Acknowledgements
- First part of the training done at ADOS Paris event in collaboration with Cseti (https://huggingface.co/Cseti), NebSH (https://huggingface.co/Nebsh) and S4f3ty_Marc (https://huggingface.co/s4f3tymarc). Good times, thank you guys.
- Advice from oumoumad (https://huggingface.co/oumoumad) in IC-LoRA training altogether has been very valuable to me. The workflow included in this release is modified from oumoumad's IC-LoRA workflow.
## License
CC BY-NC 4.0