First and last frame to video with MiniMax H3: request and rules

MiniMax H3 fills the motion between an opening and a closing image. On Sume send frame_images with first_frame and last_frame; ratio, length and price rules.

4 min readSume
All posts

To make MiniMax H3 animate between two images, send frame_images on POST /v1/videos with one entry typed first_frame and one typed last_frame; the model fills the motion between them, guided by your prompt. One first_frame alone gives image-to-video, none gives text-to-video, and Sume refuses a last_frame without a first_frame.

Modes are from MiniMax's model card and fal's guide; fields from the Sume Video generation docs, read 2026-09-29.

What does the request look like?

Each entry needs a frame_type. The prompt describes the motion, not the images.

curl -X POST https://api.sume.com/v1/videos \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: h3-frames-001" \
  -d '{
    "model": "minimax-h3",
    "prompt": "The headline slides down into place and the car lights shift from dark to red.",
    "frame_images": [
      { "type": "image_url", "image_url": { "url": "https://example.com/start.png" }, "frame_type": "first_frame" },
      { "type": "image_url", "image_url": { "url": "https://example.com/end.png" }, "frame_type": "last_frame" }
    ],
    "resolution": "768p",
    "duration": 6
  }'

How many frame images can I send?

Frame inputs as MiniMax's model card describes the FL2VA checkpoint, read 2026-09-29.
Images sentResult
0Text-to-video
1First-frame or last-frame video (Sume accepts the first-frame form only)
2First-and-last-frame video

Which aspect ratio does the clip use?

fal's guide says output follows the aspect ratio of the uploaded image for first and last frame. Sume's code sends no aspect ratio on the image-to-video route for these ids, so do not rely on aspect_ratio to crop; crop your images to the ratio you want.

What if I send frame_images and input_references together?

frame_images wins and the request is image-to-video, per the docs. Use input_references alone when you want reference-to-video, and note that a single reference image with no first or last frame is priced and routed as reference-to-video.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume