GLM-5.3Now available
Try it now

MiniMax H3

MiniMax-H3
Open sourceH3 seriesNEW

Overview

Text to videoImage to videoReference to videoFirst/last frame

MiniMax H3 is an open-weight, general-purpose omni-modal video generation model from MiniMax, built around a 33B-parameter dense single-stream Transformer. It understands text, images, video and audio within a single context and generates video with native stereo audio in one pass, covering text-to-video, first/last-frame video, and omni-reference generation guided by images, video and audio. MiniMax says it excels at instruction following, text and brand rendering, and video motion transfer, making it suited to advertising, branding, e-commerce, product design, gaming and other commercial work. TokenFab serves 768P output, 4–15 seconds long.

Multimodal context understanding

Combine text, reference images, reference videos and reference audio in one request and describe in natural language how they relate to the target shot; the model works out the role of each asset.

Joint audio-video generation

Dialogue, ambience, sound effects and music are generated together with the video in native stereo, with lip movement matching the action, so no separate dubbing or post-mixing is needed.

Precise first/last-frame control

Give only a first frame, only a last frame, or both to pin down exactly how the video starts and ends.

Omni-reference generation

Combine up to 9 reference images, 3 reference videos and 3 reference audios to keep characters, style, motion, camera work or voice consistent.

Features

Text to videoText description only; ratio is required and cannot be adaptive.✓
Image to videoProvide a first-frame image; a single image without a role is treated as the first frame, and the output follows its aspect ratio. JPG/JPEG, PNG and WEBP supported, 30 MB max per image; width and height within 256–5760 px, aspect ratio 0.4–2.5; HEIC/HEIF not supported yet.✓
Reference to videoUp to 9 reference images, 3 reference videos and 3 reference audios, 15 media in total; cannot be mixed with first/last frames. Reference videos: MP4 or MOV (H.264/H.265), 2–15 s each, 50 MB max; reference audios: WAV or MP3, 2–15 s each, 15 MB max.✓
First/last frameProvide both first_frame and last_frame images, each with its role; a first frame alone or a last frame alone also works.✓
Effects & templates✕

Pricing

ResolutionOutput videoInput videoInput image前 5 张免费,超出部分计费
768P¥0.5/sec¥0.5/sec¥0.2/image

Billed by output video length; applies to text-to-video, image-to-video, first/last-frame and omni-reference generation, 4–15 seconds (whole seconds). Input video and input images are free for a limited time.

Specifications

RPM (requests/min)30
Resolution768P
Duration4~15s
Max Reference Images9

API Reference

MethodPathPurpose
POST
https://api.tokenfab.cn/v1/files/upload
Upload media (images, video, audio)
POST
https://api.tokenfab.cn/minimax/v2/video_generation
Create a video generation task
GET
https://api.tokenfab.cn/minimax/v2/query/video_generation/{task_id}
Query task status and result

Request Example

Text to video

# 1. Create the task and get a task_id
curl https://api.tokenfab.cn/minimax/v2/video_generation \
  -H "Authorization: Bearer $TOKENFAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MiniMax-H3",
    "content": [
      {"type": "text", "text": "A puppy flies through the sky as white clouds drift past, tracking shot, cinematic look"}
    ],
    "resolution": "768P",
    "duration": 5,
    "ratio": "16:9"
  }'

# 2. Poll the task (every 5 s is recommended) until status is succeeded or failed
curl https://api.tokenfab.cn/minimax/v2/query/video_generation/5708273498515694596 \
  -H "Authorization: Bearer $TOKENFAB_API_KEY"

Image to video

# 1. Upload the first-frame image to get a file_id
curl https://api.tokenfab.cn/v1/files/upload \
  -H "Authorization: Bearer $TOKENFAB_API_KEY" \
  -F purpose=video_generation_input \
  -F file=@first.png

