The concept is simple. Two FETs act as switches, and turn the LEDs ON when sufficient current flows through its base terminal.
The current from your sound card is maximum when music has low frequency tones (bass) or beats so LEDs are bright during beats, giving a nice visual effect.
I tried to do something similar, just used one LED, one FET and 4V instead of 9V for experimenting. Everything works, but the voltage LED receives is only about 2.5V. Where the 1.5V goes then?
Here it is. You can basically use any FET or transistor with a high hfe (>100) and a base resistor R3,R4 in the range 1k to 10k (depends on your soundcard)
You might also want to increase the current limiting resistor R1,R2 in series with the LEDs unless they can handle the current.
What value of current limiting resistor do you have? And what about the base resistance? Check these values. Also find out Vbe i.e. the emitter base voltage from the FET datasheet. You will get a voltage of 4 - Vbe.
That’s all there is to it! You could even use cheap transistors if you wanted, and experiment with the resistor values. Maybe you could replace R3 and R4 with potentiometers and add brightness control to it. Try things out on a breadboard first.