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

Audio-driven characters with LTX-2.5 Pro

How to drive a lip-synced performance with LTX-2.5 Pro: pairing inputs.audio with a reference image, matching voice to subject, and the length, resolution, and framing rules.

Introduction

The native audio guide has LTX-2.5 Pro write a voice for you. This path runs the other direction: you bring the audio, a voiceover you recorded or a song, and LTX drives a subject to perform it in lip-sync. Hand it one still of a person or character plus an audio track, and it animates the face to speak or sing the words exactly.

One reference photo and one voice track, driven to a lip-synced take

A confident young founder in a bright modern office speaks warmly to the camera, gesturing lightly with one hand, her expression natural and engaged. Her lips and expression stay in sync with the voice. Soft office daylight, a clean commercial grade, shallow depth of field.

The founder above never said those words on camera. She came from exactly two inputs, a reference image that fixes who she is and a voice track that supplies what she says:

The image carries identity, the face, the wardrobe, and the setting, so a clean front-facing photo drives a cleaner performance than a busy or turned one. The audio carries the words and the timing, and the clip inherits its exact length, while the prompt directs the delivery and small motions without touching the words. This guide covers the request, framing for the platform, and driving non-human characters. To have the model generate the voice instead of supplying one, see the native audio guide.

The request

The call pairs inputs.audio with a single inputs.referenceImages entry. Both are required together.

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 confident young founder in a bright modern office speaks warmly to the camera, gesturing lightly, her expression natural and engaged, lips in sync with the voice. Soft office daylight, a clean commercial grade.',
  inputs: {
    referenceImages: [
      'https://example.com/founder.jpg'
    ],
    audio: 'https://example.com/voiceover.mp3'
  },
  width: 1920,
  height: 1080
})
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 confident young founder in a bright modern office speaks warmly to the camera, gesturing lightly, her expression natural and engaged, lips in sync with the voice. Soft office daylight, a clean commercial grade.",
            "inputs": {
                "referenceImages": [
                    "https://example.com/founder.jpg"
                ],
                "audio": "https://example.com/voiceover.mp3"
            },
            "width": 1920,
            "height": 1080
        })


asyncio.run(main())
curl https://api.runware.ai/v1 \
  -H "Authorization: Bearer $RUNWARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "taskType": "videoInference",
      "taskUUID": "f7d3e6a5-9b0c-4b34-f5e6-071829304c5d",
      "model": "lightricks:ltx@2.5-pro",
      "positivePrompt": "A confident young founder in a bright modern office speaks warmly to the camera, gesturing lightly, her expression natural and engaged, lips in sync with the voice. Soft office daylight, a clean commercial grade.",
      "inputs": {
        "referenceImages": [
          "https://example.com/founder.jpg"
        ],
        "audio": "https://example.com/voiceover.mp3"
      },
      "width": 1920,
      "height": 1080
    }
  ]'
runware run lightricks:ltx@2.5-pro \
  positivePrompt="A confident young founder in a bright modern office speaks warmly to the camera, gesturing lightly, her expression natural and engaged, lips in sync with the voice. Soft office daylight, a clean commercial grade." \
  inputs.referenceImages.0=https://example.com/founder.jpg \
  inputs.audio=https://example.com/voiceover.mp3 \
  width=1920 \
  height=1080
{
  "taskType": "videoInference",
  "taskUUID": "f7d3e6a5-9b0c-4b34-f5e6-071829304c5d",
  "model": "lightricks:ltx@2.5-pro",
  "positivePrompt": "A confident young founder in a bright modern office speaks warmly to the camera, gesturing lightly, her expression natural and engaged, lips in sync with the voice. Soft office daylight, a clean commercial grade.",
  "inputs": {
    "referenceImages": [
      "https://example.com/founder.jpg"
    ],
    "audio": "https://example.com/voiceover.mp3"
  },
  "width": 1920,
  "height": 1080
}
Response
[
  {
    "taskType": "videoInference",
    "taskUUID": "f7d3e6a5-9b0c-4b34-f5e6-071829304c5d",
    "videoUUID": "3d4e5f6a-7b8c-9012-defa-234567890123",
    "videoURL": "https://vm.runware.ai/video/os/a14d18/ws/2/vi/3d4e5f6a-7b8c-9012-defa-234567890123.mp4"
  }
]
  • inputs.audio is the driving track, a URL or UUID, and inputs.referenceImages is the single subject image. Neither works without the other.
  • The clip runs as long as the audio, from 2 to 20 seconds, so there is no duration to set.
  • Output is 1080p only, 1920 × 1080 or 1080 × 1920. Match the pair to the reference image's orientation.
  • The camera holds. settings.cameraMovement and inputs.frameImages do not apply on this path.
  • The audio can be speech or a song. The prompt describes the look and the performance, not the words, since the words come from the track.

Framing for the platform

Match the resolution pair to where the clip runs. A 1080 × 1920 portrait reads as native talking-head content on stories and reels, so give the model a vertical reference photo and it frames the performance for the tall crop.

Driven to a vertical take, framed for social

A young man sits in a cozy softly lit room talking directly to the camera like a friend, relaxed and expressive, with small natural hand movements and easy smiles. His lips and expression match the voice exactly. Warm casual lighting, a natural social-video look.

This is the shape of a creator testimonial or a UGC ad: one photo of the presenter, a script in the voice you want, and a vertical take that drops straight into a feed. Keep the reference photo framed the way the final clip should sit, since the model performs within the crop it is given rather than reframing a wide shot.

Driving any character

The reference does not have to be a real person. A stylized character, a mascot, or an illustrated avatar drives the same way, which turns a brand character into a spokesperson that can say anything.

A rendered mascot, lip-synced from that voice

A friendly rounded robot mascot stands in a clean bright studio and speaks cheerfully to the camera, its head tilting and its little arms gesturing. Its mouth and expression stay in sync with the voice. Soft even lighting, a polished 3D-animation look.

Give the character a clear, front-facing mouth in the reference and the lip-sync has something to move. A mascot with a defined face reads well. One with no mouth or a fully abstract shape has nothing to animate. Beyond that the pattern is identical, so an onboarding helper or a branded character can deliver a fresh script whenever you swap the audio.

Tips

  1. Pair audio with one reference image. inputs.audio and a single inputs.referenceImages entry are both required, and neither runs alone.

  2. Let the audio set the length. The clip matches the track from 2 to 20 seconds, so there is no duration field on this path.

  3. Feed a clean, front-facing photo. Identity and framing come from the image, so a sharp, well-lit, forward-facing subject drives a cleaner lip-sync than a turned or busy one.

  4. Match the resolution to the reference. Output is 1080p only, so pass 1920 × 1080 or 1080 × 1920 to match the photo's orientation and the target platform.

  5. Keep the prompt off the words. Describe delivery and small motions, and let the track carry the dialogue, since the spoken words come from the audio, not the prompt.

  6. Drive characters, not just people. A mascot or avatar with a clear front-facing mouth performs the same way, turning a brand character into a spokesperson.