Nodes/MiniMax-H3 Tools/MiniMax H3 Canvas Planner / 画布规划
ComfyUI Node

MiniMax H3 Canvas Planner / 画布规划

Plan MiniMax H3's canvas, frame count, and token load before you queue

By Rinne414·Created about a month ago·Updated about a month ago· 10
MiniMax H3 Canvas Planner / 画布规划
    • width
    • height
    • frames
    • latent_t
    • audio_t
    • video_tokens
    • est_sit_seconds
    • est_total_minutes
    • report
    aspect_ratio16:9 (Widescreen)
    megapixels0.40
    seconds5.0
    steps20
    cost_profilenone (report tokens only)
    vram_budget_gib24.0
    clamp_to_trained_capfalse

    MiniMax H3 has a habit of not doing what you asked. Ask for a 5-second clip and the frame count silently snaps up to the model's 17k+5 grid (5, 22, 39, 56, 73…), so your "5 seconds" becomes 124 frames - 5.17 seconds. Ask for a canvas and ComfyUI will happily build one far outside the 768×1344 area the model was trained on, and you'll discover the problem fifteen minutes later when the render comes back weird. The Canvas Planner exists to settle all of that before you queue, so you're never surprised by what lands on the sampler.

    This node is part of the MiniMax-H3 Tools pack, a compatibility layer for H3 (MiniMax's 33B open-weight video model that generates synchronized stereo audio in a single pass). It ships with no LLM and no API - pure math, running locally.

    What it does

    You give it an aspect ratio, a target area, and a duration. It returns the exact numbers that matter:

    • width / height on ComfyUI's 32-pixel canvas grid
    • frames snapped up to H3's 17k+5 temporal grid
    • latent_t and audio_t - the video and audio latent lengths
    • video_tokens, which is what actually decides how long the render takes (latent_t * (height//32) * (width//32))

    It also returns a report string you can dump into a ShowText node. That report is the real deliverable. Read the WARNING lines: "canvas is above H3's trained cap," "frames below the documented trained range of 124–362," "short edge exceeds the documented 768px native short edge." These are the failure modes H3 normally lets you walk into blind.

    The inputs that matter

    • aspect_ratio - presets from 21:9 ultrawide down to 9:16 portrait.
    • megapixels - target area in ComfyUI's 1024×1024 megapixel unit. 0.4 MP is a sane default and lands around 864×480 in 16:9.
    • seconds - duration at 24 fps, snapped up to the grid.
    • clamp_to_trained_cap - the interesting one. Off (default) reports the canvas ComfyUI will actually create, even if it's over the trained area. On, it shrinks over-cap requests down to H3's documented 768×1344.

    Everything else only matters if you want runtime estimates. steps and vram_budget_gib are used solely by the cost profile, and runtime estimation is disabled by default: est_sit_seconds and est_total_minutes return -1.0 until you explicitly pick a cost_profile.

    That's deliberate, not a bug. The one bundled profile is labelled "Single RTX 3090 24 GiB, Windows 11, ComfyUI 0.30.0, torch 2.8.0+cu128, xformers, int8_convrot." It's a measurement of one machine, fitted to a token-count curve - useful as a rough shape for "how long will this take," worthless as a promise for your card. If you pick it, you're accepting that exact stack as an approximation.

    Install and gotchas

    Install is shared with the rest of the pack: ComfyUI 0.30.0 or later, then search "MiniMax H3 Tools" in ComfyUI Manager, or clone manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Rinne414/ComfyUI-MiniMaxH3-Tools.git
    

    Restart ComfyUI and you'll find the nodes under MiniMax H3. This node needs no extra Python dependencies and no model files - it's pure planning, so you can run it before you've even downloaded weights.

    The common trap: a beginner wires the report output to nowhere, ignores the warnings, and queues anyway. Wire it to a text preview node and actually read it. And don't add your own hardware profile to calibration_profiles.json unless you know the schema - a malformed profile fails at startup with the exact field and reason, which is safer than silently disabling estimates, but it will stop your ComfyUI from booting.

    Categorymodel/latent/minimax

    Inputs (7)

    NameTypeDefaultDescription
    aspect_ratioCOMBO16:9 (Widescreen)8 options: 21:9 (Ultrawide), 16:9 (Widescreen), 3:2 (Photo), 4:3 (Standard), 1:1 (Square), 3:4 (Portrait Standard), +2
    megapixelsFLOAT0.400.1–1.2Target area using ComfyUI's 1024*1024 megapixel unit. / 使用 ComfyUI 的 1024*1024 百万像素单位设置目标面积。
    secondsFLOAT5.00.2–20Duration at 24 fps, snapped up to H3's 17k+5 frame grid. / 按 24 fps 设置时长,并向上对齐到 H3 的 17k+5 帧网格。
    stepsINT201–200Used only when a hardware cost profile is selected. / 仅在选择硬件成本配置时使用。
    cost_profileCOMBOnone (report tokens only)No runtime estimate is made by default. Profiles are machine-specific and must be selected explicitly. / 默认不估算运行时间;配置仅适用于特定机器,必须明确选择。
    vram_budget_gibFLOAT24.04–192Compared only with thresholds from the selected profile. / 仅与所选配置中的阈值比较。
    clamp_to_trained_capBOOLEANfalseOff reports the canvas ComfyUI will actually create. On shrinks over-cap requests to H3's documented trained area. / 关闭时报告 ComfyUI 实际创建的画布;开启时将超限请求缩小到 H3 文档中的训练面积。

    Outputs (9)

    NameTypeDescription
    widthINT
    heightINT
    framesINT
    latent_tINT
    audio_tINT
    video_tokensINT
    est_sit_secondsFLOAT
    est_total_minutesFLOAT
    reportSTRING