Wan 2.1 V2V converts source videos into AI 720p outputs for scalable video-to-video production and unlimited video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Bereit
$0.3pro Durchlauf·~33 / $10
In the heart of a bustling city square, a girl is dancing. The sun is setting, casting a warm golden hue over the cobblestone streets. Streetlights are beginning to flicker on, their soft glow mingling with the last rays of daylight. A gentle breeze carries the scent of freshly baked bread from a nearby bakery, mixing with the faint aroma of blooming flowers from the park across the way. The sounds of laughter and conversation fill the air, punctuated by the occasional honk of a distant car. The girl, with her hair flowing freely and a radiant smile on her face, moves gracefully to the rhythm of an invisible melody, her joyous spirit lifting the mood of everyone around her.
Wan 2.1 V2V 720p is a video-to-video model for prompt-guided transformations while preserving the original motion and timing of an input clip. Upload a source video, describe the desired changes (style, lighting, atmosphere, details), and tune strength to control how closely the output follows the original footage. It’s a solid default choice when you want higher clarity than 480p and don’t need LoRA.
| Duration | Price per video |
|---|---|
| 5s | $0.30 |
| 10s | $0.45 |
Write prompts that explicitly separate preservation from transformation:
Template: Keep the original motion and timing. Change [style/lighting/environment/details]. Keep faces stable and natural. Avoid flicker, warping, and jitter.
Grab a WaveSpeedAI API key, then call POST https://api.wavespeed.ai/api/v3/wavespeed-ai/wan-2.1/v2v-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 URLs from data.outputs. Examples for Wan 2.1 v2v 720p below.
# Submit the prediction
curl --fail-with-body --connect-timeout 10 --max-time 60 \
-X POST "https://api.wavespeed.ai/api/v3/wavespeed-ai/wan-2.1/v2v-720p" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $WAVESPEED_API_KEY" \
-d '{
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"video": "https://example.com/your-input.mp4",
"negative_prompt": "blurry, low quality, distorted",
"num_inference_steps": 30,
"duration": 5,
"strength": 0.9,
"guidance_scale": 5,
"flow_shift": 3,
"seed": -1
}'
# Wait at least 2 seconds, then poll. Safe GET requests may be retried.
curl --fail-with-body --connect-timeout 10 --max-time 30 \
--retry 4 --retry-all-errors --retry-delay 1 \
-X GET "https://api.wavespeed.ai/api/v3/predictions/{request_id}/result" \
-H "Authorization: Bearer $WAVESPEED_API_KEY"
# Start at 2 seconds and increase the interval for long-running tasks.
# Stop on completed, failed, cancelled, or timeout.// npm install wavespeed
const { Client } = require('wavespeed');
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');
const client = new Client(apiKey, {
maxConnectionRetries: 5,
retryInterval: 1.0,
});
try {
const result = await client.run("wavespeed-ai/wan-2.1/v2v-720p", {
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"video": "https://example.com/your-input.mp4",
"negative_prompt": "blurry, low quality, distorted",
"num_inference_steps": 30,
"duration": 5,
"strength": 0.9,
"guidance_scale": 5,
"flow_shift": 3,
"seed": -1
}, {
timeout: 3600,
pollInterval: 2.0,
});
console.log(result.outputs);
} catch (error) {
console.error('Generation failed:', error);
process.exitCode = 1;
}# pip install wavespeed
import os
from wavespeed import Client
client = Client(
api_key=os.environ["WAVESPEED_API_KEY"],
max_connection_retries=5,
retry_interval=1.0,
)
try:
output = client.run(
"wavespeed-ai/wan-2.1/v2v-720p",
{
"prompt": "A cinematic shot of a city at sunset, soft golden light",
"video": "https://example.com/your-input.mp4",
"negative_prompt": "blurry, low quality, distorted",
"num_inference_steps": 30,
"duration": 5,
"strength": 0.9,
"guidance_scale": 5,
"flow_shift": 3,
"seed": -1
},
timeout=3600.0,
poll_interval=2.0,
)
print(output["outputs"])
except Exception as error:
raise SystemExit(f"Generation failed: {error}") from errorWan 2.1 v2v 720p is a WaveSpeedAI model for video editing, exposed as a REST API on WaveSpeedAI. Wan 2.1 V2V converts source videos into AI 720p outputs for scalable video-to-video production and unlimited video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing. You can call it programmatically or try it from the playground above.
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/wan-2.1-v2v-720p.
Wan 2.1 v2v 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.
Key inputs: `prompt`, `video`, `duration`, `seed`, `guidance_scale`, `num_inference_steps`. 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/wan-2.1-v2v-720p.
Average end-to-end generation time on WaveSpeedAI is around 174 seconds per request — measured across recent runs. Queue time scales with global demand; live status is visible in the prediction record.
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.