Model Details
Wan 2.7 Image to Video animates a still photo into a 2-15 second clip that arrives with its own soundtrack — background music or sound effects generated to match what is happening on screen, in the same pass as the picture. Supply one image as the opening frame and, optionally, a short prompt describing the motion; add a second image as the closing frame and the model generates the transition between the two. The clip inherits its frame shape from the source image — a vertical photo gives a vertical video — so there is no aspect-ratio control. Pick 720P for drafts or 1080P for delivery, and set any clip length from 2 to 15 seconds.
## Best for - Animating a single photo, packshot or illustration into a short clip that already has sound - First-and-last-frame shots: pin the opening and closing images and let the model generate the motion between them - Vertical, square or landscape social video that keeps the framing of your source photo - Single takes up to 15 seconds long, without stitching shorter clips together
## Choose another model when - You want a frame shape your source image does not have — the output follows the input material, so crop first or use a text-to-video model with an aspect-ratio control - You have no starting image and want the shot built from text alone — use a text-to-video model - You need a silent clip — audio is always generated and there is no documented way to switch it off - You need clips longer than 15 seconds, or frame-accurate timeline control
## Tips - `prompt` is optional — you can animate a frame with no text — but it is your only control over motion and camera once the image fixes the scene - Give `end_image_url` the same aspect ratio as the start frame — the clip's shape comes from the input material - `resolution` affects cost: 720P bills at $0.10 per second of finished video and 1080P (the default) at $0.15, so iterate at 720P - `enable_prompt_expansion` is on by default and rewrites your prompt for richer detail; disable it to follow your exact wording
## Limitations - The output frame shape follows your source image but is not guaranteed to match it exactly - A closing frame cannot be used on its own — `end_image_url` only takes effect alongside a start frame
To run via the ModelRunner JavaScript client: ```js import { modelrunner } from "@modelrunner/client";
const result = await modelrunner.subscribe("wan-video/wan/v2.7/image-to-video", { input: { start_image_url: "https://media.modelrunner.ai/7HYD7QtzL6Up3PuTVw55V.png", prompt: "The balloon drifts slowly across the valley as the mist thins and sunrise light spreads over the ridges", resolution: "1080P", duration: 5, }, }); ```



