alibaba/wan-2.2-spicy/image-to-video

alibaba/wan-2.2-spicy/image-to-video

Turn a first frame and optional last frame into coherent motion video with 5/8-second, 480p/720p output and intelligent prompt expansion.

Examples

alibaba/wan-2.2-spicy/image-to-video Examples 1

Parameters

NameTypeDefaultConstraintsDescription
image *Input Imageimage_upload—image/* · 0–1 itemsImage URL used as the visual source for the request.
last_imageLast Frameimage_upload—image/* · 0–1 itemsOptional final-frame image URL used to guide how the video ends.
prompt *Prompttextarea—≤ 5000 charsDescribes the desired subject, action, composition, camera movement, lighting, and style.
durationDurationselect55 | 8Selects the output video duration in seconds.
resolutionResolutionselect480p480p | 720pSelects the output resolution or provider generation mode. Higher settings may take longer to process.
prompt_extendPrompt Extendbooleantrue—Automatically expands short prompts with additional visual detail before generation.
seedSeednumber—≥ 0 · step 1Optional random seed for reproducible results; leave empty to use a random seed.

Output fields

FieldTypeDescription
videosarray<string>Generated video URL(s).

API

Call this model through one unified REST API. Get a key on the API Keys page.

cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-2.2-spicy/image-to-video" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "input": {
    "image": [
      "https://assets-public.namifusion.com/marketplace/images/2026-06-12/638e1ee18ac7.jpeg"
    ],
    "prompt": "Animate the subject with natural motion, a slow cinematic camera push-in, soft wind, stable anatomy, and consistent lighting.",
    "duration": 5,
    "resolution": "480p",
    "prompt_extend": true
  }
}'

# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
import time, requests

API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

# 1) Submit
resp = requests.post(
    "https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-2.2-spicy/image-to-video",
    headers=HEADERS,
    json={
        "input": {
            "image": [
                "https://assets-public.namifusion.com/marketplace/images/2026-06-12/638e1ee18ac7.jpeg"
            ],
            "prompt": "Animate the subject with natural motion, a slow cinematic camera push-in, soft wind, stable anatomy, and consistent lighting.",
            "duration": 5,
            "resolution": "480p",
            "prompt_extend": True
        }
    },
)
resp.raise_for_status()  # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()

# 2) Poll until a terminal state (completed / failed / cancelled).
#    This model is allowed up to 300s server-side.
deadline = time.time() + 360
while task.get("status") not in ("completed", "failed", "cancelled"):
    if time.time() > deadline:
        raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
    time.sleep(3)
    poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
    poll.raise_for_status()
    task = poll.json()

print(task["status"], task.get("output"))
JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };

// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-2.2-spicy/image-to-video", {
  method: "POST",
  headers: { ...HEADERS, "Content-Type": "application/json" },
  body: JSON.stringify({
    "input": {
      "image": [
        "https://assets-public.namifusion.com/marketplace/images/2026-06-12/638e1ee18ac7.jpeg"
      ],
      "prompt": "Animate the subject with natural motion, a slow cinematic camera push-in, soft wind, stable anatomy, and consistent lighting.",
      "duration": 5,
      "resolution": "480p",
      "prompt_extend": true
    }
  }),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();

// 2) Poll until a terminal state (completed / failed / cancelled).
//    This model is allowed up to 300s server-side.
const deadline = Date.now() + 360 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
  if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
  await new Promise((r) => setTimeout(r, 3000));
  const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
  if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
  task = await poll.json();
}

console.log(task.status, task.output);

Documentation

alibaba/wan-2.2-spicy/image-to-video

Animate a still image into a controlled 5- or 8-second video with optional end-frame guidance.

Wan 2.2 Spicy Image-to-Video turns a source image and text prompt into a short video while preserving the subject and overall visual identity of the input. It supports two practical resolution tiers, optional last-frame control, prompt expansion, and a reproducible seed, making it suitable for both quick previews and polished content production.

Key Features

  • Image-led motion generation: Uses the input image as the visual anchor and adds subject, camera, and environmental motion.
  • Optional final-frame guidance: Supply last_image when the clip needs to converge toward a specific ending composition.
  • Two duration choices: Generate either 5-second or 8-second clips.
  • 480p and 720p output: Balance turnaround time, detail, and credit usage for each job.
  • Prompt expansion: Automatically enrich short prompts before generation when prompt_extend is enabled.
  • Seed control: Reuse a seed when you need comparable variations from the same input.

Technical Specifications

ItemDetails
TaskImage-to-video generation
Required inputimage, prompt
Optional inputlast_image, seed
Resolution480p (default), 720p
Duration5 seconds (default), 8 seconds
Prompt expansionSupported and enabled by default
OutputGenerated video URL

Sample Prompts

  • Animate the subject with natural breathing and subtle head movement, slow cinematic camera push-in, soft wind, stable anatomy, warm evening light.
  • The product remains centered while the camera makes a gentle orbit; reflections move naturally across the surface, premium studio lighting.
  • Clouds drift behind the character, fabric moves in a light breeze, shallow depth of field, smooth and coherent motion.

Pricing

Resolution5 seconds8 seconds
480p10 credits16 credits
720p20 credits32 credits

Prompt expansion adds 0.1 credit per request when enabled. These values reproduce the existing Marketplace pricing configuration; this documentation update does not alter pricing.

Best Use Cases

  • Social clips built from portraits, illustrations, or campaign artwork.
  • Product motion shots for ads, storefronts, and presentation material.
  • Storyboard and concept-art animation for creative review.
  • First-frame and last-frame transitions that need a defined visual destination.

Best Practices

Use a sharp image with one clearly framed subject. Describe subject motion, camera behavior, lighting, and atmosphere separately. Keep requested motion physically plausible, and use a last frame only when its subject, framing, and style are compatible with the first image.

Related models

xAI Grok Imagine Video v1.5 Image to Video
Image to VideoX Ai

xAI Grok Imagine Video v1.5 Image to Video

Animate one input image with a text prompt into a 1-15 second video at 480p or 720p.

from $0.850 / per run
vidu/q3/image-to-video-spicy
Image to VideoVidu

vidu/q3/image-to-video-spicy

Vidu Q3 Image-to-Video Spicy generates unlimited high-quality videos from images with smooth animations and diverse motion, optimized for scalable content generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.750 / per run
Vidu Q3 Image To Video
Image to VideoVidu

Vidu Q3 Image To Video

Vidu Q3 Image-to-Video turns text prompts into high-quality videos with exceptional visual fidelity and diverse motion. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.750 / per run
MiniMax H3 Spicy Image to Video
Image to VideoMinimax

MiniMax H3 Spicy Image to Video

Animate a first-frame image with optional prompt and last-frame guidance. Supports 480p, 540p, 768p and 1080p video, with durations from 3 to 15 seconds.

from $0.200 / per run
MiniMax H3 Image to Video
Image to VideoMinimax

MiniMax H3 Image to Video

MiniMax H3 Image to Video animates a first-frame image into a coherent 2K video, with natural-language motion instructions and optional last-frame control for consistent motion, scene continuity, and cinematic video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.650 / per run
ltx-2.5/image-to-video
Image to VideoLtx 2.5

ltx-2.5/image-to-video

LTX 2.5 Image-to-Video animates a first-frame image into high-fidelity synchronized audio-video content, with optional last-frame guidance and 720P / 1080P / 2K / 4K output for cinematic videos, social content, ads, and production workflows. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.500 / per run
ai/ltx-2.3-spicy/image-to-video-lora
Image to VideoLightricks

ai/ltx-2.3-spicy/image-to-video-lora

LTX 2.3 Spicy LoRA Image to Video API turns a reference image and prompt into expressive AI videos using selectable LoRA presets, optional LoRA strength overrides, duration, and resolution controls. Run fast REST inference on MaaS with no cold starts and affordable pricing.

from $0.150 / per run
ai/ltx-2.3-spicy/image-to-video
Image to VideoLightricks

ai/ltx-2.3-spicy/image-to-video

LTX 2.3 Spicy Image-to-Video API generates expressive AI videos from a reference image and prompt. Choose style presets, duration, and resolution with fast REST inference, no cold starts, and affordable pricing on MaaS.

from $0.100 / per run