MiniMax-H3. It renders 5-second clips at 24 fps with synchronized audio, so the sound you describe is part of the output.
Example
Submit a job
POST /v1/videos/generations
The response is
202 Accepted:
Poll for the result
GET /v1/videos/generations/{id}
status moves from queued to processing, then to completed or failed. A completed response carries the clip:
error instead, with a code and a message.
Save the clip on the first read
The response that first reportscompleted is the download. Each clip is served once: a second GET returns 410 with "error": "job_already_retrieved". Decode and save the clip from the response you stopped polling on.
A clip you never collect stays available for one hour after it completes, and it is billed either way. After that hour, or for an ID that isn’t yours, the GET returns 410 with "error": "job_expired". If your balance runs out before you collect, the GET returns 402; top up within the hour to collect the clip.
Prompt screening
Prompts are screened before a job is accepted. A refused prompt returns400 with "error": "content_policy_violation", and no job is created or billed. If screening is briefly unavailable, you get 503 with "error": "safety_check_unavailable", and retrying shortly is safe.
To screen prompts with your own policy as well, call moderation on the exact prompt you are about to submit. If a model wrote or expanded the prompt, screen the expanded version too.
Errors
Errors from the video handlers use a flat shape,{ "error": "<code>", "message": "..." }:
These use the OpenAI error envelope,
{ "error": { "message", "type", "code", "param" } }, instead:
See errors for the full reference.
Billing
Video bills per second of output, at the model’s clip length. EveryMiniMax-H3 clip is 5 seconds, so each completed clip bills 5 seconds at the per-second rate. A clip is billed when it completes, whether or not you collect it, so save it on the first read. On GET /v1/models the rate is in media_pricing with billing_unit: "second_video". It is also on the model page, quoted per minute of video.
See also
- Regions — how long prompts and clips stay in the EU stack.
- Model discovery — video models have
category: "video".