Browse ModelsViduVidu Start End To Video Q2 Turbo

Vidu Start End To Video Q2 Turbo

Vidu Start End To Video Q2 Turbo

Playground

Try it on WavespeedAI!

Vidu Q2 Turbo Start-End to Video creates smooth Image-to-Video transitions between start and end images with fast high-quality results. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

Vidu Q2 Start-End to Video Turbo

Vidu Q2 Start-End to Video Turbo creates a coherent video from just two images: a start frame and an end frame. Turbo accelerates bi-frame interpolation with optimized inference for faster turnaround and smoother motion — ideal for scene transitions, bridging shots, and rapid storytelling.


Why Choose This?

  • Bi-frame guidance Anchors identity, layout, and lighting from both start and end frames.

  • Turbo temporal smoothing Reduces flicker and popping while preserving subject integrity at higher throughput.

  • Object and human-aware motion Protects faces, hands, hair, and thin structures while animating garments and props.

  • Layout-smart interpolation Respects depth, occlusion, and parallax for clean foreground/background motion.

  • Adaptive camera pathing Natural pans, push-ins, and dolly moves without warping.

  • Speed-optimized pipeline Faster than Pro at the same settings, perfect for rapid iteration.


Parameters

ParameterRequiredDescription
start_frameYesStarting image for the video
end_frameYesEnding image for the video
promptNoDescribe motion style, mood, or camera movement
durationNoVideo length in seconds (1–10)
resolutionNoOutput resolution: 540p, 720p, or 1080p
movement_amplitudeNoMotion intensity: auto, small, medium, or large
bgmNoEnable background music generation
seedNoRandom seed for reproducibility (-1 for random)

How to Use

  1. Upload start frame — the beginning image of your video.
  2. Upload end frame — the ending image of your video.
  3. Write a prompt (optional) — describe motion style, mood, or camera movement.
  4. Set duration — choose video length from 1 to 10 seconds.
  5. Select resolution — 540p, 720p, or 1080p based on quality needs.
  6. Enable BGM (optional) — add background music automatically.
  7. Set seed (optional) — use for reproducible results.
  8. Run — submit and download your video.

Pricing

ResolutionDurationPrice
540p1s$0.03
540p2s$0.04
540p3s$0.05
540p4s$0.06
540p5s$0.07
540p6s$0.08
540p7s$0.09
540p8s$0.10
540p9s$0.20
540p10s$0.30
720p1s$0.04
720p2s$0.05
720p3s$0.10
720p4s$0.15
720p5s$0.20
720p6s$0.25
720p7s$0.30
720p8s$0.35
720p9s$0.45
720p10s$0.50
1080p1s$0.175
1080p2s$0.225
1080p3s$0.275
1080p4s$0.325
1080p5s$0.375
1080p6s$0.425
1080p7s$0.475
1080p8s$0.525
1080p9s$0.625
1080p10s$0.725

Billing Rules

540p: $0.03 for 1s, +$0.01/s up to 8s, then $0.20 for 9s, $0.30 for 10s

720p: $0.04 for 1s, $0.05 for 2s, then +$0.05/s from 3s

1080p: $0.175 for 1s, then +$0.05/s up to 8s, then +$0.10/s for 9s-10s


Best Use Cases

  • Storyboarding and Concept Animation — Animate between keyframes to preview beats in seconds.
  • Scene Interpolation — Seamless bridges between shots with consistent style.
  • Before/After Visualization — Visualize transformations with smooth, controlled motion.
  • Film Pre-visualization — Explore blocking and camera moves early and often.
  • Transitions — Create smooth video transitions between key moments.

Pro Tips

  • For large pose or layout jumps, try shorter durations or insert intermediate keyframes.
  • Use consistent lighting and style between start and end frames for smoother interpolation.
  • Turbo generally returns faster than Pro at the same settings.
  • Add a prompt to guide the motion style and camera movement between frames.

Notes

  • Maximum duration is 10 seconds per generation.
  • Actual processing time depends on resolution, duration, and current queue load.
  • Ensure you have rights to all uploaded images.
  • For complex transformations, consider using intermediate keyframes.

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/vidu/start-end-to-video-q2-turbo" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "duration": 5,
    "resolution": "720p",
    "bgm": true,
    "movement_amplitude": "auto",
    "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 start image for generating the output.
last_imagestringYes--The end image for generating the output.
durationnumberNo51 ~ 10The duration of the generated media in seconds.
resolutionstringNo720p720p, 1080pVideo resolution.
bgmbooleanNotrue-The background music for generating the output.
movement_amplitudestringNoautoauto, small, medium, largeThe movement amplitude of objects in the frame. Defaults to auto, accepted value: auto small medium large.
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.outputsstringArray 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.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.