Vidu Image To Video Q2 Turbo
Playground
Try it on WavespeedAI!Vidu Q2 Turbo Image to Video generates smooth transition videos between specified image. New model with good effect, fast generation.
Features
Vidu Q2 Turbo
Create a coherent shot from just two images: a start frame and an end frame—now in Turbo. Q2 Turbo accelerates bi-frame interpolation with optimized inference for faster turnaround and smoother motion, ideal for scene transitions, bridging shots, and rapid storytelling. No local setup required.
Why it looks great (and fast)
- 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- & 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-aware denoising: balances crisp detail with cinematic smoothness—no plastic sheen, even at faster settings.
Use Cases
- Storyboarding & concept animation: animate between keyframes to preview beats in seconds.
- Scene interpolation in long-form: seamless bridges between shots with consistent style.
- Instructional before→after: visualize transformations with smooth, controlled motion.
- Film pre-viz: explore blocking and camera moves early and often.
How to Use
- Upload your start frame and end frame.
- Add a brief prompt (optional) to steer mood, motion style, or camera vibe.
- Choose duration (e.g., 2–8 s).
- Set resolution (720p, 1080p).
- (Optional) Add BGM.
- (Optional) Set seed to reproduce results.
- Submit the job, and use seed to reproduce your result.
- Preview and download your video.
Price
| Duration (s) / Model | 540p (USD) | 720p (USD) | 1080p (USD) |
|---|---|---|---|
| 1 | 0.03 | 0.04 | 0.175 |
| 2 | 0.04 | 0.05 | 0.225 |
| 3 | 0.05 | 0.1 | 0.275 |
| 4 | 0.06 | 0.15 | 0.325 |
| 5 | 0.07 | 0.2 | 0.375 |
| 6 | 0.08 | 0.25 | 0.425 |
| 7 | 0.09 | 0.3 | 0.475 |
| 8 | 0.1 | 0.35 | 0.525 |
resolution. Please follow the final deduction.
Accelerated Inference
Turbo uses an optimized pipeline powered by WaveSpeedAI to cut latency and compute overhead while maintaining detail and temporal stability. The stack is tuned for batch throughput and real-time previews, so rapid iteration stays sharp and consistent. For implementation details, see our engineering blog post.
Notes
- Actual processing time depends on resolution, duration, motion settings, and current queue; Turbo generally returns faster than Pro at the same settings.
- For large pose or layout jumps, try shorter durations or insert intermediate keyframes for the cleanest motion path.
- Ensure you have rights to all uploaded images; outputs inherit input content constraints.
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/image-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
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
| prompt | string | Yes | - | The positive prompt for the generation. | |
| image | string | Yes | - | The start image for generating the output. | |
| duration | integer | No | 5 | 1, 2, 3, 4, 5, 6, 7, 8 | The duration of the generated media in seconds. |
| resolution | string | No | 720p | 540p, 720p, 1080p | Video resolution. |
| bgm | boolean | No | true | - | The background music for generating the output. |
| movement_amplitude | string | No | auto | auto, small, medium, large | The movement amplitude of objects in the frame. Defaults to auto, accepted value: auto small medium large. |
| seed | integer | No | -1 | -1 ~ 2147483647 | The random seed to use for the generation. -1 means a random seed will be used. |
Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data.id | string | Unique identifier for the prediction, Task Id |
| data.model | string | Model ID used for the prediction |
| data.outputs | array | Array of URLs to the generated content (empty when status is not completed) |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |