Last week I met with Dr. Pankratz to discuss beat detection again. He looked at some of the code I had and what my beat detection algorithm did. When running the code in game, it spit out way too many beats, so we inferred that my beat thresholding (what constitutes a beat) must have been the main issue. Turns out we were right. After adjusting this, along with some other minor things, my beat detection algorithm now works (and surprisingly well, I might add)! While I was adjusting the algorithm, I also implemented .wav, .ogg, and .aiff song support since Unity supports these audio formats. Anyway, here’s a demonstration of Another One Bites The Dust by Queen (At the beginning of the video I was switching between BPM Mode and Beat Detection to show that the settings for BPM Mode are preserved when switching).
As you can see, it works very well! It detects the beat with ease and also detects prominent rhythms as well. I am extremely happy with the result, and a huge weight has been lifted off of my shoulders. Now all I need to do is prepare my presentation for my time slot on Saturday.