Scheduler Name (obvpm)
The scheduler on a wire, beta57 included
- scheduler
- scheduler_name
Same idea as Sampler Name, one dropdown over: put the scheduler choice on a wire instead of burying it in the sampler node's widget. And there's a bonus in the list, which is the more interesting half of this article.
What it does
Pick a scheduler; get it out. scheduler is typed to match any scheduler_name combo, so it plugs into KSampler, BasicScheduler or anything else offering the standard list. scheduler_name is the same choice as a plain string, for bundles, captions and filenames. The list is read live from your install, so schedulers registered by other packs appear here too.
Why bother? Same three reasons as the sampler version. Compare two schedules without editing two nodes. Keep a base pass and a refine pass on the same schedule. Get the choice into a preset, a bundle or a case switch so a whole settings set swaps as one thing. Schedules are one of the settings people fiddle with most and record least - a scheduler name you can print into a filename is worth having.
Beta57, free with the pack
Here's the part that matters. This pack registers beta57 into ComfyUI's scheduler registry when it loads. If the name isn't already there, it adds the handler - RES4LYF's beta schedule with alpha=0.5, beta=0.7 - and appends the name to the scheduler list, which is the same list object KSampler reads. So beta57 appears in every scheduler dropdown on your install: KSampler, BasicScheduler, and this node. It behaves like a built-in.
That fixes a specific, extremely common annoyance. beta57 is the scheduler the community settled on for painterly output on animated and flow-matching models, and it appears in a lot of shared settings tables and workflow JSON. It ships inside RES4LYF, so loading someone else's workflow that names it used to mean installing a whole solver pack - the "workflow won't load, unknown scheduler" entry in the KB is about exactly this. Install obvpm and the name resolves.
Worth knowing what you're getting, though: this is one scheduler, not RES4LYF. If the workflow names res_2m, res_3s, bong_tangent or one of the other solvers, you still need the real pack. And one trap that follows you into RES4LYF regardless: some of its schedules apply their own sigma shift and ignore the shift value in your workflow, so if shift appears to do nothing, suspect the scheduler before the sampler.
Choosing one
The stock list is smaller than it looks once you know the split. karras remains the classic SD 1.5 and SDXL choice. For flow-matching models - the ones that have taken over - simple, beta, sgm_uniform and linear_quadratic are where the sensible settings live, and beta57 is the enthusiast pick on top of beta. There's a well-known preference from the community on this: euler with beta57 for photorealism, a RES4LYF solver with simple for anime. If you're not sure, simple is the honest default on a modern model and karras on an older one.
Note what this node doesn't carry: steps, CFG, shift and denoise still live on the sampler. The schedule and the sampler are two decisions that interact, and routing one of them doesn't route the other.
The compatibility trick
The socket names deliberately mirror the nodes this replaces - the pack credits ComfyUI-Image-Saver's Scheduler Selector - because a widget converted to an input is re-bound by name when a workflow loads. Keeping scheduler_name means an existing graph only has to change the node type.
Install
Manager, search comfyui-obvpm, or:
cd ComfyUI/custom_nodes
git clone https://github.com/chanon/comfyui-obvpm
Restart ComfyUI and beta57 is there. No Python dependencies to install (the pack declares none - everything it imports already comes with ComfyUI) and no models to download. Every node carries an (obvpm) suffix, so obvpm in the node search menu lists the whole pack.
If beta57 doesn't show up after a restart, check the startup console for an import error from custom_nodes.comfyui-obvpm - the registry patch happens at import time, so a pack that failed to load won't have registered it.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| scheduler | COMBO | Any scheduler this ComfyUI knows about. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| scheduler | simple,sgm_uniform,karras,exponential,ddim_uniform,beta,normal,linear_quadratic,kl_optimal,beta57 | The choice, typed to match a scheduler combo. |
| scheduler_name | STRING | The same choice as a plain string. |