Animate a row of individually adressable leds using a raspberry pi to react to a given song.
For building this proyect I used:
- Numpy: for basically everything
- Matplotlib: for visualizing the audio results
- cv2: to generate the resuliting videos
- colour: for conversions between colours
- rpi_ws281x: to control the led strip (from this repo)
Volume animations are made based on the volume of the signal in the .wav file.
The signal is averaged using a hamming window, as show in:
Where the blue and orange lines are the channels of the song
The green line is the result of the average
The red line is the result of discretacing the green line for a 30 fps video
One of the animations that can be created using this is the following
This animations are based on the fft of the singal.
This animations depend on more values such as: