AUDIO Visualizer @ vrch.ai
Draw a live waveform and spectrum from your mic
- raw_data
- WAVEFORM_IMAGE
- SPECTRUM_IMAGE
The AUDIO Visualizer @ vrch.ai renders the audio data flowing through your workflow as two real images: a waveform and a spectrum. You feed it the RAW_DATA JSON from a Microphone Loader (or any compatible analysis source), and it draws a picture of what's happening in the audio right now. In a realtime setup that's not decoration - it's how you see sound without hearing it, and how you get audio into the visual side of a workflow as actual image content.
The whole pack is built around "AI art that reacts to the world," and this node is the literal first frame of that. It's also the honest debugging tool: when your "make the visuals dance" chain produces nothing, a waveform image tells you in one glance whether audio is actually arriving.
How it works
raw_data in, two IMAGE outputs out:
- WAVEFORM_IMAGE - the time-domain shape of the signal, drawn as a line.
- SPECTRUM_IMAGE - the frequency content, which is the one that actually shows the difference between a bass thump and a hi-hat.
The inputs are mostly styling: image_width / image_height set the canvas (defaults 512×256), color_scheme picks a palette (colorful, monochrome, neon, plasma), and background_color plus waveform_color let you fine-tune beyond the presets. waveform_amplification (0.1–10) scales the drawing when the signal is quiet - a whisper that looks like a flat line at 1× can become a real shape at 4×. line_width sets stroke thickness. debug logs the render.
Installing it
Standard pack install, no extras:
cd ComfyUI/custom_nodes
git clone https://github.com/VrchStudio/comfyui-web-viewer
pip install -r comfyui-web-viewer/requirements.txt
Or install "ComfyUI Web Viewer" from ComfyUI Manager and restart. No models, no FFmpeg - it's a pure drawing node.
Practical notes
- Feed it analysis data, not arbitrary JSON. It's built to consume the mic loader's
RAW_DATA(and the pack's other analyzers' data). If you hand it something with the wrong shape, you get a blank image and no error worth reading. - The images are plain
IMAGEtensors, so they drop into the rest of ComfyUI like any image: save them, blend them, feed them to a video model, or push them through a Web Viewer node for a live "oscilloscope" tab. waveform_amplificationis your first knob when output looks flat. The default1.0assumes a reasonably hot signal; quiet input benefits from cranking it. And match the sample rate used upstream - a 16k source into a 48k-assuming node draws a distorted picture.
The natural chain is Microphone Loader → Audio Visualizer → Web Viewer: speak, see the waveform update in a browser tab, and build the reactive layer on top of that.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| raw_data | JSON | — | |
| image_width | INT | 512256–2048 | — |
| image_height | INT | 256128–1024 | — |
| color_scheme | COMBO | colorful | 4 options: colorful, monochrome, neon, plasma |
| background_color | STRING | #111111 | — |
| waveform_color | STRING | #CCCCCC | — |
| waveform_amplification | FLOAT | 1.00.1–10 | — |
| line_width | INT | 21–10 | — |
| debug | BOOLEAN | false | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| WAVEFORM_IMAGE | IMAGE | — |
| SPECTRUM_IMAGE | IMAGE | — |