SuperAPI AI Directory

minimax-h3

Design & creation

View repository

Updated 10-15 21:41

About this skill

MiniMax H3 Video

Generate high-definition 2K videos through Frevana's OpenRouter video endpoint using minimax/hailuo-3.

Model Characteristics

  • Model ID: minimax/hailuo-3
  • Resolution: 2K (fixed)
  • Aspect Ratios: 16:9 (default), 9:16, 1:1, 4:3, 3:4, 21:9
  • Durations: 5 to 15 seconds (default: 6)
  • Frame Control: Supports both first_frame and last_frame (image-to-video)
  • Input References: Reference images (image_url)
  • Audio: Native synchronized audio generation supported (enabled by default)
  • Seed: Deterministic seed is not supported by this model

Prerequisites & Authentication

  • FREVANA_TOKEN (or --token) or FREVANA_API_KEY (or --api-key) in the environment
  • Optional FREVANA_AGENT_APP_INSTANCE_ID (or --agent-app-instance-id) sent as x-frevana-agent-app-instance-id
  • curl, bash, and python3

Invocation

# Text-to-video: submit and wait for video completion
bash skills/minimax-h3/scripts/generate_video.sh \
  --prompt "A cinematic drone shot flying over misty autumn mountains at sunrise, photorealistic, 2K" \
  --duration 6 \
  --aspect-ratio 16:9 \
  --download-dir ./output

# Image-to-video with first frame
bash skills/minimax-h3/scripts/generate_video.sh \
  --prompt "The camera slowly pans out as waves lap against the shore" \
  --first-frame ./beach.jpg \
  --duration 6 \
  --download-dir ./output

# Check status of an existing job
bash skills/minimax-h3/scripts/generate_video.sh status --job-id <JOB_ID>

# Wait for an existing job to complete
bash skills/minimax-h3/scripts/generate_video.sh wait --job-id <JOB_ID> --download-dir ./output

Allowed Options

  • -p, --prompt TEXT: Text description of the video (required for create)
  • --prompt-file PATH: Path to file containing prompt
  • --model MODEL: Model slug (default: minimax/hailuo-3)
  • --duration SEC: Duration in seconds (5-15, default: 6)
  • --aspect-ratio RATIO: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9 (default: 16:9)
  • --resolution RES: 2K (default: 2K)
  • --size WIDTHxHEIGHT: Exact output dimensions; overrides --resolution and --aspect-ratio
  • --first-frame, --image PATH/URL: Image path or URL for first frame
  • --last-frame PATH/URL: Image path or URL for last frame
  • --reference-image PATH/URL: Add a reference image; repeat for multiple images
  • --reference-audio URL: Unsupported by this model
  • --reference-video URL: Unsupported by this model
  • --audio: Generate audio (default: true)
  • --no-audio: Disable audio generation
  • --watermark: Enable AIGC watermark
  • --no-watermark: Disable AIGC watermark
  • --wait: Wait for job completion and download/output (default in CLI)
  • --no-wait: Submit job and return immediately with Job ID
  • --poll-interval SEC: Seconds between status checks (default: 10)
  • --max-wait SEC: Maximum seconds to wait before timeout (default: 600)
  • --download-dir DIR: Directory to download completed MP4 video
  • -o, --output FILE: Path to save output JSON or MP4 file
  • -t, --text-only: Output only the video URL or downloaded file path
  • --dry-run: Print request payload JSON and exit without network calls
  • --token TOKEN: Frevana Bearer token override
  • --api-key KEY: Frevana API key override
  • --agent-app-instance-id ID: Agent App instance ID override

Guardrails

  • For semantic requests such as "720p landscape" or "vertical 2K", use --resolution with --aspect-ratio.
  • Use --size only when the user explicitly requires exact WIDTHxHEIGHT pixels; it overrides and replaces both semantic dimension fields in the request payload.
  • Validate that --duration is an integer between 5 and 15 seconds.
  • Validate that --resolution is 2K. Unsupported resolutions will be rejected client-side before calling the API.
  • Do not pass --seed; MiniMax H3 does not support seed parameters.
  • If --first-frame or --last-frame points to a local file, the script automatically encodes it as a base64 data URI.
  • --size is format-checked locally but not matched against a static model allowlist; model/provider compatibility is validated by the API.
  • Frame images and input references may be sent together; OpenRouter gives frameImages precedence and treats the request as image-to-video.