Homework #2: "Oceanside" Audio Visualizer
Tae Kyu Kim | October 25, 2023
Music 256a + CS 476a
Stanford University




[ZIP Download]

About the audio visualizer: it originally started as an experiment in generating custom meshes in ChuGL because I wanted to generate terrain using sound. Since the high-frequency domain is not easily activated, it made sense to stylize the terrain as an oceanside where the high frequency domain represents the calmer (and flatter) ocean waves. I had fun playing around with different colors for terrain, stylizing the sky, and generating interesting sounds for the demo. I hope you enjoy!

Instructions to run the visualizer:

  1. To play the demo, run ./run_demo.sh in your command line.
  2. To play the visualizer with microphone input, run ./run_input.sh in your command line.


Final thoughts on the visualizer project:

  • My only regret is not having more than 24 hours in a day to work more on the project. There were so many other ideas that I had for the project: adding stars to the night sky, making them twinkle, changing the scroll speed of the ocean waves dynamically (which was implemented, but left unused).
  • This was my first time composing procedurally-generated music, which was a cool experience. In the future, I plan to collaborate with others to further experiment with different types of sounds and creating a more cohesive narrative.
  • Special thanks to course TA Andrew who helped me numerous times debugging with ChuGL, and the rest of the MUSIC 256A class for their invaluable feedback on the milestones :)