Chord positions?


I’m getting great value from the beat_positions element of the low-level data, but it would be even more useful if there was similar data showing the times that chords happen. The aggregation seems to be there in chords_histogram… is there any way to get back to the discrete time/measurements that created the histogram?


(ping @alastairp)

You might find some information about it on the Essentia project pages. As far as I remember from discussing with Alastair at the last summit, the chord_histogram algorithm was not very reliable (I don’t remember why, but I remember being confused by its output)

I think the only algo used by AcousticBrainz is Chord Detection and you would like Chord Detection Beats, so you might want to open a ticket to have it used in the next version.

But again, I don’t know much about this so you should ask Alastair directly :slight_smile:


Thanks – will do. I know there’s some sensitivity to describing musical content in enough detail to be considered a derivative work, so I’d be happy enough just knowing when chords change without knowing what each chord is.


We currently don’t compute any melodic/harmonic information in AcousticBrainz that changes over time (The only time-varying data that we compute is beats).
The underlying algorithms from Essentia that we use in AcousticBrainz do compute this information, but for space and efficiency reasons we don’t share it to AcousticBrainz. If you’re interested in computing this on audio that you have access to I can explain how it’s done (though I expect that you’re more interested in seeing this on data in AB).
Having an indication of when chords change is an interesting idea - we are thinking about the best way to report beats, bars, and section information about recordings and we can definitely think about adding this. I’ll add it to our ideas list, thanks!