MODEL IDlightricks:ltx@2.5-pro
live

LTX-2.5 Pro

Lightricks
by Lightricks

LTX-2.5 Pro is the higher-capability model in the LTX 2.5 video family, built for production-quality multimodal video creation and transformation. It supports text-to-video, image-to-video, and audio-to-video workflows together with retake, extension, and reframing operations, pairing synchronized audio generation with higher-resolution output and longer-form clip control. It is well suited to commercial video production, concept films, storyboards, speaking-character shots, and other workflows that need stronger quality, broader modality support, and more flexible post-generation iteration than the Fast tier.

LTX-2.5 Pro

Camera movement with LTX-2.5 Pro

How to control the camera in LTX-2.5 Pro: the eight settings.cameraMovement presets, the prompt camera vocabulary, and when to reach for a reliable preset versus a described move.

Introduction

LTX-2.5 Pro gives you the camera two ways. You can describe the move in the prompt, which reads a full cinematographer's vocabulary, or you can set settings.cameraMovement, a short list of fixed presets that apply the same clean move every time. One is expressive, the other is repeatable, and knowing which to reach for is the whole job.

A crane-and-pull-back reveal, written straight into the prompt

A cinematic urban lifestyle shot. A young woman in a long coat stands at the edge of a rooftop terrace at golden hour, looking out over the city, the low sun flaring behind the skyline. The camera cranes slowly up and pulls back, rising above her and opening the frame to reveal the vast sprawl of the city stretching to the horizon behind her. Warm golden light, a cinematic teal-and-amber grade, crisp detail. Sound: a soft high-altitude wind, a faint distant city hum, no music.

That reveal is a compound move the presets do not cover, so it came from prose. This guide covers the request, the eight presets and when they win, the camera vocabulary the prompt understands, and how to choose between them. Directing the subject's motion inside the frame is in the prompting guide.

The request

The preset path is one field, settings.cameraMovement, set to one of eight values.

import { createClient } from '@runware/sdk'

const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()

const [result] = await client.run({
  model: 'lightricks:ltx@2.5-pro',
  positivePrompt: 'A minimalist product film. A sculptural matte-black designer lounge chair sits on a smooth pale concrete floor in a bright studio, a slim floor lamp glowing softly behind it, clean soft daylight from the left. Clean commercial product cinematography, neutral color grade, shallow depth of field.',
  width: 1920,
  height: 1080,
  duration: 6,
  settings: {
    cameraMovement: 'dolly_in'
  }
})
import asyncio
import os

from runware import Runware


async def main():
    async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
        results = await client.run({
            "model": "lightricks:ltx@2.5-pro",
            "positivePrompt": "A minimalist product film. A sculptural matte-black designer lounge chair sits on a smooth pale concrete floor in a bright studio, a slim floor lamp glowing softly behind it, clean soft daylight from the left. Clean commercial product cinematography, neutral color grade, shallow depth of field.",
            "width": 1920,
            "height": 1080,
            "duration": 6,
            "settings": {
                "cameraMovement": "dolly_in"
            }
        })


asyncio.run(main())
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "videoInference",
      "taskUUID": "a8e4f7b6-0c1d-4c45-a6f7-182930415d6e",
      "model": "lightricks:ltx@2.5-pro",
      "positivePrompt": "A minimalist product film. A sculptural matte-black designer lounge chair sits on a smooth pale concrete floor in a bright studio, a slim floor lamp glowing softly behind it, clean soft daylight from the left. Clean commercial product cinematography, neutral color grade, shallow depth of field.",
      "width": 1920,
      "height": 1080,
      "duration": 6,
      "settings": {
        "cameraMovement": "dolly_in"
      }
    }
  ]'
