Preprocessor Selector
The dropdown that picks a preprocessor by name
- preprocessor
This node doesn't process anything. It's a dropdown that outputs the name of a preprocessor as a value, so you can hand that name to another node - specifically the AIO Aux Preprocessor - and switch which preprocessor runs from a single control. That's the whole job. It confuses beginners because it looks like it should do the work, but it's pure plumbing: a menu, not a machine.
What it's for
The AIO Aux Preprocessor (AIO_Preprocessor) is the pack's one-stop node that can run any preprocessor by name. Normally you set that name inside AIO's own dropdown. But if you want the choice to live outside AIO - so you can wire it up, reuse it, drive it from a primitive, or swap it in one obvious place - you use this Selector to emit the name and feed it in. It turns "which preprocessor" into a value you can route around your graph like any other wire.
Concretely: Selector's output plugs into AIO Aux Preprocessor's preprocessor input, AIO does the actual work on your image, and you've got a clean single point where the preprocessor choice is set. Handy when you're building a flexible template graph and want the preprocessor to be a knob at the top rather than buried in a node's widget.
The input and output
There's exactly one of each, and they're the same thing:
preprocessor(input) - a dropdown of every preprocessor name in the pack: 47 choices, fromnone,CannyEdgePreprocessor,HEDPreprocessor,DepthAnythingV2Preprocessor,DWPreprocessor,OpenposePreprocessor, on through the segmentation, tile, and normal-map options. You pick one.preprocessor(output) - the selected name, typed so it slots straight into AIO Aux Preprocessor's matching input.
No image goes in, no image comes out. It's a name in, a name out. If you're staring at it wondering where to plug your picture, that's the tell that this node isn't the one doing the preprocessing.
Installing it
ComfyUI Manager: search ComfyUI's ControlNet Auxiliary Preprocessors, install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/Fannovel16/comfyui_controlnet_aux
pip install -r requirements.txt
Restart ComfyUI. Nothing to download - this node has no model behind it.
Where people get burned
The single biggest confusion is expecting output. People drop this node in, select "CannyEdgePreprocessor," and wait for an edge map that never comes. It doesn't run Canny - it just says the word "Canny" to whatever's downstream. You still need AIO Aux Preprocessor (or a direct node) to actually process the image.
Worth knowing too: AIO Aux Preprocessor is convenient but it hides each preprocessor's own threshold parameters, as the pack itself notes. So if you're routing a choice through Selector into AIO and then wishing you could tune, say, Canny's high/low thresholds, you've hit AIO's ceiling - drop the dedicated CannyEdgePreprocessor node in instead and set the thresholds directly. The Selector-plus-AIO combo is for flexible switching, not fine control.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| preprocessor | COMBO | 47 options: none, AnimeFace_SemSegPreprocessor, LineartStandardPreprocessor, AnyLineArtPreprocessor_aux, Manga2Anime_LineArt_Preprocessor, UniFormer-SemSegPreprocessor, +41 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| preprocessor | none,AnimeFace_SemSegPreprocessor,LineartStandardPreprocessor,AnyLineArtPreprocessor_aux,Manga2Anime_LineArt_Preprocessor,UniFormer-SemSegPreprocessor,SemSegPreprocessor,SAMPreprocessor,PiDiNetPreprocessor,DensePosePreprocessor,ImageLuminanceDetector,ImageIntensityDetector,TilePreprocessor,TTPlanet_TileGF_Preprocessor,TTPlanet_TileSimple_Preprocessor,LineArtPreprocessor,Metric3D-DepthMapPreprocessor,Metric3D-NormalMapPreprocessor,MediaPipe-FaceMeshPreprocessor,HEDPreprocessor,FakeScribblePreprocessor,DepthAnythingPreprocessor,Zoe_DepthAnythingPreprocessor,M-LSDPreprocessor,ScribblePreprocessor,Scribble_XDoG_Preprocessor,Scribble_PiDiNet_Preprocessor,CannyEdgePreprocessor,AnimeLineArtPreprocessor,Zoe-DepthMapPreprocessor,MeshGraphormer-DepthMapPreprocessor,ShufflePreprocessor,PyraCannyPreprocessor,DWPreprocessor,AnimalPosePreprocessor,BAE-NormalMapPreprocessor,DepthAnythingV2Preprocessor,DSINE-NormalMapPreprocessor,TEEDPreprocessor,ColorPreprocessor,OpenposePreprocessor,MiDaS-NormalMapPreprocessor,MiDaS-DepthMapPreprocessor,LeReS-DepthMapPreprocessor,OneFormer-COCO-SemSegPreprocessor,OneFormer-ADE20K-SemSegPreprocessor,BinaryPreprocessor | — |