Whisper Time Adjuster β‘π ‘π π £π
Shove all your Whisper timestamps by a constant amount
- alignment_data
- whisper_alignment
The blunt instrument next to WhisperAutoAdjust's clever one. If a word-synced effect built on Whisper timing looks consistently early or consistently late by roughly the same amount the whole way through your clip, you don't need energy-based detection - you just need to shift every timestamp by a fixed offset. That's the entire job here.
Like the rest of the RyanOnTheInside Whisper family, this node consumes alignment_data produced by a separate pack, ComfyUI-Whisper - it doesn't transcribe anything itself, it just adjusts timing that already exists.
How it works
One input beyond the alignment data: time_offset, in seconds, from -1000 to 1000. Positive delays every timestamp in the alignment; negative advances them. Zero does nothing. There's no smoothing, no detection, no per-word logic - every timestamp in the whole alignment moves by exactly the same amount.
The inputs and outputs that matter
alignment_data (whisper_alignment) is the alignment you're correcting. time_offset (default 0) is the only thing you'll actually touch - figure out how many frames or seconds off your effect looks, convert to seconds, and dial it in. The output is whisper_alignment, shifted, ready to feed into WhisperFeature or WhisperToPromptTravel.
In practice, the way people actually land on a number is by eyeballing a render: count how many frames early or late a word-synced effect fires, divide by your project's fps to get seconds, and that's your starting time_offset. A handful of small render-and-check passes gets you there faster than trying to reason your way to the exact value up front - this node is cheap to re-run, so treat it as a dial you turn and check rather than a value you need to solve for analytically.
How to install it
Via ComfyUI Manager, search "RyanOnTheInside." Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/ryanontheinside/ComfyUI_RyanOnTheInside.git
cd ComfyUI_RyanOnTheInside
pip install -r requirements.txt
Restart ComfyUI. Same note as its Whisper-family siblings: you'll also need ComfyUI-Whisper installed to actually generate alignment_data before this node has anything to work on.
Common issues & troubleshooting
This node only fixes a constant offset. If the sync drift grows or shrinks over the course of the clip rather than staying steady from start to end, a flat time_offset won't fully fix it - that's a sign either your audio and video aren't actually running at the fps/duration you think they are, or that the mismatch needs the energy-based approach in WhisperAutoAdjust instead.
It's also easy to double-correct without noticing: run this after WhisperAutoAdjust has already fixed the timing, and you can just as easily nudge yourself back out of sync as into it. Change one offset at a time, re-check the result, and don't stack adjustments you haven't verified individually.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| alignment_data | whisper_alignment | Whisper alignment data to adjust | |
| time_offset | FLOAT | 0.0-1000β1000 | Seconds to shift all timestamps: - Positive: Delay speech timing - Negative: Advance speech timing - 0.0: No adjustment |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| whisper_alignment | whisper_alignment | β |