Using Processing to analyse song data

edited October 2014 in How To...

Hello all,

I am looking for advice as to if it is possible to use processing to get a random song from an online service like spotify or last.fm. Once the song has been received, I want to analyse properties like tempo, key, bpm, lyrics and mood even. I then want to use the analysed data as input parameters generative artwork which will be created by interfacing with a kinect..E.g if the BPM is slow, the generative art will be created at a slower pace.

I have looked at using echonestp5 library/API to attempt this but I am confused as to how I would implement all of this coding into a processing sketch. What would be the best way to proceed with a project like this?

Any help or guidance is greatly appreciated..

If I am posting in the wrong area please let me know and i will move the post

Many Thanks. JJ.

Tagged:

Answers

  • edited October 2014

    This is an advanced project! The best way would be to approach it in pieces: create a sketch that determines the BPM, create a sketch which interfaces the kinect, a couple sketches generating generative art etc.

    I'm not sure how you would use echo nest. It looks like it's not free (which we don't like) and it works with a database of music instead of analysing...

    Determining the BPM or key of a song is not a simple task. Determining lyrics and mood is even harder.

    Maybe you find this discussion useful: http://forum.processing.org/two/discussion/6747/beat-detection-sound-analysis

  • edited October 2014

    Thanks for answers guys. Sorry about the cross posting.

  • Personally, I don't mind much cross-posting on different forums, as they might reach different audiences, but KevinWorkman is right to point out the dual post, to avoid answering if the other is already answered.

  • I'm just hoping to get as much info from as many sources as possible. If I get an answer on either forum, I will update both. I appreciate any info I get. As of yet, I do not have any solid answer just some links and general advice which is helpful. For example, I was not sure if it was possible to use Java API's within Processing and today I found out that it is...Hopefully, other people will benefit from this info whether it's from this site or another one.

    Anyway, thanks for being interested.

  • Right, the reason I pointed out the cross posting is so that people looking at your question in one place don't waste their time repeating advice you've already received elsewhere.

    If you're going to cross-post, it's generally considered polite to link between the posts, that way nobody wastes their time.

Sign In or Register to comment.