Seedream 5.0 Pro sudah LIVE | Coba di Generator Gambar →

LTX Video V097 I2V 720P

wavespeed-ai /

Generate 720p videos from text prompts and images with LTX Video-0.9.7 for consistent, high-quality image-to-video results. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

image-to-video
Input

Siap

$0.3per run·~33 / $10

Selanjutnya:

ContohLihat semua

A bearded European man in classical attire, with a profound gaze, depicted in a classical oil painting. The background is a dark void, with light only illuminating his face and shoulders. His expression is serene, but as the camera slowly moves closer, the lighting on his face subtly shifts, as if the painting is breathing. Classical oil painting, chiaroscuro lighting, thick brushstrokes, high resolution, canvas texture, heavy paint texture, rich colors, cinematic. A very slow zoom-in shot.

A confident young tech professional standing in a modern office space, talking to the camera with calm gestures. Soft daylight, clean environment, business casual outfit, focused expression. Center frame, smooth motion

A young woman with a soft face and a hint of anticipation in her eyes is waiting in a quiet station lounge. Soft light streams in from a window, illuminating her face as she looks straight at the camera. Her eyes gently shift, her breathing is steady, and a slow smile gradually forms on her lips. Hyper-realistic, serene, cinematic, 8K, highly detailed skin texture, delicate glint in her eyes, blurred reflections on the window, depth of field. A static frontal close-up shot.

A woman is listening intently, her face in profile to the camera. She is in a dimly lit room with a soft-glowing table lamp in front of her. Her expression is focused and still, then her eyebrows slightly lift, and a knowing smile slowly appears. Hyper-realistic, warm, shallow depth of field, 8K, realistic skin texture, reflection of the lamp in her eyes, light-shadow details on her hair and face, warm color tones. A static side close-up shot.

A young boy with bright, large eyes and smooth black hair, in the style of anime art. The background is a futuristic city street with glowing neon lights. He looks straight at the camera, his expression slowly changing from calm to a shy smile, as a single strand of hair gently sways in the wind. Anime art, cel-shaded, bright colors, high resolution, clean lines, detailed eye highlights, depth of field. A static frontal close-up shot. 

A young woman in a sweater is sitting by a window in a cafe. The background shows a blurry barista at work and other patrons chatting, with a warm, soft light filling the space. She gently blows on a steaming cup of coffee, a wisp of steam slowly rising in front of her face as her expression transitions from calm to contemplative. Hyper-realistic, cinematic, warm, 8K, highly detailed texture of the sweater, water droplets and shine on the coffee cup, dynamic effect of the steam, depth of field. A very slow zoom-in shot from her chest to her face.

Arc shot, a ballerina is twirling gracefully in the center of an empty grand ballroom, sunlight streaming through arched windows, dust particles visible in the light, slow motion.

Extreme close-up on a woman's face, her eyes are closed. Rain is dripping from her eyelashes. She slowly opens her eyes. A single tear mixes with the rain and rolls down her cheek. Super slow motion, moody, blue tones, photorealistic.

Close-up shot, a beautiful woman bursts into laughter, throwing her head back slightly, her long hair swinging with the motion, cinematic lighting, bokeh background, photorealistic, detailed skin texture.

Medium shot, a young girl in a yellow raincoat catches a single raindrop on her fingertip, looking at it with wonder, shallow depth of field, London street in the background, slow motion.

Model Terkait

README

LTX-Video v0.97 I2V 720p — wavespeed-ai/ltx-video-v097/i2v-720p

LTX-Video v0.97 I2V 720p generates short videos from a single reference image plus a text prompt. Upload an image to anchor the subject and composition, then describe motion, camera movement, lighting, and style to animate the scene. This model is well-suited for cinematic image animation, stylized shots (e.g., oil painting, illustration), and smooth camera moves at 720p.

Key capabilities

  • Image-to-video generation anchored to a reference image (720p output)
  • Prompt-driven motion and camera direction (push-in, pan, orbit, tilt)
  • Supports negative_prompt to reduce artifacts (blur, jitter, distortion)
  • Strong for stylized animation (painting/illustration looks) and cinematic lighting beats

Use cases

  • Animate portraits and artworks with subtle motion and cinematic camera moves
  • Turn a single keyframe into a short story beat for trailers and storyboards
  • Create stylized clips (oil painting, anime, illustration) while preserving composition
  • Generate multiple variations by changing seed and prompt details
  • Rapid prototyping of mood, lighting, and camera language before higher-cost runs

