API reference · Lightricks

lightricks/ltx-2.3-22b/distilled/audio-to-video/lora

Integrate this model through SandBase's unified API, with production-ready schemas and examples.

VIDEOAsyncOpen model
Production endpoint

Send your first request

OpenAI-compatible endpoint with unified authentication and usage tracking.

POSThttps://api.sandbase.ai/v1/run
Model IDlightricks/ltx-2.3-22b/distilled/audio-to-video/lora
01

Input Schema

22 parameters · 2 required · 20 optional

ParameterTypeRequiredDescription
imagestringRequiredOptional URL of an image to use as the first frame of the video.
promptstringRequiredThe prompt to generate the video from.
fpsnumberOptionalThe frames per second of the generated video. · Min: 1 · Max: 60 · Default: 24
seedintegerOptionalThe seed for the random number generator.
audiostringOptionalThe URL of the audio to generate the video from.
lorasobject[]OptionalThe LoRAs to use for the generation.
end_imagestringOptionalThe URL of the image to use as the end of the video.
schedulerstringOptionalThe scheduler to use. · Options: ltx2, linear_quadratic, beta · Default: "ltx2"
ltx2linear_quadraticbeta
num_framesintegerOptionalThe number of frames to generate. · Min: 9 · Max: 481 · Default: 121
video_sizestringOptionalThe size of the generated video. Use 'auto' to match the input image dimensions if provided. · Options: auto, square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9 · Default: "landscape_16_9"
autosquare_hdsquareportrait_4_3portrait_16_9landscape_4_3landscape_16_9
camera_lorastringOptionalThe camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera. · Options: dolly_in, dolly_out, dolly_left, dolly_right, jib_up, jib_down, static, none · Default: "none"
dolly_indolly_outdolly_leftdolly_rightjib_upjib_downstaticnone
video_qualitystringOptionalThe quality of the generated video. · Options: low, medium, high, maximum · Default: "high"
lowmediumhighmaximum
audio_strengthnumberOptionalAudio conditioning strength. Values below 1.0 will allow the model to change the audio, while a value of exactly 1.0 will use the input audio without modification. · Min: 0 · Max: 1 · Default: 1
image_strengthnumberOptionalThe strength of the image to use for the video generation. · Min: 0 · Max: 1 · Default: 1
use_multiscalebooleanOptionalWhether to use multi-scale generation. If True, the model will generate the video at a smaller scale first, then use the smaller video to guide the generation of a video at or above your requested size. This results in better coherence and details. · Default: true
preprocess_audiobooleanOptionalWhether to preprocess the audio before using it as conditioning. · Default: true
video_write_modestringOptionalThe write mode of the generated video. · Options: fast, balanced, small · Default: "balanced"
fastbalancedsmall
camera_lora_scalenumberOptionalThe scale of the camera LoRA to use. This allows you to control the camera movement of the generated video more accurately than just prompting the model to move the camera. · Min: 0 · Max: 1 · Default: 1
video_output_typestringOptionalThe output type of the generated video. · Options: X264 (.mp4), VP9 (.webm), PRORES4444 (.mov), GIF (.gif) · Default: "X264 (.mp4)"
X264 (.mp4)VP9 (.webm)PRORES4444 (.mov)GIF (.gif)
end_image_strengthnumberOptionalThe strength of the end image to use for the video generation. · Min: 0 · Max: 1 · Default: 1
match_audio_lengthbooleanOptionalWhen enabled, the number of frames will be calculated based on the audio duration and FPS. When disabled, use the specified num_frames. · Default: true
distill_lora_second_pass_scalenumberOptionalThe scale of the distill LoRA to use for the second and subsequent passes. · Min: 0 · Max: 1 · Default: 0.5
02

Output Schema

FieldTypeDescription
idstringUnique identifier for the generation task
statusstringTask status: pending, running, completed, failed, timeout
modelstringModel used for the generation
outputsarrayArray of output items
outputs[].urlstringURL of the generated artifact
outputs[].content_typestringMIME type (e.g. image/png, video/mp4)
errorobject | nullError details if failed, null on success
error.typestringMachine-readable error type code
error.messagestringHuman-readable error description

Async Workflow

This model uses asynchronous execution. Submit a request and poll for the result.

  1. Submit — POST to /v1/run, receive an id
  2. Poll — GET /v1/run/{id} until status is completed, failed, or timeout
  3. Retrieve — Read outputs from the completed response
03

Code Examples

Ready-to-run snippets

# Step 1: Submit
curl -X POST https://api.sandbase.ai/v1/run \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
  "model": "lightricks/ltx-2.3-22b/distilled/audio-to-video/lora",
  "fps": 24,
  "audio": "https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_audio_0.mp3",
  "image": "https://static.sandbase.ai/examples/lightricks/ltx-2.3-22b/distilled/audio-to-video/lora/input_image_1.png",
  "prompt": "A woman speaks to the camera",
  "scheduler": "ltx2",
  "num_frames": 121,
  "video_size": "landscape_16_9",
  "camera_lora": "none",
  "video_quality": "high",
  "audio_strength": 1,
  "image_strength": 1,
  "use_multiscale": true,
  "preprocess_audio": true,
  "video_write_mode": "balanced",
  "camera_lora_scale": 1,
  "video_output_type": "X264 (.mp4)",
  "end_image_strength": 1,
  "match_audio_length": true,
  "distill_lora_second_pass_scale": 0.5
}'

# Step 2: Poll result (replace <id>)
curl https://api.sandbase.ai/v1/run/<id> \
  -H "Authorization: Bearer YOUR_API_KEY"