MiniMax H3 Max · Text to Video
Fast H3 Clips, and Mind That 1:1 Default
- video
- task id
Type a brief, get a clip with sound. That's the whole pitch, and it's the cheapest way to find out whether MiniMax H3's audiovisual thing is worth building a workflow around - about $0.05 per second, no GPU, no downloads.
What you're calling
H3 is MiniMax's 33B omni-modal video model, the lab's first open-weights generation release (August 2026) and the first credible open answer to Veo's native audio: dialogue, foley and room tone generated in the same pass as the picture rather than layered on top. "Max" is the fast-generation variant - the trade is speed, and at this price the difference you notice is mostly in scheduling, not quality. This node runs it on SpicyAPI's servers and drops the MP4 back into your graph as a VIDEO.
The community's first-impression verdict on H3's launch was strong ("Minimax H3 is very, VERY good" was a top comment the day the weights were announced), but that's a launch-window signal, not a settled one. Treat this node as the cheap way to test that claim on your own prompts instead of taking anyone's word for it.
How it works
This is an API-wrapper node, the category the KB's API-node essay covers in depth: the graph looks local, the inference isn't. The node's inputs are generated from the model's published schema, so the dropdowns and sliders mirror what the API accepts. Press Run and it quotes the job, creates it, polls while printing progress on the node itself, then downloads the result and converts it into ComfyUI's VIDEO type. Type it into Save Video and you're done.
Inputs worth understanding
- prompt - subject, action, camera, mood. Say the sound out loud if you want something specific; the audio is generated, so silence in the prompt tends to mean generic ambience in the result.
- aspect_ratio - the trap on this node. It defaults to 1:1, and six ratios run from 21:9 to 9:16. If you're making anything that will end up on a normal screen, change it to 16:9 before you hit Run. Plenty of first attempts get billed at square because nobody looked.
- duration_seconds - default 8, range 5 to 15.
- resolution - 480p or 768p, default 768p.
- enable_prompt_expansion - off by default. Turning it on adds a flat per-request fee and rewrites your brief into something fuller first; useful for one-line ideas, wasteful when your prompt is already precise.
Outputs: video and task id - the latter being the exact handle support needs if a job fails.
No seed here, and no image input: this variant has no optional sockets at all, which makes it the cleanest H3 node to start with.
Installing it
ComfyUI Manager → SpicyAPI → install → restart. Or by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi
Restart ComfyUI, then Settings > SpicyAPI and paste a key from spicyapi.ai/console/keys. Restart once more - the node list is built from your account's catalogue at startup, so anything added since your last launch appears only then. On a server, set SPICY_API_KEY instead. The pack installs no dependencies at all; it uses the aiohttp, torch and PyAV that already ship with ComfyUI.
Being sensible about the bill
Nothing here is free after the first call, so do two things once: set Max cost per run in Settings > SpicyAPI (the node refuses any quote above it before a task exists), and get comfortable with the fixed-seed default. Seeds start on fixed so that re-queueing the same workflow reuses your first result rather than billing a second one behind your back - switch control after generate to randomize when you genuinely want a new take. Cancelling a run stops the waiting, not the job: the task finishes on SpicyAPI, is charged if it succeeds, and lives in your console for up to 14 days. Your images and prompts leave your machine on every call, and the model's own filter, not the node, decides what it will render.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Describe the subject, action, camera, and mood of the shot. | |
| aspect_ratio | COMBO | 1:1 | Output aspect ratio. |
| duration_seconds | INT | 85–15 | Requested output length in seconds, from 5 to 15. |
| resolution | COMBO | 768p | Output resolution. |
| enable_prompt_expansion | BOOLEAN | false | Expand the prompt into a fuller description before generating. Requests with it on add a flat per-request prompt-expansion fee. |
| seed | INT | 00–2147483647 | This model takes no seed, so the number is never sent. Changing it makes ComfyUI run the node again: set 'control after generate' to randomize for a new result on every run; every run is billed. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| task id | STRING | The SpicyAPI task id, for the console logs or support. |