Hunyuan-Foley Model Loader
The Foley loader that decides whether the whole thing fits your GPU
- HUNYUAN_MODEL
This is the node that decides whether you get to run HunyuanVideo-Foley at all. Tencent's original foley model was a heavyweight - the kind of thing that wants a 24GB card just to breathe. The phazei fork makes it a question of which file you load and how, and this loader is where both get answered. Get it right and you're generating sound for a silent clip on hardware you already own. Get it wrong and you're staring at an OOM before the first waveform.
The pack calls this the "Model Loader," and it's the first node in every workflow. It reads the main diffusion model out of ComfyUI/models/foley/ and hands it to the sampler as a HUNYUAN_MODEL. Two knobs matter, and they do different jobs:
- Precision (
auto,bf16,fp16,fp32) - the dtype the math actually runs in.bf16is the default and the sensible one;fp16is the 30-series-preferring alternative the README mentions;fp32is the heaviest.autosniffs the checkpoint and picks for you. - FP8 Quantization (
none,fp8_e4m3fn,fp8_e5m2,auto) - this is weight-only storage. The Linear layers' weights live in FP8 to save VRAM, but compute still happens in your chosen precision, which is why the README insists sound quality holds. This is the "I'm GPU-poor" switch.
There's also model_name, a dropdown populated from whatever sits in the foley folder. The loader auto-detects whether you've given it the XXL or the smaller XL checkpoint by looking at the audio embedder's shape, so you don't have to tell it.
Here's the trap that bites everyone: if you load an fp8 safetensor, you must set quantization to auto or the matching fp8 mode, or the loader upcasts it to fp16 in memory. The README spells this out because people keep hitting it - you download the 5.3GB fp8 file expecting the VRAM win, and quietly get the full 10GB footprint instead.
Where the files come from: the author converted Tencent's .pth checkpoints to safetensors and hosts them at huggingface.co/phazei/HunyuanVideo-Foley. The fp16 main model is ~10.3GB; the fp8 variants (_fp8_e4m3fn and _fp8_e5m2) are ~5.34GB each. The author says he couldn't tell a quality difference between fp8 and fp16 - "so I'd suggest the 8." Note the e5m2 file exists for a reason: on a 3090 or lower, torch.compile only works with e5m2. That one choice determines whether your later speed knob works at all.
Reality check on the VRAM numbers, straight from the README: baseline on a 24GB card is ~10–12GB for a 5s/50-step run, FP8 quantization subtracts another ~4GB (so under 8GB total), and if you add the pack's block-swap node you can go under 4GB. It's slower the lower you squeeze, but it fits.
Installing
ComfyUI Manager is the easy path - search ComfyUI-HunyuanVideo-Foley. Or the manual route:
cd ComfyUI/custom_nodes
git clone https://github.com/phazei/ComfyUI-HunyuanVideo-Foley
Then restart ComfyUI and drop the model files into ComfyUI/models/foley/ (the node registers that folder itself on import). The pack needs PyTorch 2.7+ - that's what the author tests against - and the first run also pulls SigLIP2 and CLAP from HuggingFace, so don't do the first generation on a machine with no internet.
One honest caveat: the underlying model is Tencent's HunyuanVideo-Foley, and it carries Tencent's community license - worth a skim if you're building anything commercial, since the territorial exclusions are broader than people assume.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | COMBO | 0 options: | |
| precision | COMBO | bf16 | Compute dtype for non-quantized params and autocast (auto = detect from checkpoint) |
| quantization | COMBO | auto | FP8 weight-only storage for Linear layers, saves a few GB VRAM (compute still fp16/bf16) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| HUNYUAN_MODEL | HUNYUAN_MODEL | — |