April 23, 2026
Glow Bird Protocol
Real-time audio-to-WLED light sync for Linux
Objective
Create a Python tool that captures system audio on Linux and syncs it to WLED LED strips in real time.
Tools & Technologies
NumPy
PulseAudio/PipeWire
WLED (UDP)
Details
I have an LED strip behind my desk running WLED, and it mostly just sat there showing static colors. So I wrote Glow Bird Protocol: a Python tool that listens to whatever audio is playing on my Linux system and makes the strip react to it in real time.
The audio is captured through PulseAudio/PipeWire and analyzed with an FFT (Fast Fourier Transform) using NumPy, which splits the sound into 16 frequency bands. Those bands get packed into a UDP packet and sent to the WLED device. The latency is low enough that the lights genuinely feel like they react the moment a beat hits.
Configuration is just a simple conf.txt file, and the tool runs as a systemd service so it starts automatically in the background. Set it up once and never think about it again.
While making this project I learned a lot about signal processing, how real-time audio capture works on Linux, and how the UDP protocols behind WLED actually work.
Source Code
Take a closer look at the source code here: GitHub
Gallery

WLED Effects page

WLED Reactive setup

WLED Glow Bird Daemon service
// related writing
Read the full write-up