# 2. Reference the first frame with mm_file://<file_id>
curl https://api.tokenfab.cn/minimax/v2/video_generation \
  -H "Authorization: Bearer $TOKENFAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MiniMax-H3",
    "content": [
      {"type": "text", "text": "The person in the frame slowly turns to look at the camera as a breeze lifts their hair"},
      {"type": "image_url", "image_url": {"url": "mm_file://371903373357265086"}, "role": "first_frame"}
    ],
    "resolution": "768P",
    "duration": 5
  }'

First/last frame

curl https://api.tokenfab.cn/minimax/v2/video_generation \
  -H "Authorization: Bearer $TOKENFAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MiniMax-H3",
    "content": [
      {"type": "text", "text": "The subject transitions naturally from the first frame to the last, with smooth, continuous camera movement"},
      {"type": "image_url", "image_url": {"url": "mm_file://<first_frame_file_id>"}, "role": "first_frame"},
      {"type": "image_url", "image_url": {"url": "mm_file://<last_frame_file_id>"}, "role": "last_frame"}
    ],
    "resolution": "768P",
    "duration": 5
  }'

Reference to video

curl https://api.tokenfab.cn/minimax/v2/video_generation \
  -H "Authorization: Bearer $TOKENFAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MiniMax-H3",
    "content": [
      {"type": "text", "text": "The person in image 1 dances hip-hop following the moves in video 1, with background music referencing audio 1"},
      {"type": "image_url", "image_url": {"url": "mm_file://<image_file_id>"}, "role": "reference_image"},
      {"type": "video_url", "video_url": {"url": "mm_file://<video_file_id>"}, "role": "reference_video"},
      {"type": "audio_url", "audio_url": {"url": "mm_file://<audio_file_id>"}, "role": "reference_audio"}
    ],
    "resolution": "768P",
    "duration": 5,
    "ratio": "16:9"
  }'

Response Example

{
  "task": {
    "id": "5708273498515694596",
    "model": "MiniMax-H3",
    "status": "succeeded",
    "created_at": 1792736400,
    "updated_at": 1792736475,
    "content": { "url": "https://.../video-media/out/...(signed query omitted)" },
    "resolution": "768P",
    "duration": 5,
    "ratio": "16:9",
    "usage": {
      "total_seconds": 5, "input_seconds": 0, "output_seconds": 5,
      "input_image_count": 0,
      "total_tokens": 0, "prompt_tokens": 0, "completion_tokens": 0
    },
    "task_type": "generation"
  }
}

Request Parameters

ParameterTypeRequiredDescription
modelstring✓Fixed to "MiniMax-H3".
contentarray✓Content list, up to 32 elements. It must contain exactly one text element (at most 7000 characters); the rest are media elements (image_url / video_url / audio_url). Reference media with mm_file://<file_id> (recommended; upload via /v1/files/upload first) or a publicly reachable https:// URL; http:// and data: URIs are not supported. The request body must not exceed 1 MB, so upload media and reference it rather than embedding it in the body.
content[].rolestring—Media role. image_url takes first_frame / last_frame / reference_image; video_url can only be reference_video and audio_url only reference_audio, and both may be omitted. When several media are given, every image must carry a role; first/last frames cannot be mixed with reference_* media; at most 1 first frame and 1 last frame, reference images ≤ 9, reference videos ≤ 3, reference audios ≤ 3, 15 media in total.
resolutionstring✓Output resolution; only "768P" is supported.
durationinteger✓Video length in seconds, an integer from 4 to 15; the example uses 5.
ratiostring—Aspect ratio: 21:9 / 16:9 / 4:3 / 1:1 / 3:4 / 9:16 / adaptive. Required for text-to-video and cannot be adaptive there; may be omitted when a first/last frame is given, in which case the output follows the first frame's ratio.
callback_urlstring—Not supported yet; omit it or pass an empty string, and poll the query endpoint for the result.
aigc_watermarkbool—Not supported yet; omit it or pass false.