Pix-Wave is a real-time audio spectrum visualizer that turns music into a pixel-based frequency wave.
It captures live audio (Spotify, browser music, or system audio on Linux), analyzes it using FFT, and renders a smooth, animated pixel equalizer with customizable color themes.
- Live audio input (PipeWire / PulseAudio)
- FFT-based frequency analysis
- Logarithmic frequency scaling
- Pixel-style retro visualization
- Multiple color themes
- Fire
- Ice
- Traffic Lights
- Neon
- Smooth decay and motion
- Fully configurable via
config.py - Clean, modular codebase
Audio Output
↓
PipeWire / PulseAudio
↓
PCM Samples
↓
FFT (frequency analysis)
↓
Log-scaled frequency bands
↓
Amplitude compression + decay
↓
Pixel bars on screen
Each frame visualizes the energy of different frequency ranges in real time.
pix-wave/
├── main.py # Program entry point
├── audio.py # Audio capture & FFT logic
├── visualizer.py # Rendering logic
├── config.py # All configuration & themes
├── requirements.txt
├── screenshots/ # Screenshots used in README
└── experiments/ # (optional) early tests
All customization is done in config.py.
ACTIVE_THEME = "fire" # fire | ice | traffic_lightsFFT_SIZE = 4096
LOW_FREQ = 300
GAIN = 0.15
DECAY = 0.85
PIXEL_SIZE = 4No other files need editing.
pip install -r requirements.txt- Spotify (app or web)
- YouTube / browser audio
- Any system audio
python main.py- Designed for PipeWire
- Automatically detects:
- Spotify
- Browser audio (Chromium / Firefox)
- Falls back to system audio if needed
- No manual audio setup required