Pricing

OutputPrice per run
720p I2V video$0.30

Inputs

  • image (required): reference image (subject/composition anchor)
  • prompt (required): motion + scene direction
  • negative_prompt (optional): what to avoid (blurry, jittery, distorted, etc.)

Parameters

  • prompt: describe subject, action, scene, camera, style
  • negative_prompt: optional “avoid list”
  • image: input image (upload or URL)
  • size: output resolution (1280×720)
  • seed: random seed (set for reproducible results)

Prompting guide (I2V)

Write prompts like a director’s brief:

  • Subject: who/what is on screen
  • Motion: subtle expression changes, breathing, cloth movement, particles
  • Camera: slow push-in, gentle orbit, rack focus, steady pan
  • Lighting/style: chiaroscuro, golden hour, neon, painterly brushwork
  • Constraints: keep identity/composition consistent with the reference

Example prompts

  • A classical oil painting portrait. Slow camera push-in toward the subject’s face, subtle breathing motion, gentle flicker in candlelight, soft volumetric haze, cinematic chiaroscuro lighting.
  • A serene landscape painting. Wind moves the trees slightly, clouds drift slowly, camera pans across the scene, painterly style preserved, smooth motion.
  • A fashion portrait. Hair sways lightly, subject turns their head slightly, camera slow orbit, soft studio lighting, realistic texture.
Catatan:Situs web ini menggunakan model AI yang disediakan oleh pihak ketiga.

Ltx Video v097 I2v 720p API — Quick start

Grab a WaveSpeedAI API key, then call POST https://api.wavespeed.ai/api/v3/wavespeed-ai/ltx-video-v097/i2v-720p with your input as JSON. The endpoint returns a prediction id. Start polling the result endpoint around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. On completed, read output values from data.outputs. Examples for Ltx Video v097 I2v 720p below.

HTTP example
set -euo pipefail

: "${WAVESPEED_API_KEY:?Set WAVESPEED_API_KEY}"

REQUEST_BODY=$(cat <<'JSON'
{
    "prompt": "A cinematic shot of a city at sunset, soft golden light",
    "image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg",
    "size": "1280*720"
}
JSON
)

# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
  -X POST "https://api.wavespeed.ai/api/v3/wavespeed-ai/ltx-video-v097/i2v-720p" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $WAVESPEED_API_KEY" \
  -d "$REQUEST_BODY")

TASK=$(printf '%s' "$SUBMIT_RESPONSE" | jq 'if has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "$TASK" | jq -r '.id')
if [ -z "$PREDICTION_ID" ] || [ "$PREDICTION_ID" = "null" ]; then
  printf 'Submission response did not contain a prediction id
' >&2
  exit 1
fi
RESULT_URL=$(printf '%s' "$TASK" | jq -r '.urls.get // empty')
if [ -z "$RESULT_URL" ]; then
  RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/$PREDICTION_ID/result"
fi

# 2. Poll until the prediction finishes.
while true; do
  RESPONSE=$(curl --silent --show-error --fail-with-body "$RESULT_URL" \
    -H "Authorization: Bearer $WAVESPEED_API_KEY")
  RESULT=$(printf '%s' "$RESPONSE" | jq 'if has("data") then .data else . end')
  STATUS=$(printf '%s' "$RESULT" | jq -r '.status')
  case "$STATUS" in
    completed) printf '%s\n' "$RESULT" | jq '.outputs'; break ;;
    failed|cancelled|timeout) printf '%s\n' "$RESULT" | jq . >&2; exit 1 ;;
    created|processing) sleep 2 ;;
    *) printf 'Unexpected status: %s
' "$STATUS" >&2; exit 1 ;;
  esac
done
Node.js example
const submitUrl = "https://api.wavespeed.ai/api/v3/wavespeed-ai/ltx-video-v097/i2v-720p";
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');

async function requestJson(url, options = {}) {
  const response = await fetch(url, options);
  if (!response.ok) throw new Error(await response.text());
  return response.json();
}

