Music 256a Sound Peeking Assignment: Audio Visualizer

"orbit"

Grant Bishko

My project "orbit" is an Audio Visualizer that is inspired from the planet Saturn and most importantly, the planet's rings. The outermost orbiting ring of my planet represents the time-domain "waveform" of the audio input (whether it's from the microphone or computer generated sound). If the audio inputted is loud enough, the outermost ring will break apart into many chaotic pieces, almost like the rings are exploding into a thousand stars. The inner rings of the planet represent the frequency-domain "spectrum" wave of the audio input. The colors of these rings change depending on the level of the frequency, and you will see them highlight white when activated. As visible, there are two sets of inner rings: the outermost (pink one) inner ring live-responds to the frequencies of the audio input, while the many orbiting ones closest to the planet represent the history of the spectrum. As the smallest rings make a full circle around the planet they disappear, allowing us to move forward in our collection of the history of frequencies.

Below you will find video clips, screenshots, unity files, and instructions for "orbit". Enjoy!

Instructions: use the 'a', 'w', 's', and 'd' keys to move the camera around the space!

Production build: MacOs

I struggled a lot with this project, but I am quite pleased with the way it turned out. This was my first time ever using Unity and coding anything graphics-related. This was also my first experience writing any C# or chucK code. Lots of growing! I enjoyed the process of "play" that came with designing this audio visualizer, as "happy accidents" became my best friend. Once I got a basic time-domain and frequency-domain wave visualized, I had a fun time playing around with the numbers, formulas, and shapes that made this possible. One of my biggest challenges was getting the history to work properly. Thanks to our wonderful TA, Kunwoo, we got it working across scripts using a "snapshot" of my spectrum that I could play around with. I would not have been able to finish the history component without his help!

Acknowledgements: Kunwoo Kim (thank you for responding to my 2:30am discord messages and for meeting with me after class to help out!), Ge Wang (thank you for providing us with the starter code and tutorials with chunity), and the rest of the Fall 2021 Music 256a class for encouraging and helpful feedback

Link to previous milestones for this project: https://ccrma.stanford.edu/~gbishko/256a/hw2/milestones.html

Grant Bishko - gbishko@stanford.edu - 10/18/2021