π¦ Winamp Viz
It really whips the llama's ass, in ComfyUI
- audio
- images
If you were on the internet in the early 2000s, you already know the vibe. Winamp Viz takes an AUDIO input and renders classic media-player visualizations - the oscilloscope, the spectrum analyzer, the MilkDrop-style bars - as a batch of images, so you can composite them under your own UI chrome, use them as a music-video background, or just watch a waveform dance while your video renders. The name is a promise, and it mostly delivers.
It's one of the more charming nodes in DJZ-Nodes, and it's a reminder that the pack isn't all serious film effects - sometimes it's just fun.
How it works
The node analyzes the audio with a sliding-window FFT, splitting the spectrum into bass/mids/highs bands, and uses those values to drive the visualization math each frame. The viz_type dropdown picks the renderer, and there are eight of them:
- oscilloscope - the classic waveform trace.
- spectrum - the frequency analyzer.
- particle_storm - a particle system whose emission reacts to the beat.
- plasma_wave - wavy plasma distortion driven by the signal.
- milkdrop_bars - frequency bars with that unmistakable MilkDrop smoothness.
- circular_wave - the waveform wrapped into a ring.
- butterfly - a butterfly-curve animation (yes, like the MilkDrop preset).
- tunnel_beat - a beat-reactive tunnel you fly through.
Two global dials shape how reactive everything is: sensitivity (0.1β5) amplifies the audio response, and smoothing (0β0.99) eases the visualization's motion - higher smoothing = lazy, liquid transitions; lower = twitchy, immediate. color_scheme (classic, rainbow, fire, matrix) repaints all of them.
The inputs that matter
audio- the AUDIO input that drives everything.width/height(64β4096),fps(1β60) - output resolution and timing.max_frames- length cap. Default 0 means "auto": it renders until the audio runs out, which is what you want for a full-length track. Set a number to truncate.viz_type- the effect. Start withspectrumandoscilloscope; they're the most legible.sensitivity/smoothing- the two dials you'll actually tweak.
Output is images (IMAGE batch) - one frame per video frame of your audio. Feed it to a Video Combine alongside the audio and you've made a music video.
Installing it
Standard DJZ-Nodes install:
cd ComfyUI/custom_nodes
git clone https://github.com/MushroomFleet/DJZ-Nodes
cd DJZ-Nodes
pip install -r requirements.txt
Restart ComfyUI, or search "DJZ-Nodes" in ComfyUI Manager. Needs the pack's audio stack (librosa, soundfile, numpy) - the same heavier requirements as the other audio nodes.
Troubleshooting
- Visualization is dead / barely moving. Check
sensitivity- at 0.1 the audio barely registers. Also confirm the audio actually has signal; silence visualizes as silence. - Frame count doesn't match the song.
max_framesat 0 auto-sizes to the audio, but yourfpssetting determines how many frames that computes to. If the viz ends early, it's usually the fps/frame-count math, not the audio. - Stutters on long tracks. Big resolutions at 60fps for a 4-minute song is a lot of FFT + rendering. Drop to 512px and it flies.
- "Winamp Viz" name missing from search. Some Manager lists show it under the pack. Just install DJZ-Nodes and all the viz nodes come along.
It's unapologetically a party node. Not something you'll use for serious work, but for music-driven video it's dead simple and reliably fun. In 2026, that still whips the llama's ass.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | β | |
| width | INT | 51264β4096 | β |
| height | INT | 51264β4096 | β |
| fps | INT | 301β60 | β |
| max_frames | INT | 00β9999 | β |
| viz_type | COMBO | 8 options: oscilloscope, spectrum, particle_storm, plasma_wave, milkdrop_bars, circular_wave, +2 | |
| color_scheme | COMBO | 4 options: classic, rainbow, fire, matrix | |
| sensitivity | FLOAT | 1.00.1β5 | β |
| smoothing | FLOAT | 0.500β0.99 | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | β |