xAI Grok Imagine Video v1.5 Reference to Video
x-ai/grok-imagine-video-v1.5/reference-to-video
Generate a 1-15 second video from a prompt and 1-7 reference images at 480p or 720p.
Examples
Parameters
| Name | Type | Default | Constraints | Description |
|---|---|---|---|---|
| prompt *Prompt | textarea | — | ≤ 5000 chars | Text description of the desired motion and scene. |
| images *Reference Images | image_upload_group | — | image/* · 1–7 items | Reference image URLs guiding the video. Up to 7 images supported. |
| durationDuration | slider | 6 | 1 ~ 15 · step 1 | Output video duration in seconds. |
| aspect_ratioAspect Ratio | select | 16:9 | 16:9 | 1:1 | 9:16 | 3:2 | 2:3 | Aspect ratio of the generated video. |
| resolutionResolution | select | 720p | 720p | 480p | Output video resolution. |
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/x-ai/grok-imagine-video-v1.5/reference-to-video" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
"images": [
"https://example.com/input.jpg"
],
"duration": 6,
"aspect_ratio": "16:9",
"resolution": "720p"
}
}'
# 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/x-ai/grok-imagine-video-v1.5/reference-to-video",
headers=HEADERS,
json={
"input": {
"prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
"images": [
"https://example.com/input.jpg"
],
"duration": 6,
"aspect_ratio": "16:9",
"resolution": "720p"
}
},
)
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 300s server-side.
deadline = time.time() + 360
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/x-ai/grok-imagine-video-v1.5/reference-to-video", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
"images": [
"https://example.com/input.jpg"
],
"duration": 6,
"aspect_ratio": "16:9",
"resolution": "720p"
}
}),
});
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 300s server-side.
const deadline = Date.now() + 360 * 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
xAI Grok Imagine Video v1.5 Reference to Video
Turn up to seven reference images into identity-consistent, stylized short videos.
🚀 Key Features
- Reference-guided generation: Use 1 to 7 reference images to anchor subject identity, appearance, and visual style.
- Prompt-based motion control: Describe motion, camera behavior, atmosphere, and scene progression using natural language.
- Identity and style consistency: Multiple references help maintain a coherent character, brand look, or aesthetic across the clip.
- Flexible output settings: Choose between 480p and 720p, with multiple aspect ratios for landscape, square, and vertical delivery.
- Production-ready performance: Suitable for character content, concept visualization, ad creatives, and stylized storytelling.
🛠️ Technical Specifications
| Item | Details |
|---|---|
| Model architecture | Reference-guided image-to-video generation model |
| Input | Prompt + 1 to 7 reference images |
| Output Format | Video |
| Reference image count | Up to 7 images |
| Duration | 1 to 15 seconds(default: 6s) |
| Aspect Ratio | 16:9, 1:1, 9:16, 3:2, 2:3(default: 16:9) |
| Resolution | 720p, 480p(default: 720p) |
| Motion/style control | Jointly controlled by reference images and prompt |
| Latency | Optimized for fast inference; actual runtime varies by duration, resolution, and number of reference images |
| Ideal tasks | Character-driven clips, identity-consistent videos, creative prototyping, marketing content |
Sample Prompts
- A stylish woman walks slowly through a city street at dusk, hair moving in the wind, smooth tracking shot, cinematic lighting.
- The character from the reference images turns toward the camera under neon lights, subtle depth of field, dreamy modern atmosphere.
- Animate the subject with natural hand movement and a gentle smile, with the camera slowly pushing from medium shot to close-up for a social promo feel.
💰 Pricing
| Pricing Item | Price |
|---|---|
| Base Price | $0.09 |
| 480p | $0.08 / second |
| 720p | $0.14 / second |
| Additional reference image | +$0.01 each |
| Billing rule | Linear by duration, rounded up to the next whole second |
Example Pricing(1 reference image)
| Resolution | 1s | 5s | 10s | 15s |
|---|---|---|---|---|
| 480p | $0.09 | $0.41 | $0.81 | $1.21 |
| 720p | $0.15 | $0.71 | $1.41 | $2.11 |
💡 Best Use Cases
- Identity-consistent video creation: Generate short clips that preserve a character, spokesperson, or branded visual identity.
- Social media content: Create stylized vertical, square, or landscape videos for posts, promos, and short-form campaigns.
- Advertising and marketing: Produce visually consistent motion assets from product or character references.
- Concept visualization: Rapidly explore motion direction, camera ideas, and scene mood before full production.
🔗 Related Models
- xAI Grok Imagine Video v1.5 Text-to-Video: Generates video from a prompt alone for fully prompt-driven creation.
- xAI Grok Imagine Video v1.5 Image-to-Video: Animates a single image for simpler image-to-video workflows.
Related models
MiniMax H3 Reference to Video
MiniMax H3 Reference to Video generates coherent 2K videos from natural-language prompts and multimodal references, including images, videos, and audio, guiding subject consistency, motion, timing, visual style, and scene continuity. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Gemini Omni Flash Reference to Video API
Gemini Omni Flash Reference to Video creates short AI videos with synchronized audio from one or more reference images and a text prompt, preserving visual identity and following the provided references for guided multimodal video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Seedance 2.0 Mini Reference to Video
Seedance 2.0 Mini Reference-to-Video is a high-speed, cost-effective video generation model developed by ByteDance, engineered specifically for creating multi-shot videos with a cinematic feel. By seamlessly combining reference images with text prompts, it generates highly narrative video segments. The model features advanced AI camera control and ensures robust character consistency across different scenes. It supports multiple output resolutions from 480P up to 4K, durations ranging from 4 to 15 seconds, and flexible aspect ratios. Complete with an out-of-the-box REST inference API, it delivers exceptional performance with zero cold starts, offering an affordable yet premium solution for professional video creation.
Seedance 2.0 Fast reference-to-video
Seedance 2.0 Fast (Video-Edit) edits an input video from a natural-language prompt at a faster, cheaper tier. Built on ByteDance Seed's unified multimodal architecture, it preserves subject identity, composition, and motion while rewriting lighting, style, weather, environment, or specific elements as instructed. Ready-to-use REST API, best performance, no coldstarts, affordable pricing.