LingBot Generation Settings
One panel for every slider your LingBot clip has
- width
- height
- num_frames
- fps
- steps
- cfg
- shift
- seed
- duration_seconds
If you've poked at the pack's example workflows, you'll see a single node feeding numbers into almost everything else. That's LingBotGenerationSettings. Instead of typing 640, 352, 3, 40, 3.0, 3.0, and 42 into three different samplers and a prompt node, you set them once here and wire the outputs around. It's the "control panel" node of the LingBot pack, and it exists so your graph doesn't become a spreadsheet.
The best reason to use it: it does LingBot's frame-count math for you, and that's a step that will bite you if you do it by hand.
What it computes
LingBot's transformer expects the number of frames in a 4n+1 shape - 5, 9, 13, 61, 73… The tooltip says it plainly: frame count is calculated from FPS × seconds, then snapped to that format. So at the defaults - 20 FPS and 3 seconds - you get 60 raw frames snapped to 61. If you ever see a "num_frames must be 4n+1" style error in the sampler, it's because someone typed a raw count instead of using this node.
It also validates resolution against the model's expectations before you queue, which is nicer than finding out three minutes into a denoise.
The inputs that matter
Nine inputs, but you realistically touch five:
- width / height - defaults 640×352, multiples of 16 (min 16, max 4096). The published workflows start at 640×352 because that's the conservative sweet spot for a 16 GB card. Push it up and watch VRAM climb.
- fps - default 20. Video-gen convention; you'll rarely leave it.
- duration_seconds - default 3. This is the one that drives the frame count, and it's also the value the prompt nodes want, so Qwen's action timestamps match the actual clip length. Keep this node and the prompt node's
duration_secondson the same source. - steps - default 40 in the node (the pack's first-smoke workflows drop to 28; 40 is the reference quality setting per the README).
- cfg (default 3.0), shift (default 3.0), seed (default 42). This is a flow-matching model, so
shiftis the counterpart to CFG you may not have met coming from SD-land - it warps the noise schedule. The published settings are 3.0/3.0/42; the README's advice is to keep the seed fixed and change one thing at a time.
What comes out
Nine outputs, all plain scalars: width, height, num_frames, fps, steps, cfg, shift, seed, duration_seconds. You wire them like this:
num_frames,width,height,steps,cfg,shift,seed→ the sampler you're using.duration_seconds→ the prompt encode node, so Qwen writes action timestamps for the right clip length.fps→ post-processing / the VHS save node, so your MP4 is stamped correctly.
Because it's just scalar fan-out, you can also feed other settings nodes - it's the pack's version of a "global params" hub, minus any form of grouping. If you only need prompt-side geometry (no sampling knobs), there's a slimmer sibling, LingBotPromptSettings, that outputs just width, height and duration.
Install
Same as the rest of the pack - it ships with it:
cd ComfyUI/custom_nodes
git clone https://github.com/ALX-CODE/lingbot-video-1.3b-fp8
pip install -r requirements.txt # with ComfyUI's python
or search "LingBot" in ComfyUI Manager and restart. Note the node itself is free of heavy deps; the heavy requirements (diffusers, transformers, accelerate) and the multi-GB model download belong to the pack and the loader, not this node. If the node shows up but nothing generates, the model isn't loaded yet - see the LingBotModelLoader article.
Gotchas
- It emits
num_frames, not aduration-shaped frame count you might expect - wirenum_framesinto the sampler, notduration_seconds. - The defaults here (40 steps) and the published workflow defaults (28) disagree on purpose: 28 is the "did it smoke-test OK?" setting, 40 is the quality setting. Don't "fix" one to match the other until you've run both.
- There's no validation against your VRAM - 4096×4096 at 20 seconds will happily OOM. Start at the published smoke settings and scale up one step at a time with the seed locked.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| width | INT | 64016–4096 | — |
| height | INT | 35216–4096 | — |
| fps | FLOAT | 201–120 | — |
| duration_seconds | FLOAT | 3.00.1–120 | Frame count is calculated from FPS × seconds and snapped to LingBot's required 4n+1 format. |
| steps | INT | 401–1000 | — |
| cfg | FLOAT | 3.01–30 | — |
| shift | FLOAT | 3.000.01–20 | — |
| seed | INT | 420–18446744073709550000 | — |
Outputs (9)
| Name | Type | Description |
|---|---|---|
| width | INT | — |
| height | INT | — |
| num_frames | INT | — |
| fps | FLOAT | — |
| steps | INT | — |
| cfg | FLOAT | — |
| shift | FLOAT | — |
| seed | INT | — |
| duration_seconds | FLOAT | — |