// 1. Submit the prediction.
const body = await requestJson(submitUrl, {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
        "prompt": "A cinematic shot of a city at sunset, soft golden light",
        "image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg",
        "size": "1280*720"
}),
});
const task = body.data ?? body;
if (!task.id) throw new Error("Submission response did not contain a prediction id");
const resultUrl = task.urls?.get ||
  `https://api.wavespeed.ai/api/v3/predictions/${task.id}/result`;

// 2. Poll until the prediction finishes.
while (true) {
  const resultBody = await requestJson(resultUrl, {
    headers: { "Authorization": `Bearer ${apiKey}` },
  });
  const result = resultBody.data ?? resultBody;
  if (result.status === "completed") {
    console.log(result.outputs);
    break;
  }
  if (["failed", "cancelled", "timeout"].includes(result.status)) throw new Error(JSON.stringify(result));
  if (!["created", "processing"].includes(result.status)) throw new Error("Unexpected status: " + result.status);
  await new Promise(resolve => setTimeout(resolve, 2000));
}
Python example
import json
import os
import time
from urllib.request import Request, urlopen

api_key = os.environ["WAVESPEED_API_KEY"]
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
payload = {
    "prompt": "A cinematic shot of a city at sunset, soft golden light",
    "image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg",
    "size": "1280*720"
}

def request_json(url, data=None):
    request = Request(url, data=data, headers=headers, method="POST" if data else "GET")
    with urlopen(request) as response:
        return json.load(response)

# 1. Submit the prediction.
body = request_json("https://api.wavespeed.ai/api/v3/wavespeed-ai/ltx-video-v097/i2v-720p", json.dumps(payload).encode())
task = body.get("data", body)
if not task.get("id"):
    raise RuntimeError("Submission response did not contain a prediction id")
result_url = task.get("urls", {}).get("get") or f"https://api.wavespeed.ai/api/v3/predictions/{task['id']}/result"

# 2. Poll until the prediction finishes.
while True:
    result_body = request_json(result_url)
    result = result_body.get("data", result_body)
    status = result.get("status")
    if status == "completed":
        print(result.get("outputs", []))
        break
    if status in {"failed", "cancelled", "timeout"}:
        raise RuntimeError(result)
    if status not in {"created", "processing"}:
        raise RuntimeError(f"Unexpected status: {status}")
    time.sleep(2)

Ltx Video v097 I2v 720p API — Frequently asked questions

What is the Ltx Video v097 I2v 720p API?

Ltx Video v097 I2v 720p is a WaveSpeedAI model for video generation from images, exposed as a REST API on WaveSpeedAI. Generate 720p videos from text prompts and images with LTX Video-0.9.7 for consistent, high-quality image-to-video results. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing. You can call it programmatically or try it from the playground above.

How do I call the Ltx Video v097 I2v 720p API?

POST your input parameters to the model's REST endpoint (shown in the API tab of this playground) with your WaveSpeedAI API key in the Authorization header. Submission returns a prediction ID. Poll the result endpoint starting around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. The playground generates production-oriented Python, JavaScript, and cURL examples with timeouts, transient-error handling, and safe GET retries. Full request/response shape is documented at https://wavespeed.ai/docs/docs-api/wavespeed-ai/ltx-video-v097-i2v-720p.

How much does Ltx Video v097 I2v 720p cost per run?

Ltx Video v097 I2v 720p starts at $0.30 per run. That figure is the base price — the final charge scales with the parameters you set in the form (output size, length, count, references, or whatever knobs this model exposes), so a higher-quality or larger output costs more than a minimal one. The exact cost for your current input is shown live next to the Generate button before you submit, and the actual per-call charge is recorded on the prediction afterwards.

What inputs does Ltx Video v097 I2v 720p accept?

Key inputs: `prompt`, `image`, `size`, `seed`, `negative_prompt`. The full JSON schema (types, defaults, allowed values) is rendered above the Generate button and mirrored in the API reference at https://wavespeed.ai/docs/docs-api/wavespeed-ai/ltx-video-v097-i2v-720p.

How long does Ltx Video v097 I2v 720p take to generate?

Median end-to-end generation time on WaveSpeedAI is around 124 seconds per request, based on recent successful runs. Queue time varies with global demand; live status is visible in the prediction record.

Can I use Ltx Video v097 I2v 720p outputs commercially?

Commercial usage rights depend on the model's license, set by its provider (WaveSpeedAI). The license summary appears on the model card above; see WaveSpeedAI's Terms of Service for platform-level conditions.