How do you determine which onsets are beats? I am using Spectral Flux for Note Onset Detection and a Running Mean for peak-picking/thresholding.
I am just working with the guitar instrument so the presence of percussions may not help with this. Any ideas?
Thanks!
Try using a beat tracking algorithm. Beat tracking is a distinct problem from onset detection.
I think there's a good algorithm in the Queen Mary plugin set for Sonic Visualizer. The plugins are open source, so you can have a look at the code to figure out how they work.
Or do a search on google scholar for "beat tracking". There are a number of effective approaches. Dan Ellis' is a good one to start with. It's intuitive, and there's code available in Matlab and Java.