Nodes/arkennemasis - ChatGPT / Codex / fal AI nodes/arkennemasis fal · MiniMax Hailuo 2.3 Standard Image to Video · $0.28-0.56/video
ComfyUI Node

arkennemasis fal · MiniMax Hailuo 2.3 Standard Image to Video · $0.28-0.56/video

768p, and the 6-or-10-Second Dial

By Hishamahmer·Created 3 months ago·Updated 9 days ago· 11
arkennemasis fal · MiniMax Hailuo 2.3 Standard Image to Video · $0.28-0.56/video
  • image
  • video
  • video_path
  • info
◄prompt►
◄prompt_optimizertrue►
◄duration6►
◄max_cost_usd20.0►
◄reuse_identical_runtrue►
◄extra_json►
◄max_concurrent1►

This is the full-quality 768p Hailuo 2.3 image-to-video node: $0.28 for a 6-second clip, $0.56 for 10 seconds. If you've seen the "$0.19" and "$0.33" numbers floating around other Hailuo nodes and wondered which one is the real one - they're all real, they're just different rungs.

Reading the ladder properly

Five Hailuo 2.3 nodes ship in comfyui-arkennemasis, and the pricing is not ordered the way you'd guess:

  • Fast Standard - 768p, $0.19 (6s) / $0.32 (10s). The draft tier.
  • Standard - 768p, $0.28 (6s) / $0.56 (10s). This node.
  • Fast Pro - 1080p, $0.33 flat.
  • Pro - 1080p, $0.49 flat.

So "Standard" costs more per 6-second clip than "Fast Standard" and, at ten seconds, more than a 1080p Fast Pro video. It's the non-fast 768p render: same resolution family as Fast, more compute behind it. Reach for it when Fast's motion looks slightly cheap and 1080p isn't necessary - a 768p cut that's then upscaled is a perfectly respectable pipeline. Reach for Pro when the resolution is the point.

How it works

Same fal machinery as every node in the pack: read FAL_KEY, validate inputs (including rejecting a batch where one picture is expected), estimate the cost against max_cost_usd, upload your frame to fal's CDN for free, submit one billed job, poll with a live status on the node, download into output/fal/fal-ai_minimax_hailuo-2.3_standard_image-to-video/. Hailuo is MiniMax's closed hosted line - the "no local option" case where an API node is genuinely the tool, not a shortcut.

Inputs worth setting

  • image - your first frame, and the single biggest lever on the result. One image, not a batch.
  • prompt - ≤2000 characters. Motion, camera, and what changes. The composition is already decided by the frame, so repeating the scene description in text just wastes your character budget.
  • duration - 6 or 10. This is literally the price dial: doubling the length doubles the bill.
  • prompt_optimizer (default on) - the model's internal prompt rewriter. Turn it off when your prompt is already exactly what you want said.

Optional: max_cost_usd (default $20; the run stops before anything is uploaded if the estimate is above it, 0 = no cap), max_concurrent (default 1 - one paid fal call at a time across the entire run, up to 32), reuse_identical_run (default on: same settings and the same picture returns the file you already paid for, even after a restart), extra_json (JSON merged into the request for any fal field with no box on the node).

Outputs: video - the real VIDEO type, so it plugs into Video Save, Video Assemble or the pack's Load Clips - plus video_path and info (request id, cost estimate, saved files, fal's answer). Silent clip; no audio track comes back.

Install

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

Manager users: Install via Git URL → paste the repo URL. Either way, restart ComfyUI afterwards, then add your key:

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

in the .env sitting next to run_nvidia_gpu.bat. The node shows up under arkennemasis/fal/Video/MiniMax.

Where it goes wrong

Nine times out of ten it's the key - or rather, the .env being somewhere other than the launcher's folder or the ComfyUI folder. The node reads it there and nowhere else, and there's no key widget to fix it from the canvas.

The rest is money discipline. At $0.56 for a 10-second clip, a "let's try a few" session on this node is the expensive kind of fun. Also remember that a 10-second prompt is not twice as easy as a 6-second one: a single action reads better than two, and if you're chasing two beats, render two shots and cut them - the pack's Video Assemble will join them. If a render disappears because ComfyUI restarted, it's still sitting finished on fal; the id is in output/fal/_requests.jsonl and fal Recover Result collects it for free.

Categoryarkennemasis/fal/Video/MiniMax

Inputs (8)

NameTypeDefaultDescription
promptSTRINGText prompt for video generation
prompt_optimizerBOOLEANtrueWhether to use the model's prompt optimizer
durationCOMBO6The duration of the video in seconds.
imageIMAGEURL of the image to use as the first frame
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 (3)

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