A fine-tuned In-Context LoRA (IC-LoRA) adapter for LTX-Video 2.3 (22B) that acts
as a virtual second camera: give it a reference video and a short
camera-angle prompt, and it re-renders the same scene from the requested new
viewpoint keeping the subject and content, changing where the camera stands.
v0.9 — proof-of-concept. Trained on synthetic multi-view data; it
generalizes to real footage but has clear limits (see Limitations). Feedback
welcome.
Example outputs
Each video shows the reference (top) and the generated new camera view
(bottom) for the given prompt.
Load LTX2.3-22B_IC-LoRA-CrossView-Prompt_v0.9_13700.safetensors as the LoRA.
Provide a reference video — the scene you want to re-shoot from a new angle.
Provide a camera-angle prompt (see the vocabulary below). No starting image
is needed
Prompt vocabulary (important)
Unlike a free-text LoRA, this model was trained on a fixed, discrete camera
vocabulary. Every prompt must start with the trigger crossview. followed by
the template:
crossview. new camera angle: {azimuth}, {elevation}, {distance}.
Axis
Allowed phrases
azimuth (orbit around the subject)
same angle · slightly to the left · slightly to the right · to the left · to the right · far to the left · far to the right
elevation (camera height)
lower · same height · higher
distance (to the subject)
closer · same distance · further
left / right = the new camera moves to that side around the subject.
higher = the camera looks down from above; lower = looks up from below.
closer / further = the camera's distance to the subject.
All 63 valid combinations are listed in
captions_all_63.txt. Use these exact phrases — the
model learned this vocabulary specifically, so synonyms ("45 degrees left",
"slightly leftward") work less reliably.
Example prompts:
crossview. new camera angle: to the right, lower, closer.
crossview. new camera angle: to the left, higher, further.
crossview. new camera angle: same angle, same height, closer.
Tips
Angle size & chaining: the model works most reliably on small,
single-step angle changes. For a larger viewpoint shift, chain several
small steps — feed the generated view back in as the new reference and apply
another small angle.
Full prompt list: every prompt used to train this model is in
captions_all_63.txt — use these exact phrases.
Distilled model: the LoRA was trained on the full (non-distilled) LTX-2.3.
On distilled few-step workflows its effect is weaker — try a LoRA strength
of 1.2–1.5, and/or run it in the first (non-distilled) pass.
Training Details
This IC-LoRA was trained on RunPod cloud GPUs
(NVIDIA RTX PRO 6000 Blackwell, 96 GB).
Parameter
Value
Base model
LTX-Video 2.3 (22B)
Training framework
ltx-trainer (Lightricks)
Training strategy
IC-LoRA (flexible, reference conditioning)
Released checkpoint
step 13,700 (12k linear + 1.7k warm-start continuation)
LoRA rank / alpha
16 / 16
Target modules
attn1, attn2 (to_k/q/v/out) — attention only
Optimizer
AdamW — 2e-4 linear decay (main), 1e-4 constant (continuation)
Timestep sampling
uniform sigma [0.4, 1.0]
Mixed precision
bf16
Batch size
1 (gradient checkpointing enabled)
Conditioning
reference p=1.0 + first_frame p=0.2
Training dataset
294 pairs
Resolution
768x768x81 @ 15fps
Dataset
Trained on SynCamVideo
(KlingTeam, Apache-2.0) — a synthetic multi-camera dataset rendered in Unreal
Engine 5, with 10 static cameras per scene sampled on a hemisphere around the
subject. 294 curated reference/target camera pairs, balanced across the caption vocabulary:
Azimuth bin
Pairs
same angle
42
slightly to the left / right
42 / 42
to the left / right
42 / 42
far to the left / right
42 / 42
Elevation and distance are mixed roughly evenly within each azimuth bin.
Captions are camera-delta only (no scene description).
The exact curated pairs, captions and clips used to train this LoRA are released
as a companion dataset:
CrossView Prompt Dataset.
Limitations
Viewpoint range: the training cameras span a frontal sector (~±60°
azimuth max) — "view from behind" is out of range.
Distilled model: weaker on distilled few-step models (see Tips).
License
This LoRA is shared under the Apache License 2.0. It was trained entirely on
the SynCamVideo
dataset, which is itself Apache-2.0 licensed, so the training data places no
additional restrictions on this adapter and it can be released under the same
permissive terms.
Note: using this LoRA requires the LTX-Video 2.3 base model, which is
governed by its own license — please review Lightricks' terms for the base
weights separately.
Support
Producing and sharing this kind of open-source work requires renting cloud GPUs, which gets expensive quickly. If you find it useful and would like me to keep contributing, your support is very much appreciated: