LipSync GAP Model Loader (Legacy)
The original loader name — LipSync GAP's plain 'Legacy' node
- vae
- models
PerfectSyncModelLoader - displayed as "LipSync GAP Model Loader (Legacy)" - is the oldest name for the pack's model loader, kept around purely so very old workflows still open. In NODE_CLASS_MAPPINGS it's an alias for the exact same class as GapLipSyncModelLoader: same code, same behavior, same PERFECT_SYNC_MODELS output. There is nothing this node does that the current one doesn't, and no reason to place it in a new workflow except muscle memory.
What it does
It's the loader. It assembles the LatentSync stack - the UNet, the Whisper audio encoder, and your VAE - and hands the sampler a ready-to-run models bundle. The inputs are the three decisions that shape the whole run:
- unet_model - the LatentSync UNet from
ComfyUI/models/latentsync/. - whisper_model -
tinythroughlarge; the size of the audio encoder drives how crisp the mouth articulation lands. The README's rule of thumb: bigger Whisper, stronger sync. - precision -
fp16(default),fp32, orfp8_e4m3fnfor the 12 GB VRAM crowd. - vae - any VAE Loader output; the sampler casts it to match the precision.
Output is one models socket feeding the sampler's models input. That's the whole job, same as always.
Install and troubleshooting
Same pack install: ComfyUI Manager search LipSync GAP, or git clone https://github.com/GeekatplayStudio/ComfyUI-LipSync-GAP into custom_nodes/, run install.bat, restart ComfyUI. The legacy name doesn't change the file layout - models still go in ComfyUI/models/latentsync/ (the UNet plus whisper/*.pt), and Mediapipe's face_landmarker.task lives in the node's latentsync/weights/.
The usual failure is "model not found," which on this node is extra confusing because the name looks unrelated to the folder. It isn't - the dropdowns read the same latentsync model folder as every other loader in the pack. Verify the download actually finished, restart once so the model registry refreshes, and if the node still won't resolve its files, you're looking at an incomplete install, not a broken node.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| unet_model | COMBO | 0 options: | |
| whisper_model | COMBO | tiny | 16 options: base, base.en, large, large-v1, large-v2, large-v3, +10 |
| precision | COMBO | fp16 | 3 options: fp16, fp32, fp8_e4m3fn |
| vae | VAE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| models | PERFECT_SYNC_MODELS | — |