Nodes/ComfyUI-FeiHou-Easy-H3/FeiHou Easy H3 2nd Sample Enhancer(二采)
ComfyUI Node

FeiHou Easy H3 2nd Sample Enhancer(二采)

The refine pass that also hands you the VAE, the audio and the clock

By FX-FeiHou·Created 2 months ago·Updated 2 days ago· 71
FeiHou Easy H3 2nd Sample Enhancer(二采)
  • h3_context
  • 1st_latent
  • model
  • wait_1st_video
  • guider
  • sampler
  • sigmas
  • latent
  • h3_context
  • video_vae
  • audio_vae
  • fps
  • audio_1
  • duration_control
◄latent_upscalerbicubic(无模型,会有重影,不推荐)►
◄upscale_by1.50►
◄second_steps5►
◄default_trigger_wordstrue►

Once you've looked at the first pass and decided it's worth finishing, this is the node that finishes it. Mechanically it's FeiHou Easy H3 Dual Sample 2nd: enlarge the still-noisy latent with a learned 3D latent upscaler, rebuild the H3 conditioning at the bigger canvas, and emit a fresh guider/sampler/sigmas set for a short low-noise refine. What makes it an "enhancer" is the output list - this node also gives you the decode path, the reference audio, and the duration bookkeeping, so the whole tail of the workflow hangs off it.

What happens in the pass

The video latent goes through a model from models/latent_upscale_models, scaled by upscale_by (default 1.5) with 32-pixel alignment and the aspect ratio preserved. The audio latent is carried over untouched, because H3's latent is one nested video-plus-audio tensor and the two halves stay together. Then the conditioning gets rebuilt for the new canvas - the context carries a rebuilder that reruns the pack's own reference/keyframe encoding at the larger size, which is what you need when reference images are set to match or when first/last-frame keyframes are involved. Reference metadata ends up identical to what the main node produced, just at the new dimensions.

second_steps (default 5) decides the refine schedule. Three, four and five steps use the published refine sigma values; other counts get evenly spaced points from wherever the first pass stopped, down to zero, on the same shift-12 flow curve. If your step count exactly matches what the first pass left over, the node simply continues the original schedule - the honest way to do a 4 + 5 split.

Inputs, briefly

h3_context must be the one from FeiHou Easy H3 1st Sample Enhancer - the 2nd node reads the plan the 1st stashed in it and rejects any other context. 1st_latent is the first sampler's denoised_output, not output. latent_upscaler lists models/latent_upscale_models; if that folder is empty the only choice is bicubic(无模型,会有重影,不推荐), which the author openly flags as ghosting-prone. Download the H3 learned upscaler, it's the entire point of this node. model is optional: leave it out and the refine reuses the first pass's model, connect something else and you can refine with a clean, LoRA-free transformer. wait_1st_video takes any type - connect the first pass's video combine into it and ComfyUI is forced to finish saving that draft before the refine pass starts grabbing VRAM.

default_trigger_words is on by default and prepends the pack's built-in detail prompt to the refine pass. It's invisible in the UI, so turn it off if you want to compare against your own prompt untouched.

The outputs, and where each one goes

guider, sampler, sigmas, latent → a second SamplerCustomAdvanced, and this time you decode from its output; the refine pass finishes the schedule, so there's nothing special left in denoised_output.

video_vae, audio_vae, fps → your decoder and video-combine chain, which means the tail of the graph no longer needs a FeiHou Easy H3 Output node just to reach a VAE. audio_1 is the reference audio from the media gallery carried through the context - useful in music-video and digital-human runs where you want that source track next to the generated one. duration_control is a FEIHOU_H3_DURATION_CONTROL value whose only job is pairing with FeiHou Easy H3 Digital Human/MV Duration Crop: H3 rounds and aligns frame counts, so a clip generated "to the audio" comes out slightly long, and the crop node uses this to trim back to the exact Audio-1 length.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/FX-FeiHou/ComfyUI-FeiHou-Easy-H3
# restart ComfyUI

Manager → search "ComfyUI-FeiHou-Easy-H3" and restart, same thing. No pip dependencies for this part of the pack. Prerequisites are the official MiniMax H3 nodes in ComfyUI, the H3 model files, and - for this node specifically - an H3-compatible learned latent upscaler in models/latent_upscale_models.

Failure modes worth knowing before you queue

An empty upscaler folder is the most common complaint, because the bicubic fallback runs fine and just looks bad; if your refine pass has smeared edges, check the dropdown value before you blame your prompt. A canvas mismatch throws explicitly, printing both shapes - that's a 32-alignment problem, not a wiring bug. Feeding anything but denoised_output as 1st_latent gets you a latent that's already finished, and refining it produces a soft, over-processed clip.

Budget-wise, be realistic: this pass runs at 1.5× the canvas on a 33B omni-modal model, so it's the expensive half of the workflow. The two-pass idea is really a VRAM trade - a cheap composition pass at small canvas, then one big pass to add detail instead of sampling high-noise at full size. If your card was already borderline on a single-pass H3 render, this won't save you; the quantised transformers in the pack's own workflows will.

CategoryFeiHou Easy H3

Inputs (8)

NameTypeDefaultDescription
h3_contextMINIMAX_H3_CONTEXT接 1st Sample Enhancer 的 h3_context。
1st_latentLATENT接一采自定义采样器的 denoised_output(不是 output)。
latent_upscalerCOMBObicubic(无模型,会有重影,不推荐)models/latent_upscale_models 里的 H3 学习型 3D 放大模型。
upscale_byFLOAT1.501–4二采画幅 = 一采画幅 × 倍数(按 32 对齐、保持比例)。
second_stepsINT51–2003/4/5 用发布的 sigmas;等于剩余步数时接着一采的调度;其它步数从一采停下处均匀续到 0。
default_trigger_wordsBOOLEANtrue默认开启:把内置触发词加到二采提示词开头;关闭后不添加。触发词不会在节点中展开显示。
modeloptMODEL二采模型;不接则沿用一采模型。
wait_1st_videoopt*接一采 Video Combine 的输出:保证一采视频先保存,再开始二采。

Outputs (10)

NameTypeDescription
guiderGUIDER—
samplerSAMPLER—
sigmasSIGMAS—
latentLATENT—
h3_contextMINIMAX_H3_CONTEXT—
video_vaeVAE—
audio_vaeVAE—
fpsFLOAT—
audio_1AUDIO—
duration_controlFEIHOU_H3_DURATION_CONTROL—