lightricks / ltx-video-0.9.7
DiT-based 13b video generation model, creating 30fps video
Prediction
lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815IDx1jn9segfdrma0cpsc48z29tv8StatusSucceededSourceWebHardwareL40STotal durationCreatedInput
- fps
- 24
- width
- 704
- height
- 480
- prompt
- A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman's face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.
- num_frames
- 161
- guidance_scale
- 3
- negative_prompt
- worst quality, inconsistent motion, blurry, jittery, distorted
- num_inference_steps
- 50
{ "fps": 24, "width": 704, "height": 480, "prompt": "A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman's face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", { input: { fps: 24, width: 704, height: 480, prompt: "A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman's face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.", num_frames: 161, guidance_scale: 3, negative_prompt: "worst quality, inconsistent motion, blurry, jittery, distorted", num_inference_steps: 50 } } ); // To access the file URL: console.log(output.url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", input={ "fps": 24, "width": 704, "height": 480, "prompt": "A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman's face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } ) print(output)
To learn more, take a look at the guide on getting started with Python.
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", "input": { "fps": 24, "width": 704, "height": 480, "prompt": "A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman\'s face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
Output
{ "completed_at": "2025-05-13T19:06:50.797937Z", "created_at": "2025-05-13T19:04:34.683000Z", "data_removed": false, "error": null, "id": "x1jn9segfdrma0cpsc48z29tv8", "input": { "fps": 24, "width": 704, "height": 480, "prompt": "A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman's face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }, "logs": "Using seed: 10311\nOriginal inputs: width=704, height=480, num_frames=161\nProcessed inputs: width=704, height=480, num_frames=161\n[~] Using Text-to-Video pipeline\n[~] Generating video with prompt: 'A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman's face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.'\n 0%| | 0/50 [00:00<?, ?it/s]\n 2%|▏ | 1/50 [00:00<00:36, 1.34it/s]\n 4%|▍ | 2/50 [00:01<00:26, 1.80it/s]\n 6%|▌ | 3/50 [00:01<00:29, 1.59it/s]\n 8%|▊ | 4/50 [00:02<00:30, 1.51it/s]\n 10%|█ | 5/50 [00:03<00:30, 1.47it/s]\n 12%|█▏ | 6/50 [00:04<00:30, 1.45it/s]\n 14%|█▍ | 7/50 [00:04<00:30, 1.43it/s]\n 16%|█▌ | 8/50 [00:05<00:29, 1.42it/s]\n 18%|█▊ | 9/50 [00:06<00:29, 1.41it/s]\n 20%|██ | 10/50 [00:06<00:28, 1.41it/s]\n 22%|██▏ | 11/50 [00:07<00:27, 1.41it/s]\n 24%|██▍ | 12/50 [00:08<00:27, 1.40it/s]\n 26%|██▌ | 13/50 [00:09<00:26, 1.40it/s]\n 28%|██▊ | 14/50 [00:09<00:25, 1.40it/s]\n 30%|███ | 15/50 [00:10<00:25, 1.40it/s]\n 32%|███▏ | 16/50 [00:11<00:24, 1.40it/s]\n 34%|███▍ | 17/50 [00:11<00:23, 1.40it/s]\n 36%|███▌ | 18/50 [00:12<00:22, 1.40it/s]\n 38%|███▊ | 19/50 [00:13<00:22, 1.39it/s]\n 40%|████ | 20/50 [00:14<00:21, 1.39it/s]\n 42%|████▏ | 21/50 [00:14<00:20, 1.39it/s]\n 44%|████▍ | 22/50 [00:15<00:20, 1.39it/s]\n 46%|████▌ | 23/50 [00:16<00:19, 1.39it/s]\n 48%|████▊ | 24/50 [00:16<00:18, 1.39it/s]\n 50%|█████ | 25/50 [00:17<00:17, 1.39it/s]\n 52%|█████▏ | 26/50 [00:18<00:17, 1.39it/s]\n 54%|█████▍ | 27/50 [00:19<00:16, 1.39it/s]\n 56%|█████▌ | 28/50 [00:19<00:15, 1.39it/s]\n 58%|█████▊ | 29/50 [00:20<00:15, 1.39it/s]\n 60%|██████ | 30/50 [00:21<00:14, 1.39it/s]\n 62%|██████▏ | 31/50 [00:21<00:13, 1.39it/s]\n 64%|██████▍ | 32/50 [00:22<00:12, 1.39it/s]\n 66%|██████▌ | 33/50 [00:23<00:12, 1.39it/s]\n 68%|██████▊ | 34/50 [00:24<00:11, 1.39it/s]\n 70%|███████ | 35/50 [00:24<00:10, 1.39it/s]\n 72%|███████▏ | 36/50 [00:25<00:10, 1.39it/s]\n 74%|███████▍ | 37/50 [00:26<00:09, 1.39it/s]\n 76%|███████▌ | 38/50 [00:27<00:08, 1.39it/s]\n 78%|███████▊ | 39/50 [00:27<00:07, 1.39it/s]\n 80%|████████ | 40/50 [00:28<00:07, 1.38it/s]\n 82%|████████▏ | 41/50 [00:29<00:06, 1.38it/s]\n 84%|████████▍ | 42/50 [00:29<00:05, 1.38it/s]\n 86%|████████▌ | 43/50 [00:30<00:05, 1.38it/s]\n 88%|████████▊ | 44/50 [00:31<00:04, 1.38it/s]\n 90%|█████████ | 45/50 [00:32<00:03, 1.38it/s]\n 92%|█████████▏| 46/50 [00:32<00:02, 1.38it/s]\n 94%|█████████▍| 47/50 [00:33<00:02, 1.38it/s]\n 96%|█████████▌| 48/50 [00:34<00:01, 1.38it/s]\n 98%|█████████▊| 49/50 [00:34<00:00, 1.38it/s]\n100%|██████████| 50/50 [00:35<00:00, 1.38it/s]\n100%|██████████| 50/50 [00:35<00:00, 1.40it/s]\n[+] Video generation complete: output.mp4", "metrics": { "predict_time": 46.967726748, "total_time": 136.114937 }, "output": "https://replicate.delivery/xezq/vRjrsgLsBbosG1TMegwb0ly5a72YtwrejnrZdk1VeosUSpYpA/output.mp4", "started_at": "2025-05-13T19:06:03.830211Z", "status": "succeeded", "urls": { "stream": "https://stream.replicate.com/v1/files/bcwr-peutmyepbaz2dztdlreeqx4zgutcixf27aop2ivgbzq4un2ujegq", "get": "https://api.replicate.com/v1/predictions/x1jn9segfdrma0cpsc48z29tv8", "cancel": "https://api.replicate.com/v1/predictions/x1jn9segfdrma0cpsc48z29tv8/cancel" }, "version": "b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815" }
Generated inUsing seed: 10311 Original inputs: width=704, height=480, num_frames=161 Processed inputs: width=704, height=480, num_frames=161 [~] Using Text-to-Video pipeline [~] Generating video with prompt: 'A woman with blood on her face and a white tank top looks down and to her right, then back up as she speaks. She has dark hair pulled back, light skin, and her face and chest are covered in blood. The camera angle is a close-up, focused on the woman's face and upper torso. The lighting is dim and blue-toned, creating a somber and intense atmosphere. The scene appears to be from a movie or TV show.' 0%| | 0/50 [00:00<?, ?it/s] 2%|▏ | 1/50 [00:00<00:36, 1.34it/s] 4%|▍ | 2/50 [00:01<00:26, 1.80it/s] 6%|▌ | 3/50 [00:01<00:29, 1.59it/s] 8%|▊ | 4/50 [00:02<00:30, 1.51it/s] 10%|█ | 5/50 [00:03<00:30, 1.47it/s] 12%|█▏ | 6/50 [00:04<00:30, 1.45it/s] 14%|█▍ | 7/50 [00:04<00:30, 1.43it/s] 16%|█▌ | 8/50 [00:05<00:29, 1.42it/s] 18%|█▊ | 9/50 [00:06<00:29, 1.41it/s] 20%|██ | 10/50 [00:06<00:28, 1.41it/s] 22%|██▏ | 11/50 [00:07<00:27, 1.41it/s] 24%|██▍ | 12/50 [00:08<00:27, 1.40it/s] 26%|██▌ | 13/50 [00:09<00:26, 1.40it/s] 28%|██▊ | 14/50 [00:09<00:25, 1.40it/s] 30%|███ | 15/50 [00:10<00:25, 1.40it/s] 32%|███▏ | 16/50 [00:11<00:24, 1.40it/s] 34%|███▍ | 17/50 [00:11<00:23, 1.40it/s] 36%|███▌ | 18/50 [00:12<00:22, 1.40it/s] 38%|███▊ | 19/50 [00:13<00:22, 1.39it/s] 40%|████ | 20/50 [00:14<00:21, 1.39it/s] 42%|████▏ | 21/50 [00:14<00:20, 1.39it/s] 44%|████▍ | 22/50 [00:15<00:20, 1.39it/s] 46%|████▌ | 23/50 [00:16<00:19, 1.39it/s] 48%|████▊ | 24/50 [00:16<00:18, 1.39it/s] 50%|█████ | 25/50 [00:17<00:17, 1.39it/s] 52%|█████▏ | 26/50 [00:18<00:17, 1.39it/s] 54%|█████▍ | 27/50 [00:19<00:16, 1.39it/s] 56%|█████▌ | 28/50 [00:19<00:15, 1.39it/s] 58%|█████▊ | 29/50 [00:20<00:15, 1.39it/s] 60%|██████ | 30/50 [00:21<00:14, 1.39it/s] 62%|██████▏ | 31/50 [00:21<00:13, 1.39it/s] 64%|██████▍ | 32/50 [00:22<00:12, 1.39it/s] 66%|██████▌ | 33/50 [00:23<00:12, 1.39it/s] 68%|██████▊ | 34/50 [00:24<00:11, 1.39it/s] 70%|███████ | 35/50 [00:24<00:10, 1.39it/s] 72%|███████▏ | 36/50 [00:25<00:10, 1.39it/s] 74%|███████▍ | 37/50 [00:26<00:09, 1.39it/s] 76%|███████▌ | 38/50 [00:27<00:08, 1.39it/s] 78%|███████▊ | 39/50 [00:27<00:07, 1.39it/s] 80%|████████ | 40/50 [00:28<00:07, 1.38it/s] 82%|████████▏ | 41/50 [00:29<00:06, 1.38it/s] 84%|████████▍ | 42/50 [00:29<00:05, 1.38it/s] 86%|████████▌ | 43/50 [00:30<00:05, 1.38it/s] 88%|████████▊ | 44/50 [00:31<00:04, 1.38it/s] 90%|█████████ | 45/50 [00:32<00:03, 1.38it/s] 92%|█████████▏| 46/50 [00:32<00:02, 1.38it/s] 94%|█████████▍| 47/50 [00:33<00:02, 1.38it/s] 96%|█████████▌| 48/50 [00:34<00:01, 1.38it/s] 98%|█████████▊| 49/50 [00:34<00:00, 1.38it/s] 100%|██████████| 50/50 [00:35<00:00, 1.38it/s] 100%|██████████| 50/50 [00:35<00:00, 1.40it/s] [+] Video generation complete: output.mp4
Prediction
lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815IDqmyvpkc8c1rma0cpsxe9jh7dwmStatusSucceededSourceWebHardwareL40STotal durationCreatedInput
- fps
- 24
- width
- 704
- height
- 480
- prompt
- Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.
- num_frames
- 161
- guidance_scale
- 3
- negative_prompt
- worst quality, inconsistent motion, blurry, jittery, distorted
- num_inference_steps
- 50
{ "fps": 24, "image": "https://replicate.delivery/pbxt/N0XnIwk5PobplTd9hSKlPZrGgZvwYa8ySIGAt0BQa9bgmA6y/oranges.png", "width": 704, "height": 480, "prompt": "Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", { input: { fps: 24, image: "https://replicate.delivery/pbxt/N0XnIwk5PobplTd9hSKlPZrGgZvwYa8ySIGAt0BQa9bgmA6y/oranges.png", width: 704, height: 480, prompt: "Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.", num_frames: 161, guidance_scale: 3, negative_prompt: "worst quality, inconsistent motion, blurry, jittery, distorted", num_inference_steps: 50 } } ); // To access the file URL: console.log(output.url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", input={ "fps": 24, "image": "https://replicate.delivery/pbxt/N0XnIwk5PobplTd9hSKlPZrGgZvwYa8ySIGAt0BQa9bgmA6y/oranges.png", "width": 704, "height": 480, "prompt": "Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } ) print(output)
To learn more, take a look at the guide on getting started with Python.
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", "input": { "fps": 24, "image": "https://replicate.delivery/pbxt/N0XnIwk5PobplTd9hSKlPZrGgZvwYa8ySIGAt0BQa9bgmA6y/oranges.png", "width": 704, "height": 480, "prompt": "Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
Output
{ "completed_at": "2025-05-14T15:16:19.728713Z", "created_at": "2025-05-14T15:14:30.112000Z", "data_removed": false, "error": null, "id": "qmyvpkc8c1rma0cpsxe9jh7dwm", "input": { "fps": 24, "image": "https://replicate.delivery/pbxt/N0XnIwk5PobplTd9hSKlPZrGgZvwYa8ySIGAt0BQa9bgmA6y/oranges.png", "width": 704, "height": 480, "prompt": "Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }, "logs": "Using seed: 39064\nOriginal inputs: width=704, height=480, num_frames=161\nProcessed inputs: width=704, height=480, num_frames=161\n[~] Using Image-to-Video pipeline\n[~] Generating video with prompt: 'Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.'\n 0%| | 0/50 [00:00<?, ?it/s]\n 2%|▏ | 1/50 [00:00<00:39, 1.24it/s]\n 4%|▍ | 2/50 [00:01<00:29, 1.64it/s]\n 6%|▌ | 3/50 [00:02<00:32, 1.45it/s]\n 8%|▊ | 4/50 [00:02<00:33, 1.37it/s]\n 10%|█ | 5/50 [00:03<00:33, 1.34it/s]\n 12%|█▏ | 6/50 [00:04<00:33, 1.31it/s]\n 14%|█▍ | 7/50 [00:05<00:33, 1.30it/s]\n 16%|█▌ | 8/50 [00:05<00:32, 1.29it/s]\n 18%|█▊ | 9/50 [00:06<00:31, 1.28it/s]\n 20%|██ | 10/50 [00:07<00:31, 1.28it/s]\n 22%|██▏ | 11/50 [00:08<00:30, 1.28it/s]\n 24%|██▍ | 12/50 [00:09<00:29, 1.27it/s]\n 26%|██▌ | 13/50 [00:09<00:29, 1.27it/s]\n 28%|██▊ | 14/50 [00:10<00:28, 1.27it/s]\n 30%|███ | 15/50 [00:11<00:27, 1.27it/s]\n 32%|███▏ | 16/50 [00:12<00:26, 1.27it/s]\n 34%|███▍ | 17/50 [00:13<00:26, 1.27it/s]\n 36%|███▌ | 18/50 [00:13<00:25, 1.27it/s]\n 38%|███▊ | 19/50 [00:14<00:24, 1.27it/s]\n 40%|████ | 20/50 [00:15<00:23, 1.27it/s]\n 42%|████▏ | 21/50 [00:16<00:22, 1.26it/s]\n 44%|████▍ | 22/50 [00:17<00:22, 1.26it/s]\n 46%|████▌ | 23/50 [00:17<00:21, 1.26it/s]\n 48%|████▊ | 24/50 [00:18<00:20, 1.26it/s]\n 50%|█████ | 25/50 [00:19<00:19, 1.26it/s]\n 52%|█████▏ | 26/50 [00:20<00:19, 1.26it/s]\n 54%|█████▍ | 27/50 [00:21<00:18, 1.26it/s]\n 56%|█████▌ | 28/50 [00:21<00:17, 1.26it/s]\n 58%|█████▊ | 29/50 [00:22<00:16, 1.26it/s]\n 60%|██████ | 30/50 [00:23<00:15, 1.26it/s]\n 62%|██████▏ | 31/50 [00:24<00:15, 1.26it/s]\n 64%|██████▍ | 32/50 [00:24<00:14, 1.26it/s]\n 66%|██████▌ | 33/50 [00:25<00:13, 1.26it/s]\n 68%|██████▊ | 34/50 [00:26<00:12, 1.26it/s]\n 70%|███████ | 35/50 [00:27<00:11, 1.26it/s]\n 72%|███████▏ | 36/50 [00:28<00:11, 1.26it/s]\n 74%|███████▍ | 37/50 [00:28<00:10, 1.26it/s]\n 76%|███████▌ | 38/50 [00:29<00:09, 1.26it/s]\n 78%|███████▊ | 39/50 [00:30<00:08, 1.26it/s]\n 80%|████████ | 40/50 [00:31<00:07, 1.26it/s]\n 82%|████████▏ | 41/50 [00:32<00:07, 1.26it/s]\n 84%|████████▍ | 42/50 [00:32<00:06, 1.26it/s]\n 86%|████████▌ | 43/50 [00:33<00:05, 1.26it/s]\n 88%|████████▊ | 44/50 [00:34<00:04, 1.26it/s]\n 90%|█████████ | 45/50 [00:35<00:03, 1.26it/s]\n 92%|█████████▏| 46/50 [00:36<00:03, 1.26it/s]\n 94%|█████████▍| 47/50 [00:36<00:02, 1.26it/s]\n 96%|█████████▌| 48/50 [00:37<00:01, 1.25it/s]\n 98%|█████████▊| 49/50 [00:38<00:00, 1.25it/s]\n100%|██████████| 50/50 [00:39<00:00, 1.25it/s]\n100%|██████████| 50/50 [00:39<00:00, 1.27it/s]\n[+] Video generation complete: output.mp4", "metrics": { "predict_time": 59.691900125, "total_time": 109.616713 }, "output": "https://replicate.delivery/xezq/kMeeedc3N8MpVp1VqeYhwNM5fifgPjsP4YglavjpHmU1wlJLF/output.mp4", "started_at": "2025-05-14T15:15:20.036812Z", "status": "succeeded", "urls": { "stream": "https://stream.replicate.com/v1/files/bcwr-ggybkgc22dcfojwds2o632ppuvu6y5i6ur4axozbylrfv7di5hva", "get": "https://api.replicate.com/v1/predictions/qmyvpkc8c1rma0cpsxe9jh7dwm", "cancel": "https://api.replicate.com/v1/predictions/qmyvpkc8c1rma0cpsxe9jh7dwm/cancel" }, "version": "b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815" }
Generated inUsing seed: 39064 Original inputs: width=704, height=480, num_frames=161 Processed inputs: width=704, height=480, num_frames=161 [~] Using Image-to-Video pipeline [~] Generating video with prompt: 'Cinematic tracking shot through an orange grove, weaving between branches heavy with ripe fruit. The camera glides past clusters of oranges swaying in the breeze, leaves rustling gently. Sunlight filters through the canopy, creating soft, shifting patterns of light and shadow on the fruit and foliage. The motion feels smooth and immersive, like floating through a warm, late afternoon scene.' 0%| | 0/50 [00:00<?, ?it/s] 2%|▏ | 1/50 [00:00<00:39, 1.24it/s] 4%|▍ | 2/50 [00:01<00:29, 1.64it/s] 6%|▌ | 3/50 [00:02<00:32, 1.45it/s] 8%|▊ | 4/50 [00:02<00:33, 1.37it/s] 10%|█ | 5/50 [00:03<00:33, 1.34it/s] 12%|█▏ | 6/50 [00:04<00:33, 1.31it/s] 14%|█▍ | 7/50 [00:05<00:33, 1.30it/s] 16%|█▌ | 8/50 [00:05<00:32, 1.29it/s] 18%|█▊ | 9/50 [00:06<00:31, 1.28it/s] 20%|██ | 10/50 [00:07<00:31, 1.28it/s] 22%|██▏ | 11/50 [00:08<00:30, 1.28it/s] 24%|██▍ | 12/50 [00:09<00:29, 1.27it/s] 26%|██▌ | 13/50 [00:09<00:29, 1.27it/s] 28%|██▊ | 14/50 [00:10<00:28, 1.27it/s] 30%|███ | 15/50 [00:11<00:27, 1.27it/s] 32%|███▏ | 16/50 [00:12<00:26, 1.27it/s] 34%|███▍ | 17/50 [00:13<00:26, 1.27it/s] 36%|███▌ | 18/50 [00:13<00:25, 1.27it/s] 38%|███▊ | 19/50 [00:14<00:24, 1.27it/s] 40%|████ | 20/50 [00:15<00:23, 1.27it/s] 42%|████▏ | 21/50 [00:16<00:22, 1.26it/s] 44%|████▍ | 22/50 [00:17<00:22, 1.26it/s] 46%|████▌ | 23/50 [00:17<00:21, 1.26it/s] 48%|████▊ | 24/50 [00:18<00:20, 1.26it/s] 50%|█████ | 25/50 [00:19<00:19, 1.26it/s] 52%|█████▏ | 26/50 [00:20<00:19, 1.26it/s] 54%|█████▍ | 27/50 [00:21<00:18, 1.26it/s] 56%|█████▌ | 28/50 [00:21<00:17, 1.26it/s] 58%|█████▊ | 29/50 [00:22<00:16, 1.26it/s] 60%|██████ | 30/50 [00:23<00:15, 1.26it/s] 62%|██████▏ | 31/50 [00:24<00:15, 1.26it/s] 64%|██████▍ | 32/50 [00:24<00:14, 1.26it/s] 66%|██████▌ | 33/50 [00:25<00:13, 1.26it/s] 68%|██████▊ | 34/50 [00:26<00:12, 1.26it/s] 70%|███████ | 35/50 [00:27<00:11, 1.26it/s] 72%|███████▏ | 36/50 [00:28<00:11, 1.26it/s] 74%|███████▍ | 37/50 [00:28<00:10, 1.26it/s] 76%|███████▌ | 38/50 [00:29<00:09, 1.26it/s] 78%|███████▊ | 39/50 [00:30<00:08, 1.26it/s] 80%|████████ | 40/50 [00:31<00:07, 1.26it/s] 82%|████████▏ | 41/50 [00:32<00:07, 1.26it/s] 84%|████████▍ | 42/50 [00:32<00:06, 1.26it/s] 86%|████████▌ | 43/50 [00:33<00:05, 1.26it/s] 88%|████████▊ | 44/50 [00:34<00:04, 1.26it/s] 90%|█████████ | 45/50 [00:35<00:03, 1.26it/s] 92%|█████████▏| 46/50 [00:36<00:03, 1.26it/s] 94%|█████████▍| 47/50 [00:36<00:02, 1.26it/s] 96%|█████████▌| 48/50 [00:37<00:01, 1.25it/s] 98%|█████████▊| 49/50 [00:38<00:00, 1.25it/s] 100%|██████████| 50/50 [00:39<00:00, 1.25it/s] 100%|██████████| 50/50 [00:39<00:00, 1.27it/s] [+] Video generation complete: output.mp4
Prediction
lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815IDtrtmgq24tsrm80cpsxkb30rc1cStatusSucceededSourceWebHardwareL40STotal durationCreatedInput
- fps
- 24
- width
- 704
- height
- 480
- prompt
- Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.
- num_frames
- 161
- guidance_scale
- 3
- negative_prompt
- worst quality, inconsistent motion, blurry, jittery, distorted
- num_inference_steps
- 50
{ "fps": 24, "width": 704, "height": 480, "prompt": "Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", { input: { fps: 24, width: 704, height: 480, prompt: "Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.", num_frames: 161, guidance_scale: 3, negative_prompt: "worst quality, inconsistent motion, blurry, jittery, distorted", num_inference_steps: 50 } } ); // To access the file URL: console.log(output.url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", input={ "fps": 24, "width": 704, "height": 480, "prompt": "Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } ) print(output)
To learn more, take a look at the guide on getting started with Python.
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", "input": { "fps": 24, "width": 704, "height": 480, "prompt": "Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers\' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
Output
{ "completed_at": "2025-05-14T15:26:46.271978Z", "created_at": "2025-05-14T15:25:08.182000Z", "data_removed": false, "error": null, "id": "trtmgq24tsrm80cpsxkb30rc1c", "input": { "fps": 24, "width": 704, "height": 480, "prompt": "Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }, "logs": "Using seed: 27526\nOriginal inputs: width=704, height=480, num_frames=161\nProcessed inputs: width=704, height=480, num_frames=161\n[~] Using Text-to-Video pipeline\n[~] Generating video with prompt: 'Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.'\nToken indices sequence length is longer than the specified maximum sequence length for this model (173 > 128). Running this sequence through the model will result in indexing errors\nThe following part of your input was truncated because `max_sequence_length` is set to 128 tokens: [\"a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.\"]\n 0%| | 0/50 [00:00<?, ?it/s]\n 2%|▏ | 1/50 [00:00<00:37, 1.31it/s]\n 4%|▍ | 2/50 [00:01<00:27, 1.76it/s]\n 6%|▌ | 3/50 [00:01<00:29, 1.57it/s]\n 8%|▊ | 4/50 [00:02<00:30, 1.49it/s]\n 10%|█ | 5/50 [00:03<00:31, 1.45it/s]\n 12%|█▏ | 6/50 [00:04<00:30, 1.43it/s]\n 14%|█▍ | 7/50 [00:04<00:30, 1.41it/s]\n 16%|█▌ | 8/50 [00:05<00:29, 1.40it/s]\n 18%|█▊ | 9/50 [00:06<00:29, 1.39it/s]\n 20%|██ | 10/50 [00:06<00:28, 1.39it/s]\n 22%|██▏ | 11/50 [00:07<00:28, 1.39it/s]\n 24%|██▍ | 12/50 [00:08<00:27, 1.38it/s]\n 26%|██▌ | 13/50 [00:09<00:26, 1.38it/s]\n 28%|██▊ | 14/50 [00:09<00:26, 1.38it/s]\n 30%|███ | 15/50 [00:10<00:25, 1.38it/s]\n 32%|███▏ | 16/50 [00:11<00:24, 1.38it/s]\n 34%|███▍ | 17/50 [00:12<00:23, 1.38it/s]\n 36%|███▌ | 18/50 [00:12<00:23, 1.38it/s]\n 38%|███▊ | 19/50 [00:13<00:22, 1.37it/s]\n 40%|████ | 20/50 [00:14<00:21, 1.37it/s]\n 42%|████▏ | 21/50 [00:14<00:21, 1.37it/s]\n 44%|████▍ | 22/50 [00:15<00:20, 1.37it/s]\n 46%|████▌ | 23/50 [00:16<00:19, 1.37it/s]\n 48%|████▊ | 24/50 [00:17<00:18, 1.37it/s]\n 50%|█████ | 25/50 [00:17<00:18, 1.37it/s]\n 52%|█████▏ | 26/50 [00:18<00:17, 1.37it/s]\n 54%|█████▍ | 27/50 [00:19<00:16, 1.37it/s]\n 56%|█████▌ | 28/50 [00:20<00:16, 1.37it/s]\n 58%|█████▊ | 29/50 [00:20<00:15, 1.37it/s]\n 60%|██████ | 30/50 [00:21<00:14, 1.37it/s]\n 62%|██████▏ | 31/50 [00:22<00:13, 1.37it/s]\n 64%|██████▍ | 32/50 [00:23<00:13, 1.37it/s]\n 66%|██████▌ | 33/50 [00:23<00:12, 1.37it/s]\n 68%|██████▊ | 34/50 [00:24<00:11, 1.37it/s]\n 70%|███████ | 35/50 [00:25<00:10, 1.37it/s]\n 72%|███████▏ | 36/50 [00:25<00:10, 1.37it/s]\n 74%|███████▍ | 37/50 [00:26<00:09, 1.37it/s]\n 76%|███████▌ | 38/50 [00:27<00:08, 1.37it/s]\n 78%|███████▊ | 39/50 [00:28<00:08, 1.37it/s]\n 80%|████████ | 40/50 [00:28<00:07, 1.36it/s]\n 82%|████████▏ | 41/50 [00:29<00:06, 1.36it/s]\n 84%|████████▍ | 42/50 [00:30<00:05, 1.36it/s]\n 86%|████████▌ | 43/50 [00:31<00:05, 1.36it/s]\n 88%|████████▊ | 44/50 [00:31<00:04, 1.36it/s]\n 90%|█████████ | 45/50 [00:32<00:03, 1.36it/s]\n 92%|█████████▏| 46/50 [00:33<00:02, 1.36it/s]\n 94%|█████████▍| 47/50 [00:34<00:02, 1.36it/s]\n 96%|█████████▌| 48/50 [00:34<00:01, 1.36it/s]\n 98%|█████████▊| 49/50 [00:35<00:00, 1.36it/s]\n100%|██████████| 50/50 [00:36<00:00, 1.36it/s]\n100%|██████████| 50/50 [00:36<00:00, 1.38it/s]\n[+] Video generation complete: output.mp4", "metrics": { "predict_time": 48.062772176, "total_time": 98.089978 }, "output": "https://replicate.delivery/xezq/93Aka8UgADoXKdMheXRfMkeSEjwDqGeEFhqDHj3UWYiaDaySB/output.mp4", "started_at": "2025-05-14T15:25:58.209206Z", "status": "succeeded", "urls": { "stream": "https://stream.replicate.com/v1/files/bcwr-h7kwoelhkc7x2udsus7fbrbuctg3rwzt6irwrjw4xwytixxfoita", "get": "https://api.replicate.com/v1/predictions/trtmgq24tsrm80cpsxkb30rc1c", "cancel": "https://api.replicate.com/v1/predictions/trtmgq24tsrm80cpsxkb30rc1c/cancel" }, "version": "b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815" }
Generated inUsing seed: 27526 Original inputs: width=704, height=480, num_frames=161 Processed inputs: width=704, height=480, num_frames=161 [~] Using Text-to-Video pipeline [~] Generating video with prompt: 'Two police officers in dark blue uniforms and matching hats enter a dimly lit room through a doorway on the left side of the frame. The first officer, with short brown hair and a mustache, steps inside first, followed by his partner, who has a shaved head and a goatee. Both officers have serious expressions and maintain a steady pace as they move deeper into the room. The camera remains stationary, capturing them from a slightly low angle as they enter. The room has exposed brick walls and a corrugated metal ceiling, with a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show.' Token indices sequence length is longer than the specified maximum sequence length for this model (173 > 128). Running this sequence through the model will result in indexing errors The following part of your input was truncated because `max_sequence_length` is set to 128 tokens: ["a barred window visible in the background. The lighting is low-key, casting shadows on the officers' faces and emphasizing the grim atmosphere. The scene appears to be from a film or television show."] 0%| | 0/50 [00:00<?, ?it/s] 2%|▏ | 1/50 [00:00<00:37, 1.31it/s] 4%|▍ | 2/50 [00:01<00:27, 1.76it/s] 6%|▌ | 3/50 [00:01<00:29, 1.57it/s] 8%|▊ | 4/50 [00:02<00:30, 1.49it/s] 10%|█ | 5/50 [00:03<00:31, 1.45it/s] 12%|█▏ | 6/50 [00:04<00:30, 1.43it/s] 14%|█▍ | 7/50 [00:04<00:30, 1.41it/s] 16%|█▌ | 8/50 [00:05<00:29, 1.40it/s] 18%|█▊ | 9/50 [00:06<00:29, 1.39it/s] 20%|██ | 10/50 [00:06<00:28, 1.39it/s] 22%|██▏ | 11/50 [00:07<00:28, 1.39it/s] 24%|██▍ | 12/50 [00:08<00:27, 1.38it/s] 26%|██▌ | 13/50 [00:09<00:26, 1.38it/s] 28%|██▊ | 14/50 [00:09<00:26, 1.38it/s] 30%|███ | 15/50 [00:10<00:25, 1.38it/s] 32%|███▏ | 16/50 [00:11<00:24, 1.38it/s] 34%|███▍ | 17/50 [00:12<00:23, 1.38it/s] 36%|███▌ | 18/50 [00:12<00:23, 1.38it/s] 38%|███▊ | 19/50 [00:13<00:22, 1.37it/s] 40%|████ | 20/50 [00:14<00:21, 1.37it/s] 42%|████▏ | 21/50 [00:14<00:21, 1.37it/s] 44%|████▍ | 22/50 [00:15<00:20, 1.37it/s] 46%|████▌ | 23/50 [00:16<00:19, 1.37it/s] 48%|████▊ | 24/50 [00:17<00:18, 1.37it/s] 50%|█████ | 25/50 [00:17<00:18, 1.37it/s] 52%|█████▏ | 26/50 [00:18<00:17, 1.37it/s] 54%|█████▍ | 27/50 [00:19<00:16, 1.37it/s] 56%|█████▌ | 28/50 [00:20<00:16, 1.37it/s] 58%|█████▊ | 29/50 [00:20<00:15, 1.37it/s] 60%|██████ | 30/50 [00:21<00:14, 1.37it/s] 62%|██████▏ | 31/50 [00:22<00:13, 1.37it/s] 64%|██████▍ | 32/50 [00:23<00:13, 1.37it/s] 66%|██████▌ | 33/50 [00:23<00:12, 1.37it/s] 68%|██████▊ | 34/50 [00:24<00:11, 1.37it/s] 70%|███████ | 35/50 [00:25<00:10, 1.37it/s] 72%|███████▏ | 36/50 [00:25<00:10, 1.37it/s] 74%|███████▍ | 37/50 [00:26<00:09, 1.37it/s] 76%|███████▌ | 38/50 [00:27<00:08, 1.37it/s] 78%|███████▊ | 39/50 [00:28<00:08, 1.37it/s] 80%|████████ | 40/50 [00:28<00:07, 1.36it/s] 82%|████████▏ | 41/50 [00:29<00:06, 1.36it/s] 84%|████████▍ | 42/50 [00:30<00:05, 1.36it/s] 86%|████████▌ | 43/50 [00:31<00:05, 1.36it/s] 88%|████████▊ | 44/50 [00:31<00:04, 1.36it/s] 90%|█████████ | 45/50 [00:32<00:03, 1.36it/s] 92%|█████████▏| 46/50 [00:33<00:02, 1.36it/s] 94%|█████████▍| 47/50 [00:34<00:02, 1.36it/s] 96%|█████████▌| 48/50 [00:34<00:01, 1.36it/s] 98%|█████████▊| 49/50 [00:35<00:00, 1.36it/s] 100%|██████████| 50/50 [00:36<00:00, 1.36it/s] 100%|██████████| 50/50 [00:36<00:00, 1.38it/s] [+] Video generation complete: output.mp4
Prediction
lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815IDt0781579vdrmc0cpsxza9ea0pmStatusSucceededSourceWebHardwareL40STotal durationCreatedInput
- fps
- 24
- width
- 704
- height
- 400
- prompt
- A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.
- num_frames
- 161
- guidance_scale
- 3
- negative_prompt
- worst quality, inconsistent motion, blurry, jittery, distorted
- num_inference_steps
- 50
{ "fps": 24, "image": "https://replicate.delivery/pbxt/N0YMvTWgTn3t1Cqw1WQUhEXTjpzzWiLGMVAiDEjsIza2f8Zm/hq720.jpg", "width": 704, "height": 400, "prompt": "A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", { input: { fps: 24, image: "https://replicate.delivery/pbxt/N0YMvTWgTn3t1Cqw1WQUhEXTjpzzWiLGMVAiDEjsIza2f8Zm/hq720.jpg", width: 704, height: 400, prompt: "A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.", num_frames: 161, guidance_scale: 3, negative_prompt: "worst quality, inconsistent motion, blurry, jittery, distorted", num_inference_steps: 50 } } ); // To access the file URL: console.log(output.url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", input={ "fps": 24, "image": "https://replicate.delivery/pbxt/N0YMvTWgTn3t1Cqw1WQUhEXTjpzzWiLGMVAiDEjsIza2f8Zm/hq720.jpg", "width": 704, "height": 400, "prompt": "A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } ) print(output)
To learn more, take a look at the guide on getting started with Python.
Run lightricks/ltx-video-0.9.7 using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "lightricks/ltx-video-0.9.7:b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815", "input": { "fps": 24, "image": "https://replicate.delivery/pbxt/N0YMvTWgTn3t1Cqw1WQUhEXTjpzzWiLGMVAiDEjsIza2f8Zm/hq720.jpg", "width": 704, "height": 400, "prompt": "A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
Output
{ "completed_at": "2025-05-14T15:52:56.175071Z", "created_at": "2025-05-14T15:52:03.291000Z", "data_removed": false, "error": null, "id": "t0781579vdrmc0cpsxza9ea0pm", "input": { "fps": 24, "image": "https://replicate.delivery/pbxt/N0YMvTWgTn3t1Cqw1WQUhEXTjpzzWiLGMVAiDEjsIza2f8Zm/hq720.jpg", "width": 704, "height": 400, "prompt": "A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.", "num_frames": 161, "guidance_scale": 3, "negative_prompt": "worst quality, inconsistent motion, blurry, jittery, distorted", "num_inference_steps": 50 }, "logs": "Using seed: 60923\nOriginal inputs: width=704, height=400, num_frames=161\nProcessed inputs: width=704, height=384, num_frames=161\n[~] Using Image-to-Video pipeline\n[~] Generating video with prompt: 'A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.'\n 0%| | 0/50 [00:00<?, ?it/s]\n 2%|▏ | 1/50 [00:00<00:27, 1.77it/s]\n 4%|▍ | 2/50 [00:00<00:20, 2.32it/s]\n 6%|▌ | 3/50 [00:01<00:23, 2.04it/s]\n 8%|▊ | 4/50 [00:02<00:23, 1.92it/s]\n 10%|█ | 5/50 [00:02<00:24, 1.86it/s]\n 12%|█▏ | 6/50 [00:03<00:24, 1.83it/s]\n 14%|█▍ | 7/50 [00:03<00:23, 1.81it/s]\n 16%|█▌ | 8/50 [00:04<00:23, 1.80it/s]\n 18%|█▊ | 9/50 [00:04<00:22, 1.79it/s]\n 20%|██ | 10/50 [00:05<00:22, 1.78it/s]\n 22%|██▏ | 11/50 [00:05<00:21, 1.78it/s]\n 24%|██▍ | 12/50 [00:06<00:21, 1.77it/s]\n 26%|██▌ | 13/50 [00:07<00:20, 1.77it/s]\n 28%|██▊ | 14/50 [00:07<00:20, 1.77it/s]\n 30%|███ | 15/50 [00:08<00:19, 1.77it/s]\n 32%|███▏ | 16/50 [00:08<00:19, 1.77it/s]\n 34%|███▍ | 17/50 [00:09<00:18, 1.77it/s]\n 36%|███▌ | 18/50 [00:09<00:18, 1.77it/s]\n 38%|███▊ | 19/50 [00:10<00:17, 1.77it/s]\n 40%|████ | 20/50 [00:11<00:16, 1.77it/s]\n 42%|████▏ | 21/50 [00:11<00:16, 1.77it/s]\n 44%|████▍ | 22/50 [00:12<00:15, 1.77it/s]\n 46%|████▌ | 23/50 [00:12<00:15, 1.77it/s]\n 48%|████▊ | 24/50 [00:13<00:14, 1.76it/s]\n 50%|█████ | 25/50 [00:13<00:14, 1.77it/s]\n 52%|█████▏ | 26/50 [00:14<00:13, 1.77it/s]\n 54%|█████▍ | 27/50 [00:15<00:13, 1.76it/s]\n 56%|█████▌ | 28/50 [00:15<00:12, 1.77it/s]\n 58%|█████▊ | 29/50 [00:16<00:11, 1.76it/s]\n 60%|██████ | 30/50 [00:16<00:11, 1.76it/s]\n 62%|██████▏ | 31/50 [00:17<00:10, 1.77it/s]\n 64%|██████▍ | 32/50 [00:17<00:10, 1.77it/s]\n 66%|██████▌ | 33/50 [00:18<00:09, 1.76it/s]\n 68%|██████▊ | 34/50 [00:19<00:09, 1.77it/s]\n 70%|███████ | 35/50 [00:19<00:08, 1.76it/s]\n 72%|███████▏ | 36/50 [00:20<00:07, 1.76it/s]\n 74%|███████▍ | 37/50 [00:20<00:07, 1.77it/s]\n 76%|███████▌ | 38/50 [00:21<00:06, 1.77it/s]\n 78%|███████▊ | 39/50 [00:21<00:06, 1.76it/s]\n 80%|████████ | 40/50 [00:22<00:05, 1.77it/s]\n 82%|████████▏ | 41/50 [00:22<00:05, 1.77it/s]\n 84%|████████▍ | 42/50 [00:23<00:04, 1.76it/s]\n 86%|████████▌ | 43/50 [00:24<00:03, 1.76it/s]\n 88%|████████▊ | 44/50 [00:24<00:03, 1.76it/s]\n 90%|█████████ | 45/50 [00:25<00:02, 1.76it/s]\n 92%|█████████▏| 46/50 [00:25<00:02, 1.76it/s]\n 94%|█████████▍| 47/50 [00:26<00:01, 1.76it/s]\n 96%|█████████▌| 48/50 [00:26<00:01, 1.76it/s]\n 98%|█████████▊| 49/50 [00:27<00:00, 1.76it/s]\n100%|██████████| 50/50 [00:28<00:00, 1.76it/s]\n100%|██████████| 50/50 [00:28<00:00, 1.78it/s]\n[+] Video generation complete: output.mp4", "metrics": { "predict_time": 39.21463796, "total_time": 52.884071 }, "output": "https://replicate.delivery/xezq/4gINMmMTRNbeUyUfe6UnFpUB12RdX4d4NjL5GrB0z5xxyNZpA/output.mp4", "started_at": "2025-05-14T15:52:16.960433Z", "status": "succeeded", "urls": { "stream": "https://stream.replicate.com/v1/files/bcwr-nld2ffo6u4egmg3d73af5xrhll43e5jl4ttyu3wsbrb2wgc7jlnq", "get": "https://api.replicate.com/v1/predictions/t0781579vdrmc0cpsxza9ea0pm", "cancel": "https://api.replicate.com/v1/predictions/t0781579vdrmc0cpsxza9ea0pm/cancel" }, "version": "b1a80c6dbce390c23bb52aecebc0e09d445ac12136dd4dc539350c76030fc815" }
Generated inUsing seed: 60923 Original inputs: width=704, height=400, num_frames=161 Processed inputs: width=704, height=384, num_frames=161 [~] Using Image-to-Video pipeline [~] Generating video with prompt: 'A slow, dramatic pan toward a man sitting frozen in shock. The camera moves slowly steadily closer to his face as his wide, tear-filled eyes stare straight ahead. A single tear trails down each cheek, catching the dim light. His mouth is slightly open, caught between a gasp and a scream. As the shot tightens, the emotion intensifies.' 0%| | 0/50 [00:00<?, ?it/s] 2%|▏ | 1/50 [00:00<00:27, 1.77it/s] 4%|▍ | 2/50 [00:00<00:20, 2.32it/s] 6%|▌ | 3/50 [00:01<00:23, 2.04it/s] 8%|▊ | 4/50 [00:02<00:23, 1.92it/s] 10%|█ | 5/50 [00:02<00:24, 1.86it/s] 12%|█▏ | 6/50 [00:03<00:24, 1.83it/s] 14%|█▍ | 7/50 [00:03<00:23, 1.81it/s] 16%|█▌ | 8/50 [00:04<00:23, 1.80it/s] 18%|█▊ | 9/50 [00:04<00:22, 1.79it/s] 20%|██ | 10/50 [00:05<00:22, 1.78it/s] 22%|██▏ | 11/50 [00:05<00:21, 1.78it/s] 24%|██▍ | 12/50 [00:06<00:21, 1.77it/s] 26%|██▌ | 13/50 [00:07<00:20, 1.77it/s] 28%|██▊ | 14/50 [00:07<00:20, 1.77it/s] 30%|███ | 15/50 [00:08<00:19, 1.77it/s] 32%|███▏ | 16/50 [00:08<00:19, 1.77it/s] 34%|███▍ | 17/50 [00:09<00:18, 1.77it/s] 36%|███▌ | 18/50 [00:09<00:18, 1.77it/s] 38%|███▊ | 19/50 [00:10<00:17, 1.77it/s] 40%|████ | 20/50 [00:11<00:16, 1.77it/s] 42%|████▏ | 21/50 [00:11<00:16, 1.77it/s] 44%|████▍ | 22/50 [00:12<00:15, 1.77it/s] 46%|████▌ | 23/50 [00:12<00:15, 1.77it/s] 48%|████▊ | 24/50 [00:13<00:14, 1.76it/s] 50%|█████ | 25/50 [00:13<00:14, 1.77it/s] 52%|█████▏ | 26/50 [00:14<00:13, 1.77it/s] 54%|█████▍ | 27/50 [00:15<00:13, 1.76it/s] 56%|█████▌ | 28/50 [00:15<00:12, 1.77it/s] 58%|█████▊ | 29/50 [00:16<00:11, 1.76it/s] 60%|██████ | 30/50 [00:16<00:11, 1.76it/s] 62%|██████▏ | 31/50 [00:17<00:10, 1.77it/s] 64%|██████▍ | 32/50 [00:17<00:10, 1.77it/s] 66%|██████▌ | 33/50 [00:18<00:09, 1.76it/s] 68%|██████▊ | 34/50 [00:19<00:09, 1.77it/s] 70%|███████ | 35/50 [00:19<00:08, 1.76it/s] 72%|███████▏ | 36/50 [00:20<00:07, 1.76it/s] 74%|███████▍ | 37/50 [00:20<00:07, 1.77it/s] 76%|███████▌ | 38/50 [00:21<00:06, 1.77it/s] 78%|███████▊ | 39/50 [00:21<00:06, 1.76it/s] 80%|████████ | 40/50 [00:22<00:05, 1.77it/s] 82%|████████▏ | 41/50 [00:22<00:05, 1.77it/s] 84%|████████▍ | 42/50 [00:23<00:04, 1.76it/s] 86%|████████▌ | 43/50 [00:24<00:03, 1.76it/s] 88%|████████▊ | 44/50 [00:24<00:03, 1.76it/s] 90%|█████████ | 45/50 [00:25<00:02, 1.76it/s] 92%|█████████▏| 46/50 [00:25<00:02, 1.76it/s] 94%|█████████▍| 47/50 [00:26<00:01, 1.76it/s] 96%|█████████▌| 48/50 [00:26<00:01, 1.76it/s] 98%|█████████▊| 49/50 [00:27<00:00, 1.76it/s] 100%|██████████| 50/50 [00:28<00:00, 1.76it/s] 100%|██████████| 50/50 [00:28<00:00, 1.78it/s] [+] Video generation complete: output.mp4
Want to make some of these yourself?
Run this model