Vidu Q4 Preview Image to Video
vidu/q4-preview/image-to-video
Generate a 3–16 second video from a prompt and one image, with optional audio and prompt expansion. Supports 540p, 720p, 1080p, 2k and 4k.
Examples
Parameters
| Name | Type | Default | Constraints | Description |
|---|---|---|---|---|
| prompt *Prompt | textarea | — | ≤ 5000 chars | The positive prompt for the generation. |
| image *Image | image_upload | — | image/* · 1–1 items | First-frame image URL array (one image). |
| resolutionResolution | select | 720p | 540p | 720p | 1080p | 2k | 4k | The resolution of the generated media. |
| durationDuration | slider | 5 | 3 ~ 16 · step 1 | The duration of the generated media in seconds. |
| enable_prompt_expansionEnable Prompt Expansion | boolean | false | — | Whether to enable AI prompt rewriting. |
| generate_audioGenerate Audio | boolean | true | — | Whether to generate audio. |
| seedSeed | number | — | step 1 | The random seed to use for the generation. -1 means a random seed will be used. |
Output fields
| Field | Type | Description |
|---|---|---|
| videos | array<string> |
API
Call this model through one unified REST API. Get a key on the API Keys page.
cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/vidu/q4-preview/image-to-video" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"prompt": "A sleek luxury perfume bottle on a glossy black pedestal slowly rotates as soft golden light sweeps across the glass, revealing elegant reflections and floating particles in the air. The camera performs a smooth cinematic push-in with subtle parallax, creating a premium advertising look. High detail, refined motion, realistic lighting, polished product-commercial style.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/09/7598f96abcb7.jpeg"
],
"resolution": "720p",
"duration": 5,
"enable_prompt_expansion": false,
"generate_audio": true,
"seed": -1
}
}'
# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
-H "Authorization: Bearer YOUR_API_KEY"Python
import time, requests
API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
# 1) Submit
resp = requests.post(
"https://www.namifusion.com/api/v1/marketplace/run/vidu/q4-preview/image-to-video",
headers=HEADERS,
json={
"input": {
"prompt": "A sleek luxury perfume bottle on a glossy black pedestal slowly rotates as soft golden light sweeps across the glass, revealing elegant reflections and floating particles in the air. The camera performs a smooth cinematic push-in with subtle parallax, creating a premium advertising look. High detail, refined motion, realistic lighting, polished product-commercial style.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/09/7598f96abcb7.jpeg"
],
"resolution": "720p",
"duration": 5,
"enable_prompt_expansion": False,
"generate_audio": True,
"seed": -1
}
},
)
resp.raise_for_status() # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()
# 2) Poll until a terminal state (completed / failed / cancelled).
# This model is allowed up to 1800s server-side.
deadline = time.time() + 1860
while task.get("status") not in ("completed", "failed", "cancelled"):
if time.time() > deadline:
raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
time.sleep(3)
poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
poll.raise_for_status()
task = poll.json()
print(task["status"], task.get("output"))JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };
// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/vidu/q4-preview/image-to-video", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"prompt": "A sleek luxury perfume bottle on a glossy black pedestal slowly rotates as soft golden light sweeps across the glass, revealing elegant reflections and floating particles in the air. The camera performs a smooth cinematic push-in with subtle parallax, creating a premium advertising look. High detail, refined motion, realistic lighting, polished product-commercial style.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/09/7598f96abcb7.jpeg"
],
"resolution": "720p",
"duration": 5,
"enable_prompt_expansion": false,
"generate_audio": true,
"seed": -1
}
}),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();
// 2) Poll until a terminal state (completed / failed / cancelled).
// This model is allowed up to 1800s server-side.
const deadline = Date.now() + 1860 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
await new Promise((r) => setTimeout(r, 3000));
const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
task = await poll.json();
}
console.log(task.status, task.output);Documentation
Vidu Q4 Preview Image to Video
vidu/q4-preview/image-to-video
Generate a 3–16 second video from a prompt and one image, with optional audio and prompt expansion. Supports 540p, 720p, 1080p, 2k and 4k.
Parameters
| Parameter | Type | Required | Default | Limits / description |
|---|---|---|---|---|
prompt | string | Yes | — | max 5000 chars; The positive prompt for the generation. |
image | array | Yes | — | 1–1 URLs; First-frame image URL array (one image). |
resolution | string | No | "720p" | 540p, 720p, 1080p, 2k, 4k; The resolution of the generated media. |
duration | integer | No | 5 | 3–16; step 1; The duration of the generated media in seconds. |
enable_prompt_expansion | boolean | No | false | Whether to enable AI prompt rewriting. |
generate_audio | boolean | No | true | Whether to generate audio. |
seed | integer | No | — | The random seed to use for the generation. -1 means a random seed will be used. |
prompt and image are required. image is a single-item URL array in Nami. seed=-1 requests a random seed. AI prompt expansion is optional and defaults to false.
Pricing
| Resolution | USD / second | Credits / second | USD / 5 seconds |
|---|---|---|---|
| 540p | $0.045 | 4.5 | $0.225 |
| 720p | $0.095 | 9.5 | $0.475 |
| 1080p | $0.12 | 12 | $0.6 |
| 2k | $0.19 | 19 | $0.95 |
| 4k | $0.39 | 39 | $1.95 |
Total price = resolution rate × duration. duration accepts integers from 3 to 16. Defaults: 720p, 5 seconds, audio enabled. Default total: $0.475 = 47.5 credits. Only resolution and duration affect the price; audio generation, seed, and supported reference inputs or prompt expansion add no separate fee. USD 1 = 100 credits. List prices match WaveSpeed; account discounts are applied separately.
API
curl -X POST https://www.namifusion.com/api/v1/marketplace/run/vidu/q4-preview/image-to-video \
-H "Authorization: Bearer $API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"input": {
"prompt": "A sleek luxury perfume bottle on a glossy black pedestal slowly rotates as soft golden light sweeps across the glass, revealing elegant reflections and floating particles in the air. The camera performs a smooth cinematic push-in with subtle parallax, creating a premium advertising look. High detail, refined motion, realistic lighting, polished product-commercial style.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/09/7598f96abcb7.jpeg"
],
"resolution": "720p",
"duration": 5,
"enable_prompt_expansion": false,
"generate_audio": true,
"seed": -1
}
}'
curl 'https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID' \
-H "Authorization: Bearer $API_KEY"
Submit returns task_uuid. Poll until completed or failed. Successful output.videos is an array of video URLs.
Related models
xAI Grok Imagine Video v1.5 Image to Video
Animate one input image with a text prompt into a 1-15 second video at 480p or 720p.
vidu/q3/image-to-video-spicy
Vidu Q3 Image-to-Video Spicy generates unlimited high-quality videos from images with smooth animations and diverse motion, optimized for scalable content generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Vidu Q3 Image To Video
Vidu Q3 Image-to-Video turns text prompts into high-quality videos with exceptional visual fidelity and diverse motion. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

MiniMax H3 Spicy Image to Video
Animate a first-frame image with optional prompt and last-frame guidance. Supports 480p, 540p, 768p and 1080p video, with durations from 3 to 15 seconds.
MiniMax H3 Image to Video
MiniMax H3 Image to Video animates a first-frame image into a coherent 2K video, with natural-language motion instructions and optional last-frame control for consistent motion, scene continuity, and cinematic video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
ltx-2.5/image-to-video
LTX 2.5 Image-to-Video animates a first-frame image into high-fidelity synchronized audio-video content, with optional last-frame guidance and 720P / 1080P / 2K / 4K output for cinematic videos, social content, ads, and production workflows. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
ai/ltx-2.3-spicy/image-to-video-lora
LTX 2.3 Spicy LoRA Image to Video API turns a reference image and prompt into expressive AI videos using selectable LoRA presets, optional LoRA strength overrides, duration, and resolution controls. Run fast REST inference on MaaS with no cold starts and affordable pricing.
ai/ltx-2.3-spicy/image-to-video
LTX 2.3 Spicy Image-to-Video API generates expressive AI videos from a reference image and prompt. Choose style presets, duration, and resolution with fast REST inference, no cold starts, and affordable pricing on MaaS.