HighSync Download Models
The one-switch node that fetches every HighSync weight
- models_dir
HighSync Download Models is the boring-but-necessary node you run before anything else in this pack will work. The HighSync lip-sync model doesn't ship in one tidy file - it's five loosely related pieces scattered across a Hugging Face repo (saeed-5959/high_sync), and this node exists to fetch exactly the ones the pack uses and tell you loudly when one is missing.
It has precisely one input: download, a boolean that defaults to False. That one switch flips between its two jobs.
download = False(default): a check. It walks the model folder and, if anything required is missing, raises aFileNotFoundErrorthat names the exact files it's after - no guessing what to go grab by hand.download = True: a fetch. It callshuggingface_hub.snapshot_downloadonsaeed-5959/high_syncand pulls only what the pipeline actually loads - the two UNet checkpoints (denoising_unet-500.pth,reference_unet-500.pth), thesd-vae-ft-mseVAE, thesd-image-variations-diffusersbase, and theaudio_processor/whisper_tiny.ptaudio encoder. Everything lands inD:/ComfyUI/models/highsync.
Either way the node outputs one models_dir string, and that's the thing to wire into the HighSync Model Loader's models_dir input. The download is multi-gigabyte, so run it once with download=True, wait, then flip it back to False so future runs are a fast existence check instead of a network call.
Install
The pack is a thin wrapper around the official HighSync codebase, which it vendors in full - so it's self-contained, but you still need to put its dependencies into the Python environment that runs ComfyUI.
cd ComfyUI/custom_nodes
git clone https://github.com/magicwang1111/ComfyUI-HighSync-Wrapper
Then, inside whichever venv/conda env ComfyUI runs in:
cd ComfyUI-HighSync-Wrapper
pip install -r requirements.txt
Restart ComfyUI. (ComfyUI Manager can also handle the clone - search "ComfyUI-HighSync-Wrapper".) Note the requirements.txt is on the heavy side: diffusers, omegaconf, librosa, insightface, mediapipe, onnxruntime-gpu and friends. That's normal for a wrapper around an academic repo, just don't be surprised when pip has opinions.
Gotchas
The default path D:/ComfyUI/models/highsync is a Windows-flavored string, and this wrapper was clearly written on one. On Linux or macOS the code maps a D: drive to /mnt/d/... - so if the path points at a directory that can't exist on your box, the check will fail exactly as it should. Just create the folder and point the loader at your real ComfyUI/models/highsync location. And if you'd rather skip the node entirely, huggingface_hub-cloning the repo into that folder by hand works too - the check doesn't care how the files got there.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| download | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| models_dir | STRING | — |