Audio Visualizer

Description

The goal of this design project was to create a design a real- time audio visualizer using an Altera DE2 board. The original goal was to display the spectrum on a 64×32 RGB LED matrix. However due to some unforeseen circumstances, this was no longer a possibility and casting to computer monitor through the VGA would have to suffice.

My general approach to this project was to break it down into three smaller, more manageable sections. They were as follows:

  1. Capture the analog audio input from the 3.5 mm line – in input on the FPGA
  2. Analyze the information received from the audio codec so that it may be meaningfully interpreted
  3. Draw the corresponding output on to the monitor in real time

High Level Block Diagram:

This block diagram gives a relatively simple picture of how each piece of my project works with the others at the highest level. Analog audio input is fed through the line-in port through an ADC at a  rate of 48 kHz. Next the I2S receiver acquires the data from the audio codec and passes it through the IIR (infinite impulse response filter), next the signal is separated into its frequency components through the 4096 point FFT module. Finally the VGA video module generates the audio spectrum on the monitor.

Check out a video of the final product here