Browse ModelsAlibabaAlibaba Wan 2.7 Image To Video

Alibaba Wan 2.7 Image To Video

Alibaba Wan 2.7 Image To Video

Playground

Try it on WavespeedAI!

Alibaba WAN 2.7 converts images into videos (720p/1080p) with optional audio, supporting first and last frame control. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.

Features

Wan 2.7 Image-to-Video

Wan 2.7 Image-to-Video animates a reference image into a high-quality cinematic video clip. Upload a start frame, optionally provide an end frame for guided transitions, and describe the motion — the model generates smooth, natural video with optional audio synchronization and precise prompt control.


Why Choose This?

  • Image-grounded generation Start from a reference photo for precise visual control over subject appearance, environment, and composition.

  • Start and end frame guidance Provide both a starting image and an end frame to define exactly where the clip begins and finishes.

  • Audio input support Upload an audio track to guide the rhythm, mood, and pacing of the generated video.

  • Negative prompt support Specify what you don’t want in the video for more precise control over the output.

  • Prompt expansion Enable enable_prompt_expansion to let the model automatically enrich and optimize your prompt before generation.

  • Resolution options Generate at 720p or 1080p to match your delivery requirements.

  • Reproducible results Use the seed parameter to lock in a specific output for exact reproduction.


Parameters

ParameterRequiredDescription
imageYesStart frame image to animate (URL or file upload).
promptYesText description of the motion, camera style, and scene atmosphere.
last_imageNoEnd frame image to define where the clip finishes.
audioNoOptional audio track to synchronize with the generated video.
negative_promptNoElements to exclude from the generated video.
resolutionNoOutput resolution: 720p (default) or 1080p.
durationNoClip length in seconds. Default: 5.
enable_prompt_expansionNoEnable automatic prompt optimization before generation. Default: off.
seedNoRandom seed for reproducible results. Use -1 for a random seed.

How to Use

  1. Upload your image — provide the start frame to animate via URL or drag-and-drop.
  2. Write your prompt — describe the motion, camera movement, and scene atmosphere. Use the Prompt Enhancer for better results.
  3. Upload last image (optional) — provide an end frame to guide where the clip finishes.
  4. Upload audio (optional) — provide an audio file or URL to synchronize the video.
  5. Add negative prompt (optional) — specify elements you want to exclude from the output.
  6. Select resolution — 720p for standard output, 1080p for higher-quality results.
  7. Set duration — choose your desired clip length in seconds.
  8. Enable prompt expansion (optional) — let the model automatically enrich your prompt before generation.
  9. Set seed (optional) — fix the seed to reproduce a specific result in future runs.
  10. Submit — generate, preview, and download your video.

Pricing

Duration720p1080p
5s$0.50$0.75
10s$1.00$1.50
15s$1.50$2.25

Billing Rules

  • 720p: $0.10 per second
  • 1080p: $0.15 per second (1.5× base rate)

Best Use Cases

  • Photo Animation — Bring portraits, landscapes, and lifestyle photos to life with natural cinematic motion.
  • Scene Transitions — Use start and end frames for smooth, controlled visual transitions.
  • Social Media Content — Animate reference images into short-form clips for Reels, TikTok, and Shorts.
  • Marketing & Advertising — Animate product and campaign images for promotional video content.
  • Music & Audio-Visual — Synchronize animated footage to a music track or voiceover.

Pro Tips

  • Use a high-quality, well-lit reference image with a clearly visible subject for the most natural animation.
  • Providing a last_image significantly improves motion direction and narrative coherence.
  • Use negative_prompt to avoid common artifacts like unwanted motion or blurry faces.
  • Enable prompt expansion for shorter or less detailed prompts to get richer output automatically.
  • Fix the seed once you find a result you like to iterate consistently across resolution and duration changes.

Notes

  • Both image and prompt are required fields; all other parameters are optional.
  • Ensure image and audio URLs are publicly accessible if using links rather than direct uploads.
  • Please ensure your content complies with Alibaba’s usage policies.

Authentication

For authentication details, please refer to the Authentication Guide.

API Endpoints

Submit Task & Query Result


# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/alibaba/wan-2.7/image-to-video" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "resolution": "720p",
    "duration": 5,
    "enable_prompt_expansion": false,
    "seed": -1
}'

# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"

Parameters

Task Submission Parameters

Request Parameters

ParameterTypeRequiredDefaultRangeDescription
promptstringYes-The positive prompt for the generation.
imagestringYes-The first frame image for generating the video.
last_imagestringNo--The last frame image for generating the video (optional).
audiostringNo--Audio URL to guide generation (optional).
negative_promptstringNo-The negative prompt for the generation.
resolutionstringNo720p720p, 1080pThe resolution of the generated video.
durationintegerNo52 ~ 15The duration of the generated media in seconds (2-15s).
enable_prompt_expansionbooleanNofalse-If set to true, the prompt optimizer will be enabled.
seedintegerNo-1-1 ~ 2147483647The random seed to use for the generation. -1 means a random seed will be used.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.has_nsfw_contentsarrayArray of boolean values indicating NSFW detection for each output
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Request Parameters

ParameterTypeRequiredDefaultDescription
idstringYes-Task ID

Result Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
dataobjectThe prediction data object containing all details
data.idstringUnique identifier for the prediction, the ID of the prediction to get
data.modelstringModel ID used for the prediction
data.outputsobjectArray of URLs to the generated content.
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds
© 2025 WaveSpeedAI. All rights reserved.