rzgar/Wan2.2-IS2V

🤗 On Hugging Faceapache-2.0140 GBother✓ Checksum-verifiedupdated 0d ago
Magnet

Wan2.2 IS2V

Your browser does not support the video tag.

Similar to Bernini-R-S2V, added speech-driven lip-sync to Wan 2.2 image-to-video checkpoints. Painted masks let you target one face or two speakers in sequence for simple dialog without audio bleeding across the whole frame.

It is not state-of-the-art audio-to-video, but it removes the need for post-processing lip-sync or a separate speech model just to get a talking head from Wan I2V. For basic talking-head clips, or longer videos built from short image+audio segments, it is a handy all-in-one option on top of Wan 2.2 I2V.

Wan IS2V Dual Speaker custom node handles the full I2V path (start_image, concat mask/latent, optional CLIP vision) plus masked S2V audio.


models

| File | Role |

|------|---------|

| wan2.2_is2v_high_noise_14B_fp16.safetensors | High noise FP16 |

| wan2.2_is2v_low_noise_14B_fp16.safetensors | Low noise FP16 |

| wan2.2_is2v_high_noise_14B_fp8_scaled.safetensors | High noise FP8 |

| wan2.2_is2v_low_noise_14B_fp8_scaled.safetensors | Low noise FP8 |

| wan2.2_is2v_high_noise_14B_int8_convrot.safetensors | High noise int8-convrot |

| wan2.2_is2v_low_noise_14B_int8_convrot.safetensors | Low noise int8-convrot |


Usage

1. Place the models in ComfyUI/models/diffusion_models/

2. Download and save the wav2vec2 audio encoder in ComfyUI/models/audio_encoders/

3. Download and Unzip ComfyUI-WanIS2V.zip into ComfyUI/custom_nodes/, then restart ComfyUI.

3. Search for the Wan IS2V Dual Speaker node or use one of the example workflows

LightX2V LoRA

Motion Enhancer


Node: Wan IS2V Dual Speaker

Inputs

| Input | Required | Description |

|-------|----------|-------------|

| audio_1 | no | Encoded mono audio for speaker 1 |

| mask_1 | if audio_1 | Painted mask on the input image. Painted over = lip-sync region for speaker 1. |

| audio_2 | no | Encoded mono audio for speaker 2 (dialog) |

| mask_2 | if audio_2 | Lip-sync region for speaker 2 |

| speaker_2_start_frame | no | When speaker 2 begins (default -1 = auto after speaker 1 ends) |

| mask_crossfade_frames | no | Soft blend between speaker masks (default 4, 0 = hard cut) |

| audio_inject_scale | no | Strength of audio injection inside the mask (default 1.0) |