The current setup is 3x 300 ws2812b LED strips with each strip using the same output PWM pin on a teensy 3.2. The teensy gets audio off an aux splitter with one lead connecting to an analog read pin. GUI is custom written using electron and the serialport package. All patterns are stored on the Teensy. When a button is clicked on the desktop, it will send a serial command to the teensy telling it to change patterns. Total cost less than $200
No FFT is used. Currently, the sound responsive pattern is literally outputting the songs instantaneous waveform. If a pure tone wave was played, you'd see the peaks light up with troughs being off. The current plan is to perform FFT and get frequency ranges you'd see on a spectrogram.