Nodes/AnimateDiff Evolved/Sigma Schedule Split Combine πŸŽ­πŸ…πŸ…“
ComfyUI Node Runs on cloud

Sigma Schedule Split Combine πŸŽ­πŸ…πŸ…“

Stitching two noise schedules together at a chosen point

By KosinkadinkΒ·Created 3 years agoΒ·Updated 8 days agoΒ· 3,519
Sigma Schedule Split Combine πŸŽ­πŸ…πŸ…“
  • schedule_Start
  • schedule_End
  • SIGMA_SCHEDULE
β—„idx_split_percent0.500β–Ί

Displayed as Sigma Schedule Split Combine, this takes two SIGMA_SCHEDULE objects - the abstract "here's the noise-curve math" objects this pack's sigma-schedule nodes build, like ADE_RawSigmaSchedule - and stitches them together at a chosen point, rather than using one schedule for the whole generation.

Why you'd want two schedules in one run

A SIGMA_SCHEDULE describes the shape of the noise curve a model expects, and different motion models were trained on different curves - the README's various beta_schedule warnings (HotshotXL, AnimateDiff-SDXL, AnimateLCM, PIA all want different ones) exist because of exactly this. Ordinarily you pick one schedule and run with it. This node is for the less common case where you deliberately want the noise behavior itself to change partway through sampling - for instance, if you're chaining between two motion models mid-generation the way the README describes for AnimateLCM-I2V ("use it for at least 1 step before switching over to other models via chaining with other Apply AnimateDiff Model (Adv.) nodes"), and want the sigma schedule to switch alongside the model switch rather than staying fixed for the whole run.

How it works

schedule_Start drives the first idx_split_percent portion of the schedule, and schedule_End takes over for the remainder. It's a hard switch at that index, not a blend - if you want the two schedules to mix smoothly instead of transitioning at one point, ADE_SigmaScheduleWeightedAverage or its Interp. sibling are the nodes for that, not this one.

Inputs and output

All required:

  • schedule_Start (SIGMA_SCHEDULE) - drives the first portion.
  • schedule_End (SIGMA_SCHEDULE) - drives the rest.
  • idx_split_percent (default 0.5, range 0–1, step 0.001) - where the switch happens.

Output is a single SIGMA_SCHEDULE, feeding ADE_SigmaScheduleToSigmas to get a concrete SIGMAS list, or the sigma_schedule slot on Sample Settings directly.

How to install it

ComfyUI Manager: search AnimateDiff Evolved, confirm the author is Kosinkadink, install, restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved

No model download for this node - pure schedule math on objects built elsewhere in your graph.

Common issues & troubleshooting

A visible seam or artifact right at the split point. That's the expected behavior of a hard switch, not a bug - this node is designed to switch, not blend. If a visible seam is a problem for your use case, ADE_SigmaScheduleWeightedAverage (a static blend) or ADE_SigmaScheduleWeightedAverageInterp (a blend that ramps across the schedule) are the nodes to reach for instead.

Not sure what to feed schedule_Start/schedule_End. Anything producing SIGMA_SCHEDULE - ADE_RawSigmaSchedule is the documented builder in this pack's sources for constructing one from beta-curve parameters directly. If you're trying to replicate a specific motion model's native schedule on each side of the split, build each half explicitly with that node rather than guessing.

Wondering if you need this at all. For the overwhelming majority of AnimateDiff workflows, no - this is deep custom-sampler territory for a genuinely rare need (mid-generation model or schedule switching). Picking one beta_schedule preset on your loader and moving on covers nearly everything.

CategoryAnimate Diff πŸŽ­πŸ…πŸ…“/sample settings/sigma schedule

Inputs (3)

NameTypeDefaultDescription
schedule_StartSIGMA_SCHEDULEβ€”
schedule_EndSIGMA_SCHEDULEβ€”
idx_split_percentFLOAT0.5000–1β€”

Outputs (1)

NameTypeDescription
SIGMA_SCHEDULESIGMA_SCHEDULEβ€”