Cody Sears Audio Visualizer

Audio Visualizer

Cody Sears

CPE 471 Final Project

Description

I developed this program in order to create a 3D world that changes based off of the characteristics of a song. In the end I used the pitch of the song in order to capture the rhythm. Pitch is the frequency of a note based on how high or low it sounds. This gives the basic perception of the beat. With this characteristic of the music I was able to create 2 different types of waves that coincide with the song's pattern. One wave consists of boxes that have height fields that change every 0.1 seconds. Each time another cycle of 0.1 seconds goes by, the box's height gets pushed to the next box in the line. The other "wave" is a circle of objects where the radius changes every 0.1 seconds to go along with the music.

Controls

Technical Info

Aubio
In order to extract the pitch from a song I used a program called aubio . It is used from the commandline in this fashion:
This will then be printed to a file and allow my program to use the pitch at each interval with the sample rate given in the commandline above.

SFML
My final project also uses a library called SFML . This is a fast multimedia library that helps create a way to play music through the program.

Concluding Remarks

This project gave me the chance to use all the knowledge I learned throughout the quarter and apply it to a single program. It was a great experience working with graphics and music to make a visual model of songs.

Screenshots