Audio to Waveform Image
Audio in, transparent waveform overlay out — the composite node
- audio
- IMAGE
Of the three waveform nodes in the ComfyUI-Audio-Waveform-Visualizer pack, Audio to Waveform Image is the one that behaves like a normal ComfyUI node: audio in, IMAGE out. Feed it a track and it hands you a proper image tensor you can preview, save, or composite over anything. That last part is the reason it exists - the output is an RGBA image with a fully transparent background, so it's built for overlays, not for standing alone.
This is the node you reach for when your audio-to-video output needs a waveform baked in: a lyric-video-style strip on top of generated frames, a visualizer accent under a talking-head render, a subtle timing reference in an edit. Wire the IMAGE into Preview Image or Save Image to check it, then drop it into whatever compositing chain you use and it sits on top without covering anything underneath.
How it works. It renders with matplotlib using the Agg backend - the non-interactive one, so no threading surprises inside ComfyUI's environment. It merges stereo down to mono, decimates the audio to about four points per pixel of width (wider images get more detail for free), then plots a single thin line (linewidth 0.5) with both the figure and axes backgrounds set fully transparent, and saves straight to a PNG in memory. Out comes a [1, H, W, 4] RGBA tensor. Clean, no temp files.
The inputs that matter. Four required, and honestly three are one-time setup:
audio- the standardAUDIOtype from coreLoad Audioor VideoHelperSuite.width/height- image size, default 512×256, clamped to 128–2048 wide and 64–1024 tall.color- here's the honest gotcha: the README brags about hex support, but the shipped code gives you a dropdown with four presets:green,#3232c8(blue),red, andwhite. Two of those happen to be hex codes. There's no free-form color picker, so pick the closest preset, or hand-edit the workflow JSON if you truly need a custom color.
Install. Standard for the pack: ComfyUI Manager (search "Audio Waveform Visualizer"), or:
cd ComfyUI/custom_nodes/
git clone https://github.com/kaushiknishchay/ComfyUI-Audio-Waveform-Visualizer audio-visualizer
then restart ComfyUI. It needs matplotlib and soundfile (plus torch/numpy/Pillow, which you already have if ComfyUI runs at all). No models to download, nothing GPU-heavy. It's one of three nodes from Nishchay Kaushik, an audio-focused ComfyUI dev who also maintains the Qwen3-ASR transcription node.
Troubleshooting. If you expected a solid-color image, check again: the whole point is transparency, so against a dark background it can look like just a floating squiggle - that's correct behavior, it's an overlay. The one real failure mode is a missing matplotlib import error at startup; pip install -r requirements.txt inside the pack folder and restart fixes it. For a single-track waveform to composite over footage, this is the one I'd reach for. The FFMPEG sibling in the same pack renders peak + RMS and looks fancier, but it has a system dependency and an opaque background - the tradeoff is yours.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| width | INT | 512128–2048 | — |
| height | INT | 25664–1024 | — |
| color | COMBO | #3232c8 | 4 options: green, #3232c8, red, white |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |