ComfyUI Node
Render Lyric Captions
Align full-song lyrics using optional isolated vocals and render with the original soundtrack. Trim audio and captions together. Wire VIDEO through Preview Video for review, then to Save Video.
Render Lyric Captions
- audio
- vocals
- background
- video
- srt
- report
- timing_json
- cleaned_lyrics
◄lyrics—►
◄languageen►
◄deviceauto►
◄font_fileRoboto-Regular.ttf►
◄font_size80►
◄modefloating-words►
◄width720►
◄height1280►
◄fps24.00►
◄positionbottom_center►
◄margin_x40►
◄margin_y40►
◄text_color#ffffff►
◄highlight_color#ffff00►
◄outline_color#616161►
◄outline_width3►
◄background_color#000000►
◄caption_transparency0►
◄enable_glowfalse►
◄glow_intensity5►
◄glow_range25►
◄glow_blur15►
◄glow_inner_color#2ec0ff►
◄glow_outer_color#006eff►
◄trim_start—►
◄duration—►
◄timing_adjustment0.00►
◄circle_radius30.0►
◄float_distance1.5►
◄fade_in0.50►
◄fade_out0.50►
◄min_display0.70►
◄max_words4►
◄max_simultaneous5►
◄seed42►
◄rotation_axisTurning sign►
◄corrected_timing—►
Category🌒 Eclipse/ Video
Inputs (40)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| lyrics | STRING | Full-song plain lyrics or YuE2/MiniMax song JSON. | |
| language | COMBO | en | 101 options: Auto, en, zh, de, es, ru, +95 |
| device | COMBO | auto | 3 options: auto, cpu, cuda |
| font_file | COMBO | Roboto-Regular.ttf | 7 options: Allura-Regular.ttf, FreeMono.ttf, Oswald-Bold.ttf, Roboto-Regular.ttf, ShareTechMono-Regular.ttf, comic.ttf, +1 |
| font_size | INT | 808–512 | — |
| mode | COMBO | floating-words | Words modes group fast words into phrases; lines modes use complete lines. Rotating captions turn in place at a speed set by lyric timing. |
| width | INT | 72016–4096 | — |
| height | INT | 128016–4096 | — |
| fps | FLOAT | 24.001–120 | — |
| position | COMBO | bottom_center | 9 options: top_left, top_center, top_right, center_left, center_center, center_right, +3 |
| margin_x | INT | 400–2048 | — |
| margin_y | INT | 400–2048 | — |
| text_color | STRING | #ffffff | — |
| highlight_color | STRING | #ffff00 | — |
| outline_color | STRING | #616161 | — |
| outline_width | INT | 30–32 | — |
| background_color | STRING | #000000 | — |
| caption_transparency | FLOAT | 00–100 | Fade text, outline, highlight and glow together. 100% hides captions; background and audio are unchanged. |
| enable_glow | BOOLEAN | false | — |
| glow_intensity | INT | 52–20 | Glow buildup iterations (more = denser glow). |
| glow_range | INT | 251–500 | Maximum glow expansion distance in pixels. |
| glow_blur | INT | 150–500 | Blur radius applied to each glow step. |
| glow_inner_color | STRING | #2ec0ff | — |
| glow_outer_color | STRING | #006eff | — |
| trim_start | FLOAT | 0–86400 | Trim the full soundtrack and captions together, in seconds from the start of the song. |
| duration | FLOAT | 0–86400 | Connect seconds explicitly. 0 renders the remainder of the song; the end is clamped to available samples. |
| timing_adjustment | FLOAT | 0.00-86400–86400 | Positive values delay captions. |
| circle_radius | FLOAT | 30.00–50 | Floating caption centers stay inside this circle, centered on the video. Radius is a percentage of the shorter canvas dimension. |
| float_distance | FLOAT | 1.50–20 | Maximum gentle movement as a percentage of the shorter canvas dimension. |
| fade_in | FLOAT | 0.500–2 | Fade-in seconds, added before the minimum readable hold. Shortened when floating slots or the next rotating caption need room. |
| fade_out | FLOAT | 0.500–2 | Fade-out seconds after the sung span and minimum readable hold. Floating items can overlap while slots remain; rotating items finish by the next onset. |
| min_display | FLOAT | 0.700–3 | Minimum seconds at full animation opacity, excluding fades. Also groups fast words. Reduced when floating slots or the next rotating caption need room; sung onsets never move. |
| max_words | INT | 41–12 | Maximum words to combine per phrase. Indivisible timed spans and attached untimed text stay intact. |
| max_simultaneous | INT | 51–8 | Maximum visible floating items, including outgoing fades. |
| seed | INT | 420–18446744073709550000 | Repeatable full-song positions, also preserved when trimming. |
| rotation_axis | COMBO | Turning sign | Rotating modes: Turning sign turns around the vertical axis; Flipping card turns around the horizontal axis. Speed follows lyric timing automatically. |
| vocalsopt | AUDIO | Full-song isolated vocals starting at zero. Duration must match audio within 50 ms; never shifted or stretched. | |
| corrected_timingopt | STRING | Full-song timing JSON matching cleaned lyrics. Bypasses alignment and lazy vocal separation. | |
| backgroundopt | COMFY_MATCHTYPE_V3 | Optional IMAGE, image batch/list, or one VIDEO. Images play in order at caption FPS; VIDEO uses its timestamps. Short backgrounds hold their last frame. Background audio is ignored. |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| srt | STRING | — |
| report | STRING | — |
| timing_json | STRING | — |
| cleaned_lyrics | STRING | — |