ADControlNetLoader
Steer your async video frames with structure — ADControlNetLoader
- AD_CONTROLNET
ControlNet is the reason you can tell a video model "the subject goes here, the camera moves like this" instead of crossing your fingers. This node is how that idea gets into the AsyncDiff pack: it loads a ControlNet and hands it to the pack's own video sampler in the format that sampler expects.
The controlnet nodes you already know from ComfyUI's core - ControlNetLoader plus ControlNetApply - produce ComfyUI-native conditioning that the KSampler family understands. That doesn't cross the boundary into this pack. asyncdiff_comfyui runs its own diffusers-based pipelines, so it needs its own loader, and ADControlNetLoader is that loader. It exists because the two ecosystems don't share a wire format.
How it works
ControlNet conditions generation on spatial structure pulled from a reference image - edges, depth, pose, lineart. The mechanism is a trainable copy of the UNet's encoder blocks that receives the condition image, and its outputs get added to the frozen UNet's skip connections. The prompt keeps its semantics; ControlNet decides where things go. For video that matters double: it's how you keep a character locked to the same spot across 25 frames rather than wandering off.
Inputs are just two:
- controlnet - dropdown of the ControlNet models the pack can see. You're working in the SD 1.5 / AnimateDiff and SVD era here, so think Canny, depth, OpenPose, lineart - the classic menu, not the new union models.
- scale - strength, default 1.0. If your structure is fighting the prompt, drop it toward 0.3–0.7 for loose guidance; push toward 1.0+ for strict adherence.
Output is one wire, AD_CONTROLNET, and it plugs into exactly one place in this pack: the optional control_net input on ADADSampler (the AnimateDiff sampler). It's not wired into the SD or SVD samplers - don't go hunting for the input that isn't there.
Install
Same story as every node in this pack:
cd ComfyUI/custom_nodes
git clone https://github.com/SlackinJack/asyncdiff_comfyui.git
cd asyncdiff_comfyui
./clone_asyncdiff_repo.sh # required - pulls the upstream AsyncDiff framework
or use ComfyUI Manager and search "asyncdiff_comfyui". Restart after.
Where people get burned
First, the multi-GPU requirement - this pack parallelizes the denoiser across cards, so if you're on a single GPU this node loads a ControlNet that then sits there while your sampler is slower than stock ComfyUI. Second, the model dropdown being empty is almost always a model-folder problem: the pack's README doesn't document where it scans for ControlNet files, so check the pack directory after install. And remember the support reality: the README's stated working path is stable-video-diffusion-img2vid, and ControlNet here is part of the AnimateDiff sampler that sits outside that tested lane. It works, but you're the QA department.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| controlnet | COMBO | 0 options: | |
| scale | FLOAT | 1.00-4294967295–4294967295 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| AD_CONTROLNET | AD_CONTROLNET | — |