Nodes/Comfyui-DHan-Minimax-H3-Director/DHan-H3 Sampling Preset
ComfyUI Node

DHan-H3 Sampling Preset

The Step Count Is Load-Bearing, and the Scheduler Even More So

By DHan315·Created 2 days ago·Updated a day ago· 0
DHan-H3 Sampling Preset
  • model
  • sampler
  • sigmas
◄presetStandard►
◄custom_samplereuler►
◄custom_schedulerbeta►
◄custom_steps4►
◄denoise1.00►
◄custom_schedule_modebeta►
◄beta_alpha0.79►
◄beta_beta0.50►
◄extend_steps3►
◄extend_start_sigma0.80►
◄extend_end_sigma0.00►
◄extend_spacinglinear►

Why this node exists

H3 is a flow-matching video model, which means the sampler and scheduler habits you carried over from SDXL are worse than useless here. Aggressive reshaped schedules - Karras, exponential - distort a near-straight flow trajectory instead of correcting a curved one, and H3 is also the kind of model where step count is a property of the weights: a distilled Turbo checkpoint and the full model want wildly different settings, and feeding a Turbo model 20 steps is a good way to spend 20x the time for a worse clip.

The Sampling Preset is the pack's answer to that - one node that packages the sampler, the schedule and the step count, with presets that match the checkpoints people actually run.

What it hands you

Two outputs, and they go to the same place: sampler (SAMPLER) and sigmas (SIGMAS). Both wire into SamplerCustomAdvanced - or the pack's Long Sampler, which is a drop-in for it. The point of the node is that you no longer need a visible KSamplerSelect plus a scheduler node, and the sigmas are built from the model you're actually sampling rather than from a checkpoint that's never had H3's sigma shift applied.

That's why the model input matters. Its tooltip is explicit - it wants the patched H3 model output from the Director. The Director applies MiniMaxH3SigmaShift (shift_video 12, shift_audio 3 by default) and hands you that model; wire anything else in and your schedule is built for a different model configuration than the one being sampled.

The presets

  • Standard - res_multistep with ComfyUI's BasicScheduler on the beta schedule, 20 steps. This is your full-model default.
  • Turbo 4-Step / 6-Step / 8-Step - euler with BetaSamplingScheduler (alpha 0.79, beta 0.50) at 4, 6 or 8 steps. These line up with the distilled H3 Turbo models in circulation; older builds of this pack resolved Larryvrh's MiniMaxH3TurboSampler node dynamically, and the current ones just do Euler plus a beta schedule themselves. Run a Turbo preset on the undistilled model and you'll get a soft, half-formed clip - that's the distillation trade, not a bug.
  • Custom - everything exposed. custom_sampler (Euler by default, and the author's own tooltip says the working H3 workflow uses Euler), custom_schedule_mode (beta = BetaSamplingScheduler, basic = BasicScheduler with the legacy custom_scheduler), custom_steps, plus beta_alpha / beta_beta.

Two controls on the Custom path are worth knowing before you touch them. denoise defaults to 1.0 and, in beta mode, is applied by splitting the sigma list, so dropping it toward 0.5 gives you a genuinely partial-denoise pass - handy for retake-style work, weird as a general quality dial. And extend_steps (default 3) adds intermediate sigmas via ComfyUI's ExtendIntermediateSigmas, stretching from extend_start_sigma 0.8 down to extend_end_sigma 0, spaced linear. Set extend_steps to 0 and the whole thing is off. The presets ignore all of the Custom fields entirely, so nothing you type in them changes a Standard or Turbo run.

Install and wiring

cd ComfyUI/custom_nodes
git clone https://github.com/DHan315/Comfyui-DHan-Minimax-H3-Director
# restart ComfyUI

It's part of the same pack as the Director - search "Comfyui-DHan-Minimax H3 Director" in ComfyUI Manager if you'd rather not clone by hand. No model files come with it, and there's no requirements.txt; the pack's Python modules import av and torchaudio at load, so those need to exist in ComfyUI's environment.

A minimal H3 graph looks like: Director model → Sampling Preset model; Sampling Preset sampler and sigmas → SamplerCustomAdvanced; Director latent → SamplerCustomAdvanced latent_image; Director positive → your Guider, and Guider guider → SamplerCustomAdvanced guider. Everything is external sampling - the Director conditions, this node configures, and the sampler runs.

Common issues

If the preview or the sampler seems to ignore a widget you changed, check whether you're on a preset: only Custom reads the manual fields. If Turbo presets produce mush, you're running them against the undistilled checkpoint. And if you're wondering why a sigma-related change had no effect, look at which model the node is reading - sigmas built from a raw loader instead of the Director's shifted model are subtly wrong in a way that shows up as a worse-looking clip rather than an error.

CategoryComfyui-DHan/Minimax H3 Director

Inputs (13)

NameTypeDefaultDescription
modelMODELPatched H3 model output from Comfyui-DHan-Minimax H3 Director.
presetCOMBOStandard5 options: Standard, Turbo 4-Step, Turbo 6-Step, Turbo 8-Step, Custom
custom_samplerCOMBOeulerCustom only. Working H3 workflow uses Euler.
custom_schedulerCOMBObetaLegacy Custom scheduler. Used when Schedule Mode = basic.
custom_stepsINT41–1000Base scheduler steps before optional sigma extension.
denoiseFLOAT1.000–1Sampling denoise strength. 1.0 uses the full sigma schedule.
custom_schedule_modeCOMBObetaCustom only. 'beta' uses BetaSamplingScheduler; 'basic' uses BasicScheduler.
beta_alphaFLOAT0.790–50Custom only. BetaSamplingScheduler alpha.
beta_betaFLOAT0.500–50Custom only. BetaSamplingScheduler beta.
extend_stepsINT30–100Custom only. 0 disables ExtendIntermediateSigmas. Working workflow uses 3.
extend_start_sigmaFLOAT0.80-1–20000Custom only. Working workflow extends from sigma 0.8.
extend_end_sigmaFLOAT0.000–20000Custom only. Working workflow extends down to sigma 0.
extend_spacingCOMBOlinearCustom only. Working workflow uses linear.

Outputs (2)

NameTypeDescription
samplerSAMPLER—
sigmasSIGMAS—