Nodes/KIE.ai Nodes Next/MiniMax H3 Text-to-Video
ComfyUI Node

MiniMax H3 Text-to-Video

MiniMax H3 text-to-video, without the licence that geofences you out

By felipederosilva·Created about a month ago·Updated about 22 hours ago· 3
MiniMax H3 Text-to-Video
    • video
    • url
    • all_urls_json
    • task_id
    • raw_json
    • credits_consumed
    • credits_left
    ◄promptA cat walking slowly on the beach at sunset, cinematic shot, waves gently lapping the shore►
    ◄aspect_ratio21:9►
    ◄duration6►
    ◄resolution2K►
    ◄timeout_seconds1200►
    ◄callback_url►

    What it is

    H3 is MiniMax's 33B omni-modal video model - text, image, video and audio treated as one input context, 4–15 second clips up to 2K at 24fps, with native stereo audio rather than a bolted-on sound pass. It went open-weights in August 2026 and immediately landed near the top of the video-editing arena.

    Now the asterisk. The MiniMax H3 Community License excludes the EU, UK, Republic of Korea and the United States from its Applicable Territory, which means a lot of people reading this are not licensed to run those weights locally at all (kg/entities/minimax-h3.json has the details, including the revenue cap on commercial use). The hosted API is globally available. So for a US or EU user, this node isn't a convenience argument - it's the only argument. Even if you're in a permitted territory, 33B plus native audio isn't a casual local run.

    This is the text-to-video variant: prompt in, clip out. If you're feeding it reference images, video or audio, the Reference-to-Video node in the same folder is the one you want.

    How it works

    The node is generated from KIE's request schema for the H3 text-to-video endpoint. Your prompt and settings are submitted as a video task, the node polls until the task completes or timeout_seconds (1200 seconds by default) expires, then it downloads the finished clip and hands it back as a native ComfyUI VIDEO object. That's the whole loop - the pack hides the task/submit/poll plumbing and gives you sockets.

    Inputs and outputs

    Required, and both of them actually matter:

    • prompt (STRING, 1–7000 characters) - describe the shot. H3 rewards specifics: subject, action, camera, lighting, mood. The default is a cat on a beach at sunset, which is fine as a smoke test and worth replacing immediately.
    • aspect_ratio - six options, 21:9 shipped as the default. Note the tooltip: for text-to-video this is required and adaptive is not supported (unlike the reference-to-video node, where adaptive is the default).
    • duration - an enum of integer seconds from 4 to 15, default 6.

    Optional:

    • resolution - 2K (default) or 768P. Duration × resolution is your cost curve, and video is where hosted generation gets expensive fast.
    • timeout_seconds - raise it if you're running 15-second 2K jobs on a busy queue.
    • callback_url - leave empty for normal ComfyUI use.

    Outputs: video (wire it to a save/preview node, or into another KIE node that takes a video reference), url, all_urls_json, task_id, raw_json, credits_consumed, credits_left. Keep the task_id - it's what extension-style endpoints want as input.

    Install

    Manager: search KIE-Nodes-Next (author felipederosilva - there are other KIE packs with similar names) and install, then restart. Manual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/felipederosilva/ComfyUI-KIE-Nodes-Next
    

    Then open Settings → KIE.ai Nodes Next → Connection and paste your KIE.ai key once. It's validated before it replaces a saved key, and you get a masked fingerprint plus your credit balance. Headless installs can set KIE_API_KEY instead - it takes priority. Dependencies are requests, Pillow, numpy, PyYAML; nothing heavy.

    Two install-time notes worth knowing. First, on first launch the pack indexes KIE's model documentation and builds a node per callable endpoint, then reloads the frontend once - if H3 nodes seem missing right after install, that sync is still running. Second, if you use the Windows installer, take a v0.3.1+ build; the original could leave backup folders inside custom_nodes that ComfyUI would then try to import.

    Where people get burned

    Video is where the bill lands. Image calls are small change; 15 seconds at 2K is not. Watch credits_consumed on the node and credits_left, and if KIE's balance service is down you'll still get your clip - the node reports the balance as unavailable rather than failing the run.

    The 21:9 default is just a default. It's an unusual frame for anything but cinematic work; pick 16:9 or 9:16 deliberately.

    Twenty minutes isn't always enough. timeout_seconds defaults to 1200. Long, high-resolution jobs in a busy queue can bump that ceiling - raise it rather than assuming the model failed.

    Licence vs API is the actual decision here. If you're in a prohibited territory, running H3 locally isn't a grey area you can hand-wave; the API route is the clean one. That's not a technical footnote, it's the reason this node exists in your graph rather than a stack of safetensors.

    Native audio expectations. H3 generates audio alongside video, but don't expect a directed soundtrack from a text prompt - treat it as scene-appropriate sound, not score.

    CategoryKIE Next/Video/MiniMax

    Inputs (6)

    NameTypeDefaultDescription
    promptSTRINGA cat walking slowly on the beach at sunset, cinematic shot, waves gently lapping the shoreVideo generation prompt, length is between 1 and 7000 characters.
    aspect_ratioCOMBO21:9Video aspect ratio. Required for text-to-video, adaptive is not supported.
    durationCOMBO6Generated video duration, supports integer values from 4 to 15 seconds.
    resolutionoptCOMBO2KVideo resolution.
    timeout_secondsoptINT120030–7200—
    callback_urloptSTRINGOptional KIE callback URL. Leave empty for normal ComfyUI use.

    Outputs (7)

    NameTypeDescription
    videoVIDEO—
    urlSTRING—
    all_urls_jsonSTRING—
    task_idSTRING—
    raw_jsonSTRING—
    credits_consumedFLOAT—
    credits_leftFLOAT—