Nodes/arkennemasis - ChatGPT / Codex / fal AI nodes/arkennemasis fal · MiniMax H3 Text to Video · $0.05-0.16/s
ComfyUI Node

arkennemasis fal · MiniMax H3 Text to Video · $0.05-0.16/s

The full-fat endpoint, 5 to 15 seconds at up to 4K

By Hishamahmer·Created 3 months ago·Updated 9 days ago· 11
arkennemasis fal · MiniMax H3 Text to Video · $0.05-0.16/s
  • target_audio
  • video
  • video_path
  • expanded_prompt
  • info
◄prompt►
◄duration5►
◄resolution2K►
◄seed-1►
◄enable_safety_checkertrue►
◄prompt_expansion_modebalanced►
◄aspect_ratio16:9►
◄max_cost_usd20.0►
◄reuse_identical_runtrue►
◄extra_json►
◄max_concurrent1►

If the Turbo variant is the cheap seat, this is the good seat: fal's plain MiniMax H3 text-to-video endpoint, native 480P/768P generation with 2K and 4K refinement tiers, seven aspect ratios, 5 to 15 seconds with audio generated as part of the same pass.

It's the one to reach for when the prompt is doing all the work and there's no reference image to anchor it. Design a shot, describe it properly, get a clip. If you have a frame you want it to start from, use the image-to-video node instead - that one takes the picture and inherits its canvas.

Why anyone pays for this when H3's weights are open

Because the licence isn't. MiniMax published H3 under a community licence whose Applicable Territory excludes the EU, UK, Republic of Korea and the United States, so in those regions you are not licensed to run the local weights at all. On top of that it's a 33B model with no published consumer hardware floor and roughly 42 GB of weights. The hosted endpoint is the globally available path. For most people Googling this node, that's the whole story.

What the node does on Run

Standard for the pack's fal family: read FAL_KEY from the install .env, validate inputs, estimate cost and stop above max_cost_usd, submit, wait with status shown on the node, download into output/fal/minimax_h3_text-to-video/, show the clip, return it. Everything before the submit is free, so a missing key or a typo'd parameter costs you nothing but a red node.

The inputs that matter

prompt is where all the value is. H3 handles structured shot descriptions well - subject, action, camera, lighting, mood - and the model generates its own sound, so writing the scene (traffic, rain, a room tone) actually pays off in the output.

duration runs 5–15 seconds and bills linearly. resolution defaults to 2K, with 480P and 768P as native generation modes and 2K/4K refining a 768P base - the tooltip is explicit about that, so treat 4K as an expensive upscale, not new detail. Check max_cost_usd before a 15-second 4K experiment; the rate climbs to $0.16/s at the top tier.

aspect_ratio gives you seven shapes, 16:9 default. Portrait for social, 21:9 if you're feeling cinematic.

prompt_expansion_mode deserves your attention because it's invisible money and visible quality: balanced takes about a second to rewrite your prompt, quality can take up to 30 seconds for a richer rewrite, disabled sends your text untouched. The rewrite is returned on the expanded_prompt output. I'd leave it on balanced while iterating and try quality only on a shot that's already close.

target_audio pins a clip (2s minimum, 15MB) over the generated soundtrack - H3 cannot be asked for a silent video, so this is how you take control of the audio.

Rounding out the node: seed (-1 lets the model choose), enable_safety_checker, max_cost_usd, reuse_identical_run, extra_json, max_concurrent.

Outputs: video, video_path, expanded_prompt, info (request id, cost estimate, saved files, fal's full reply). No timings output on this one, so if you're logging elapsed time, you're reading it off the node badge.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/Hishamahmer/comfyui-arkennemasis
pip install httpx

Or ComfyUI Manager → search arkennemasis. Then, in the .env beside run_nvidia_gpu.bat:

FAL_KEY=your-key-from-fal.ai/dashboard/keys

Restart ComfyUI. The pack reads the key from that file and nowhere else - which is also why there's no key widget on any of its nodes.

Traps, briefly

  • reuse_identical_run is on by default. Re-running identical settings returns the identical file for free - great after a restart, annoying when you wanted variance. Turn it off.
  • max_concurrent is 1, so a graph with several fal nodes runs them one after another. Raise it deliberately, and know that a failure stops the queue rather than letting it keep spending.
  • Restarted mid-wait? The job survived on fal. Take the request id from output/fal/_requests.jsonl and use fal Recover Result - free.
  • The badge shows a rate for typical settings; the real cost check runs before anything is uploaded, and it measures what you actually connected.
Categoryarkennemasis/fal/Video/MiniMax

Inputs (12)

NameTypeDefaultDescription
promptSTRINGText prompt for video generation
durationINT55–15The duration of the video in seconds.
resolutionCOMBO2KThe resolution of the generated video. 480P and 768P are native generation modes; 2K and 4K upscale a 768P base result.
seedINT-1-1–2147483647Random seed. A random seed is selected when omitted. -1 leaves it to the model.
enable_safety_checkerBOOLEANtrueIf set to true, the safety checker will be enabled.
prompt_expansion_modeSTRINGbalancedHow much effort to spend rewriting the prompt before generation. 'disabled' skips prompt expansion. 'fast' returns in about a second. 'balanced' picks per request. 'quality' spends up to ~30s on a richer prompt. Empty leaves it out.
aspect_ratioCOMBO16:9The aspect ratio of the generated video.
target_audiooptAUDIOOptional URL of an audio clip at least 2 seconds long (maximum 15 MB) to pin to the generated soundtrack. Longer clips are trimmed to the requested video duration, keeping the beginning. The original audio replaces the output soundtrack, padded with silence if shorter than the video, without changing playback speed. Exceptionally high sample rates may be resampled to 96 kHz. Accepts an HTTP(S) URL or a base64 data UR
max_cost_usdoptFLOAT20.00–100000Safety cap. If the estimated cost of this run is above this many US dollars the node stops BEFORE sending anything to fal. 0 = no cap.
reuse_identical_runoptBOOLEANtrueIf these exact inputs (the settings AND the same pictures/clips/audio) were already paid for and the files are still in output/fal, return them instead of paying again - also after a ComfyUI restart. Turn off for a fresh take with the same settings.
extra_jsonoptSTRINGAdvanced: a JSON object merged into the request last, for any fal field this node has no box for. Example: {"seed": 7}. Leave empty normally.
max_concurrentoptINT11–32How many paid fal calls may run at the same time in one run, across every fal node. 1 (default) = one after another. This node starts its paid part only while fewer than this many fal calls are running. Once any fal node fails, the ones still waiting are not started, so nothing more is billed.

Outputs (4)

NameTypeDescription
videoVIDEO—
video_pathSTRING—
expanded_promptSTRING—
infoSTRINGJSON: request id, cost estimate, saved files and fal's full answer.