I read a story a while back (may have been a year or two) on arstechnica that some guys developed a new system of organizing music using compression. When you compress a file (in this case a song) the compression algorithm looks for similarities within it. It turns out that in exploiting the similarites in the file to get smaller filesize, songs with similar genres share characteristics in their compressed form. eg. if you compress a whole bunch of Wagner, the compression algorithm will be looking for repetitions in the data, which traslates to compositional style, in this case trumpets blaring, extreme dynamics etc. So all compressed Wagner will have some similarity in the resulting file. I forget what the similarities were. In fact (as you can see) I forget most of the article. I tried to find it again with no luck. But that may not be what you're looking for.
For general analysis I'd try looking for beats with the usual methods, maybe try a discrete cosine transform to look for patterns of harmonics... I'm not really sure. Then you need to deal with how to analyze all that, which depends on what you're trying to do. There are certainly genetic algorithms written that recognize stylistic similarities in music, and probably some implementation of neural nets that do similar things. As far as being able to get those, I think they're all pretty specific implementations and probably unavailable anyway, so you'd have to write it from scratch. I'd guess if you're trying to do a whole lot of this that it's not a problem for Pure Data, as you won't be doing it in realtime. You could start by looking for C libraries that do functions on audio files.
-Ian
-------- Original Message -------- Subject: [PD] Waveform Analysis? From: "Ju'k J'unk" jukjunk@hotmail.com Date: Wed, April 14, 2004 11:37 am To: PD-list@iem.kug.ac.at
Hey Everyone,
Would anyone know the approach to take to do an in-depth analysis of waveforms or waveforms of an entire audio track? I'd like to scan through the frequencies of a sample or mp3 (or other audio form). I want to come up with all of the recognizable patterns in a given sample. This way I can scan multiple tracks of a certain genre of music or sound and come up with the repetitions and patterns that make up what makes that particular piece of music simillar to others. I'll try to clarrify exactly what I'm trying to do better if you don't quite know what I mean.
Ju'k
Limited-time offer: Fast, reliable MSN 9 Dial-up Internet access FREE for 2 months! http://join.msn.com/?page=dept/dialup&pgmarket=en-us&ST=1/go/onm0020...
PD-list mailing list PD-list@iem.at http://iem.at/cgi-bin/mailman/listinfo/pd-list