runware run lightricks:ltx@2.5-pro \
  positivePrompt="A minimalist product film. A sculptural matte-black designer lounge chair sits on a smooth pale concrete floor in a bright studio, a slim floor lamp glowing softly behind it, clean soft daylight from the left. Clean commercial product cinematography, neutral color grade, shallow depth of field." \
  width=1920 \
  height=1080 \
  duration=6 \
  settings.cameraMovement=dolly_in
{
  "taskType": "videoInference",
  "taskUUID": "a8e4f7b6-0c1d-4c45-a6f7-182930415d6e",
  "model": "lightricks:ltx@2.5-pro",
  "positivePrompt": "A minimalist product film. A sculptural matte-black designer lounge chair sits on a smooth pale concrete floor in a bright studio, a slim floor lamp glowing softly behind it, clean soft daylight from the left. Clean commercial product cinematography, neutral color grade, shallow depth of field.",
  "width": 1920,
  "height": 1080,
  "duration": 6,
  "settings": {
    "cameraMovement": "dolly_in"
  }
}
Response
[
  {
    "taskType": "videoInference",
    "taskUUID": "a8e4f7b6-0c1d-4c45-a6f7-182930415d6e",
    "videoUUID": "4e5f6a7b-8c9d-0123-efab-345678901234",
    "videoURL": "https://vm.runware.ai/video/os/a14d18/ws/2/vi/4e5f6a7b-8c9d-0123-efab-345678901234.mp4"
  }
]
  • settings.cameraMovement takes one preset. It applies a fixed camera move to the shot without any description in the prompt.
  • It runs on text-to-video and image-to-video. It does not apply on the audio-driven path, where the camera holds on the performance.
  • The prompt still owns the subject and the scene. The preset only sets how the camera moves, so describe what is in frame as usual and leave the move to the field.

The eight presets

The presets fall into four groups: dolly (in, out, left, right) moves the camera through space, jib (up, down) changes its height, static locks it off, and focus_shift racks focus between subjects. Every clip below runs the exact same chair prompt. Only settings.cameraMovement changes.

The presets win when reliability matters more than range. Each one gives the same clean move on every render, so a catalog of fifty products can all get an identical dolly_in with no prompt drift between them, and static guarantees a locked frame where a prompt sometimes lets the camera wander. When you need a specific, repeatable move and nothing fancier, the field is faster and steadier than describing it.

Camera language in the prompt

The prompt reads a wider vocabulary than the eight presets, and it handles moves they cannot. It knows push in and pull back, track, tilt, pan, handheld, over-the-shoulder, and the crane in the hero, and it takes compound moves that combine several at once. The clearest gap is the orbit: a full circle around a subject, which no preset offers.

A full 360 orbit, a move the presets do not cover

A premium product film. A sleek matte-charcoal cafe-racer motorcycle sits centered on a dark reflective studio floor under a single bank of soft overhead light. The camera performs a smooth continuous three-hundred-and-sixty degree orbit around the motorcycle, the light sliding across the tank, the spokes, and the leather seat as the machine turns through the frame, staying perfectly centered. Clean commercial product cinematography, moody grade, crisp detail. Sound: a low studio room tone, no music.

Describe the move in the terms a crew uses, and say where it ends: "the camera pushes in until the tank fills the frame" lands more reliably than "push in" alone, because the model has a target to complete the motion against. The prompt path trades the preset's guaranteed repeatability for reach, so reach for it when the shot needs a move the eight presets do not have, or a combination of them.

Choosing and combining

The decision is short. Use a preset when you want a specific move to come out identical across renders, a product line, a template, a batch. Use the prompt when you want a move the presets do not cover, an orbit, a handheld follow, a crane, or two moves at once. And you can run both: set a cameraMovement preset for the base camera move and let the prompt direct the subject's action inside it, so the camera stays predictable while the performance carries the shot.

Tips

  1. Reach for a preset when you need repeatability. settings.cameraMovement gives the same clean move on every render, which is what a batch or a template wants.

  2. Use static to lock the frame. When the shot lives on subject motion, the static preset guarantees a fixed camera where a prompt sometimes drifts.

  3. Describe the move in the prompt for range. Orbit, handheld, over-the-shoulder, crane, and compound moves live in the prompt vocabulary, not the eight presets.

  4. Say where a described move ends. "Push in until the face fills the frame" completes more cleanly than "push in", because the model has a target.

  5. Combine the two. A preset for the base camera move plus a prompt for the subject's action keeps the camera predictable while the performance does the work.

  6. Remember the audio-driven exception. cameraMovement does not apply when driving a shot from an audio track, where the camera holds on the performance.