HunyuanVideo ReSampler
Turn an inverted video into a new one, same motion
- model
- hyvid_embeds
- samples
- inversed_latents
- feta_args
- samples
This node is the payoff half of the inversion pair - it's where you actually get your edited video out. HyVideoInverseSampler recovers the noise trajectory behind an existing clip; this node re-samples from that trajectory, but conditioned on a different hyvid_embeds, meaning a new prompt. The result: motion and structure carried over from your source video, content changed according to what you actually wrote this time.
The required inputs make the relationship explicit. samples is your original init latents again (tooltip: "init Latents to use for video2video process," same as on the Inverse node), and inversed_latents is new - its tooltip says plainly "inversed latents from HyVideoInverseSampler," meaning this node genuinely won't do anything sensible without that other node feeding it first. model and hyvid_embeds work as usual, except here hyvid_embeds is your new prompt, not a re-encoding of the source video's description.
Where this diverges from the Inverse node is in how you control the blend. Instead of gamma/gamma_trend, you get eta_base and eta_trend - same idea, different name: eta_base (0–1, default 0.5) is the "overall strength of the effect from the inversed latents" per its own tooltip, and eta_trend lets that strength stay constant, ramp up, or ramp down across your start_step/end_step window. Both of those step fields have unusually direct tooltips here - "The step to start the effect of the inversed latents" and "the step to end" it - so you're explicitly choosing which portion of the denoising process actually gets pulled toward the source video's trajectory versus generated fresh from the new prompt.
Practically: eta_base is your main strength dial, functioning like denoise strength does in image-to-image - push it up to hold onto more of the source video's structure and motion, pull it down to let the new prompt take over more of the result. embedded_guidance_scale defaults to 6 here (versus 0 on the Inverse node) since this pass is doing real generation work, not trajectory recovery, and needs actual guidance toward your new prompt. flow_shift defaults to 1, same as the Inverse node.
Two optional inputs worth knowing about: interpolation_curve, same as the Inverse node, varies the inversion's strength across the temporal axis rather than just across steps - for when the start and end of your clip need different treatment. And feta_args, a side-channel input the community usually calls the "Enhance-A-Video" or "feta" node's output - it's a separate prompt-adherence/detail booster that some wrapper sampler nodes accept as an optional plug-in. If you don't already have a FETA args node in your graph, ignore this input; it's not required for video2video to work.
Installing the pack: same as every node here - ComfyUI Manager, search "HunyuanVideoWrapper," or cd ComfyUI/custom_nodes && git clone https://github.com/kijai/ComfyUI-HunyuanVideoWrapper then pip install -r requirements.txt inside the folder before restarting. This is sampling logic, not a model file, so it needs nothing beyond the diffusion checkpoint, VAE, and text encoder your workflow already has loaded for a normal Hunyuan generation.
Common issue: if your output looks like it ignored the source video entirely, double-check inversed_latents is actually wired from HyVideoInverseSampler and not accidentally left disconnected or fed the same samples input twice - without a real inverted trajectory, eta_base has nothing meaningful to blend toward, no matter how high you set it.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| model | HYVIDEOMODEL | — | |
| hyvid_embeds | HYVIDEMBEDS | — | |
| samples | LATENT | init Latents to use for video2video process | |
| inversed_latents | LATENT | inversed latents from HyVideoInverseSampler | |
| steps | INT | 30 | — |
| embedded_guidance_scale | FLOAT | 6.000–30 | — |
| flow_shift | FLOAT | 1.001–30 | — |
| force_offload | BOOLEAN | true | — |
| start_step | INT | 0 | The step to start the effect of the inversed latents |
| end_step | INT | 18 | The step to end the effect of the inversed latents |
| eta_base | FLOAT | 0.500–1 | The base value of the eta, overall strength of the effect from the inversed latents |
| eta_trend | COMBO | constant | The trend of the eta value over steps |
| interpolation_curveopt | FLOAT | The strength of the inversed latents along time, in latent space | |
| feta_argsopt | FETAARGS | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| samples | LATENT | — |