Hi everyone!
I've always done music visualization in After Effects but because its very slow to render I've wanted to code my own real-time music visualization program. My problem with that however was it is extremely complicated to get a decent beat detection result.
The best solution I've seen so far is discussed here: http://www.flipcode.com/misc/BeatDetectionAlgorithms.pdf.
But since I'm neither a coding god nor a mathematician, I've thought to myself: What if I could extract the data from osu! maps that have been created by real humans? That would result in a really natural way to visualize songs.
Osu itself displays the beats really good like on the sides in the main menu
(https://github.com/ppy/osu/blob/master/osu.Game/Screens/Menu/MenuSideFlashes.cs)
or the logo bouncing animation.
So I have looked and searched in a random beatmap file but I don't get it which data is being used and how it's calculated. I think it could be either the [TimingPoints] section or the [HitObjects] section responsible for the side flashing and bouncing animation in osu.
Could someone help me please and explain how I could calculated at which timestamp in a song a beat should happen?
I've always done music visualization in After Effects but because its very slow to render I've wanted to code my own real-time music visualization program. My problem with that however was it is extremely complicated to get a decent beat detection result.
The best solution I've seen so far is discussed here: http://www.flipcode.com/misc/BeatDetectionAlgorithms.pdf.
But since I'm neither a coding god nor a mathematician, I've thought to myself: What if I could extract the data from osu! maps that have been created by real humans? That would result in a really natural way to visualize songs.
Osu itself displays the beats really good like on the sides in the main menu
(https://github.com/ppy/osu/blob/master/osu.Game/Screens/Menu/MenuSideFlashes.cs)
or the logo bouncing animation.
So I have looked and searched in a random beatmap file but I don't get it which data is being used and how it's calculated. I think it could be either the [TimingPoints] section or the [HitObjects] section responsible for the side flashing and bouncing animation in osu.
Could someone help me please and explain how I could calculated at which timestamp in a song a beat should happen?