audio scale
Stretch or squeeze a clip's duration by a plain multiplier
- audio
- audio
The simplest of this pack's audio nodes: one input, one number, one job. audio_scale multiplies the duration of a clip by whatever you set scale to. Set it to 2 and the clip plays for twice as long; set it to 0.5 and it's half as long. That's the entire feature.
Where it fits
This pack ships three related audio-timing tools in the same category - audio_resample, audio_scale, and AudioDuration_wan - and it's worth knowing which one to reach for. audio_resample with its re_sample flag off does a similar thing (speed change via relabeling the sample rate), but that path explicitly shifts pitch along with speed as a side effect of how it works. audio_scale's own description frames it as a straight duration multiplier without that same caveat attached, so if your goal is purely "make this clip N times longer or shorter" rather than "change the sample rate and accept whatever happens to pitch," this is the more direct tool for the job. One honest gap: the node's description doesn't state whether pitch is preserved during the stretch, so don't assume either way - if pitch fidelity matters for your use case, listen to the result before committing to it in a longer pipeline.
The inputs and outputs that matter
audio(required, AUDIO) - the clip to scale.scale(default 1, range 0.001–99999) - the duration multiplier. Above 1 stretches the clip longer; below 1 compresses it shorter. The default of 1 is a no-op, so you'll always want to change this.
One output: audio - the time-scaled clip, ready to wire into a save node, a resample node, or AudioDuration_wan if you need to recompute a Wan-aligned frame count for the new length.
Installing it
Via ComfyUI Manager: search ComfyUI-WJNodes, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/807502278/ComfyUI-WJNodes.git
cd ComfyUI-WJNodes
pip install -r requirements.txt
Nothing heavy here - no model weights, no unusual dependency beyond the pack's standard requirements.
Common issues & troubleshooting
Nothing changes even though the node ran. Check the actual value of scale - it's easy to leave it at the default of 1, which is deliberately a pass-through with no effect.
Extreme scale values produce garbage or take forever. The field technically accepts anything from 0.001 up to 99999, which means you can ask for a clip 100,000x its original length. That range exists as headroom, not as a recommendation - realistic values sit somewhere between roughly 0.25 and 4 for most workflows. Pushing far past that risks memory blowups on longer source clips as well as audio that's simply unusable.
Result sounds wrong for lip-sync or audio-driven video. If you're feeding the scaled clip into something like AudioDuration_wan for frame-count math, remember the duration changed - recompute frames from the new clip rather than reusing a frame count calculated before scaling, or your video length and your audio length will drift apart.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| scale | FLOAT | 1.0000.001–99999 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | — |