Nodes/RunningHub MiniMax H3/RunningHub MiniMax H3 Dual Sigma Sampler (Legacy)
ComfyUI Node

RunningHub MiniMax H3 Dual Sigma Sampler (Legacy)

Where MiniMax H3 Video and Audio Finally Get Denoised

By RH-RunningHub·Created 29 days ago·Updated 19 days ago· 1
RunningHub MiniMax H3 Dual Sigma Sampler (Legacy)
  • h3_model
  • conditioning
  • av_latent
  • sampler_config
  • sampled_av_latent
seed42
sigma_points50
video_shift12.00
audio_shift3.00
acceloff
denoise_videotrue
cache_dit_rdt0.12
cache_dit_mc2
cache_dit_warmup4
velocity_stride4
sampler_modeeuler
allow_accel_with_res_multistepfalse

This is the heart of the whole MiniMax H3 pack - the node that actually runs the DiT and denoises your clip. Everything else is setup; this is where the 33B omni-modal model does its thing, generating video and its native stereo audio together. And it can't be a standard KSampler, because H3 runs two latent streams (a 24-channel video stream and a 32-channel audio stream) with different noise schedules. Hence "dual sigma": separate shift values for each stream.

The inputs that matter

  • sigma_points - 50 by default, and per the tooltip that means 49 actual DiT forwards. This is your "steps." Fewer points = faster, rougher; the res_multistep mode below is the clever way to get fewer forwards without the quality hit.
  • video_shift / audio_shift - 12 and 3 by default. These set how the noise schedule skews for each stream. They're the knobs you're allowed to touch but probably shouldn't until you're deep in the weeds; the defaults are what the pack and the reference implementation were tuned around.
  • denoise_video - the one that changes what you're doing. True (default) denoises video and audio together: a normal T2VA/FL2VA/Ref2VA run. Set it to False and you're in V2A mode: the video latent is treated as a clean visual condition (timestep floor) and only the audio gets denoised. That's how you add sound to existing footage - feed the frames in via RHMiniMaxH3EncodeVideoAVLatent or SeparateAVLatent first.
  • accel - single-card speedups. off is off; auto prefers the velocity-cache profile; minimax-h3-velocity-cache-v1 cuts DiT forwards (the recommended single-GPU path, no extra packages); minimax-h3-cache-v1 is Cache-DiT and needs pip install "cache-dit>=1.3.0". The tooltip's warning is honest: these profiles were only validated at 1344×768 / 124f / 50 steps / shift 12·3, so treat them as "works there," not as ground truth everywhere.

The speed lever that's actually worth it

sampler_mode = res_multistep is the hidden gem. The default euler follows the official first-order recipe (50 points). res_multistep is the second-order multi-step exponential integrator - the same one in ComfyUI's own H3 template - and the pack's claim is sigma_points=21 (20 DiT forwards) lands near euler-50 quality at roughly 2.5× the speed. That's the single best quality/effort trade you can make in this pack. Note it currently forces accel=off, and allow_accel_with_res_multistep exists but is flagged as uncalibrated - leave it off.

Output

sampled_av_latent - the denoised AV latent, which is not viewable yet. It goes to RHMiniMaxH3DecodeAV (with the VAE bundle) to become actual frames and an audio waveform. A common newbie mistake is stopping at the sampler and wondering where the video is.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/RH-RunningHub/ComfyUI-RH-MiniMax-H3.git
pip install -r ComfyUI-RH-MiniMax-H3/requirements.txt

Restart, pull the ~95 GiB bundle into ComfyUI/models/MiniMax-H3-INT8-CONVROT/, and remember this sampler is where VRAM and patience go to be tested. The license reminder still applies - H3's Community License excludes the US, EU, UK and South Korea from local-weights use.

CategoryRunningHub/MiniMax H3/sampling

Inputs (16)

NameTypeDefaultDescription
h3_modelMINIMAX_H3_DIRECT_MODEL
conditioningMINIMAX_H3_CONDITIONING
av_latentMINIMAX_H3_AV_LATENT
seedINT420–9223372036854776000
sigma_pointsINT502–1000遵循原仓库语义:50 个 sigma 点产生 49 次 DiT forward。
video_shiftFLOAT12.000.01–100
audio_shiftFLOAT3.000.01–100
accelCOMBOoff单卡近似加速。off=关闭;auto=优先 velocity-cache profile,否则 Cache-DiT;minimax-h3-velocity-cache-v1≈少 DiT 次数(推荐单卡);minimax-h3-cache-v1=Cache-DiT(需 cache-dit);manual-* 手调。仅验证 1344×768/124f/50steps/shift12·3。不可作 GT。
denoise_videoBOOLEANtrueFalse=V2A:av_latent.video 作干净视觉条件(timestep floor),只去噪音频。要求 T2VA 布局且 video 非 Empty 全零;可用 Encode Video→AV Latent 或 Separate AV Latent 填入视频。
cache_dit_rdtoptFLOAT0.120–1仅 accel=manual-cache-dit:残差阈值,越大越快越糙。
cache_dit_mcoptINT21–32仅 accel=manual-cache-dit:最大连续缓存步数。
cache_dit_warmupoptINT40–64仅 accel=manual-cache-dit:warmup 步数。
velocity_strideoptINT41–32仅 accel=manual-velocity:DiT 刷新步距;1=精确无缓存。
sampler_modeoptCOMBOeulereuler=官方一阶(sigma_points=50)。res_multistep=二阶多步指数积分器(ComfyUI 官方 H3 模板同款),建议 sigma_points=21(20 次 DiT)≈ euler-50 质量、快约 2.5×;该模式暂强制 accel=off(profile 按 euler-50 标定)。
allow_accel_with_res_multistepoptBOOLEANfalse允许 res_multistep 叠加 accel(默认关闭)。该组合未标定:sigma_points=21 时叠加会明显劣化;需同时调高步数才可用,且同等画质下并不比 euler+velocity 省。
sampler_configoptMINIMAX_H3_SAMPLER_CONFIG可选;不接时全部走默认。

Outputs (1)

NameTypeDescription
sampled_av_latentMINIMAX_H3_AV_LATENT