MiniMax H3 Image to Video

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.

Examples

MiniMax H3 Image to Video example 1

Parameters

NameTypeDefaultConstraintsDescription
first_frame *Imageimage_uploadimage/*First-frame image URL or Base64 data. Supported image dimensions are 256-5760 pixels per side, with an aspect ratio between 0.4 and 2.5.
prompt *Prompttextarea≤ 7000 charsText description of the desired motion and scene.
last_frameLast Imageimage_uploadimage/*Optional last-frame image URL or Base64 data.
resolutionResolutionselect2k2kOutput video resolution.
durationDurationslider54 ~ 15 · step 1Output video duration in seconds.

Output fields

FieldTypeDescription
videosarray<string>Generated video URLs

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/minimax/h3/image-to-video" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "input": {
    "first_frame": "https://example.com/input.jpg",
    "prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
    "resolution": "2k",
    "duration": 5
  }
}'

# 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/minimax/h3/image-to-video",
    headers=HEADERS,
    json={
        "input": {
            "first_frame": "https://example.com/input.jpg",
            "prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
            "resolution": "2k",
            "duration": 5
        }
    },
)
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/minimax/h3/image-to-video", {
  method: "POST",
  headers: { ...HEADERS, "Content-Type": "application/json" },
  body: JSON.stringify({
    "input": {
      "first_frame": "https://example.com/input.jpg",
      "prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
      "resolution": "2k",
      "duration": 5
    }
  }),
});
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

MiniMax H3 Image to Video

Turn a single first-frame image into a coherent 2K video with prompt-driven motion control.

MiniMax H3 Image to Video is an image-to-video model that transforms a starting image into a high-resolution 2K video using natural-language motion instructions. With optional last-frame guidance, it is well suited for workflows that require stronger scene continuity, controlled progression, and cinematic short-form video generation. It also stands out for no cold start behavior and cost-efficient pricing.

🚀 Key Features

  • First-frame guided generation: Uses the input image to anchor subject identity, composition, style, and opening visual state.
  • Prompt-based motion control: Define movement, camera behavior, lighting, mood, and scene progression with natural language.
  • Optional last-frame guidance: Add a final reference image to better control the ending frame and improve visual continuity.
  • Native 2K output: Generates high-resolution 2K video suitable for premium creative and commercial content.
  • Flexible duration options: Supports video lengths from 4 to 15 seconds for both rapid iteration and more developed scenes.
  • No cold start: Designed for responsive production usage with more predictable turnaround time.

🛠️ Technical Specifications

ItemDetails
Model NameMiniMax H3 Image to Video
Model IDminimax/h3/image-to-video
Task Typeimage-to-video
Model ArchitectureFirst-frame conditioned video generation model with optional last-frame control
Input FormatImage(URL or Base64) + Prompt; optional last-frame image(URL or Base64)
Output FormatVideo
Input Image Requirements256–5760 pixels per side; supported aspect ratio from 0.4 to 2.5
Prompt Length1–7000 characters
Resolution2K
Duration4–15 seconds
FpsNot publicly specified
Last-frame ControlSupported(optional)
LatencyNo cold start; actual inference time varies by workload and duration

Sample Prompts

  1. Slow cinematic push-in on a person standing in a rainy neon-lit street, subtle head movement, reflections on wet pavement, realistic lighting, moody atmosphere.
  2. Animate the product with a slow rotating motion on a clean studio background, slight camera orbit, premium commercial lighting, emphasize metallic texture and highlights.
  3. A white cat jumps down from a windowsill and walks toward the camera, warm sunlight filling the room, natural motion, soft and cozy mood.

💰 Pricing

OptionPrice
Base Price$0.13 / second
5s video$0.65
10s video$1.30
15s video$1.95

💡 Best Use Cases

  • E-commerce and product marketing: Turn product images into dynamic showcase videos for ads, landing pages, and catalog content.
  • Social media content creation: Convert static visuals into short-form motion assets with stronger engagement potential.
  • Previsualization and concept development: Animate concept art or storyboard frames into short cinematic previews.
  • Character and scene animation: Bring illustrations, portraits, or environment art to life while preserving the original visual direction.

🔗 Related Models

  • MiniMax H3 Text-to-Video: Generates high-resolution video directly from Prompt input.
  • MiniMax H3 Reference-to-Video: Generates high-resolution video from reference media plus Prompt guidance.

Related models

Nami Wan 2.2 I2V Spicy A
Image to VideoWaveSpeed

Nami Wan 2.2 I2V Spicy A

WAN 2.2 Spicy converts images into unlimited high-quality videos with smooth animations optimized for scalable content generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.150 / per run
Wan 2.2 Animate
Image to VideoWaveSpeed

Wan 2.2 Animate

Wan 2.2 Animate is a unified character animation & replacement model that replicates movement and expression from a driving video. It turns a single character image into a full performance, copying body movement and facial expressions while keeping the output stable, realistic, and identity-consistent. Generates 720p videos up to 120s.

from $0.200 / per run
Vidu Q3 Image To Video
Image to VideoVidu

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.

from $0.750 / per run
Pixverse V6 Reference to Video
Image to VideoPixVerse

Pixverse V6 Reference to Video

PixVerse V6 Reference-to-Video (Fusion) mode supports 1–3 reference images (subjects, characters, or backgrounds), combining text prompts to deliver superior character consistency and storytelling continuity with native synced audio. Enterprise REST inference API, zero cold starts, high concurrency—perfect for anime, gaming, and multi-shot short films.

from $0.180 / per run
Pixverse V6 Image to Video
Image to VideoPixVerse

Pixverse V6 Image to Video

PixVerse V6 Image-to-Video (fully integrating single-image and first-last frame modes) transforms single or dual images into dynamic clips with cinematic ultra-HD quality, realistic physics, and seamless consistency—perfect for advanced storyboard control, seamless loops, and commercial clips. Enterprise REST inference API, high concurrency, zero cold starts, delivering peak performance at an affordable price.

from $0.180 / per run
Pixverse V5 T2V
Image to VideoPixVerse

Pixverse V5 T2V

PixVerse V5 Text-to-Video generates smooth, natural 5s videos from text prompts in seconds, with 720p output available ($0.20 per 5s). Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.230 / per run
Pixverse V5 I2V
Image to VideoPixVerse

Pixverse V5 I2V

PixVerse V5 converts images to short, smooth, natural-looking videos. 5s video: $0.15 (360p/540p), $0.20 (720p), $0.40 (1080p). Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.230 / per run
Pixverse V5.6 Text to Video
Image to VideoPixVerse

Pixverse V5.6 Text to Video

PixVerse V5.6 transforms text prompts into realistic videos with smooth motion and natural detail in seconds—ideal for stories, ads, and social clips. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.180 / per run