Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Beat Detection #2

Open
bryanveloso opened this issue Feb 16, 2012 · 3 comments
Open

Beat Detection #2

bryanveloso opened this issue Feb 16, 2012 · 3 comments

Comments

@bryanveloso
Copy link
Collaborator

Right now we snap to seconds, which is great for now. @kallepersson talked about making that 1/10th of a second, but I think that'll make the UI a bit too cumbersome to use. Ultimately, I want to be able to snap to beats. A consensus amongst a few of my fellow game music aficionados was that beat snapping would be the best way to make sure a song loops correctly.

How do we do this? I have no idea... yet. But in order for Perpetual to be the "holy shit" app that I want it to be, this is needed.

@jbergstroem
Copy link

Beat's is for sure the way to go. You'd also want to look at actually counting them to make bars (8's, 16's, 32's is usually what most music is built upon). There are two libraries that you can use as starting points for this: http://aubio.org/ and http://vamp-plugins.org.

Additionally, this document is a really good read getting into beat detection. http://www.gamedev.net/page/resources/_/technical/math-and-physics/beat-detection-algorithms-r1952

@bryanveloso
Copy link
Collaborator Author

@jbergstroem — THANK YOU. ❤️

@bryanveloso
Copy link
Collaborator Author

(Allow me to think out loud here.)

I wonder how naive we can be with this at first. Even if we were able to detect and measure the first few onsets or bars of a song, we can just throw that into a calculation to determine the number of tick marks that we need, as most songs have a constant timing throughout, correct?

That said, I'm still trying to figure out where to even start with this, even with the help provided.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants