Implementing Mix Capability

49 views
Skip to first unread message

snesbitt

unread,
Jun 30, 2011, 1:05:19 PM6/30/11
to Acoustid
All:

For me one of the huge benefits of the original MusicIP was the
ability to create mixes based on "styler" or similiarity. I assume
this was done by some sort of algorithm that compared PUIDS.

This is a capability I would dearly hate to lose and am wondering if
such a capability would be possible with acousticids? I'm still trying
to figure out the questions, but here goes for now:
1) Is it possible to compare two acousticids and generate some idea of
similiarity?
2) If so, has it already been done?
3) If not what would it require to implement? What would the basic
algorithm look like? What would be some of the issues involved? How
would one get started?

Depending on the complexity and amount of time required, this is a
project I would be interested in.

-steve

Ben Chobot

unread,
Jun 30, 2011, 1:32:43 PM6/30/11
to acou...@googlegroups.com
No, recommendation services doesn't come from acousticids, and I'm pretty positive it didn't come from PUIDs either. Rather, these fingerprinting services allow for "normalization" of audio tracks, and that makes recommendation services much easier to develop. Last.fm went so far as to develop their own fingerprinting tech so they could make better recommendations.

Lukáš Lalinský

unread,
Jun 30, 2011, 1:51:41 PM6/30/11
to acou...@googlegroups.com
On Thu, Jun 30, 2011 at 7:05 PM, snesbitt <nesbitt...@gmail.com> wrote:
> All:
>
> For me one of the huge benefits of the original MusicIP was the
> ability to create mixes based on "styler" or similiarity. I assume
> this was done by some sort of algorithm that compared PUIDS.

No, the MusicDNS fingerprints were completely separate from the
"mixing" technology. When you wanted to create a new PUID, you had to
contribute to the database of musical features, but it was not
technically necessary for the fingerprinting part.

> This is a capability I would dearly hate to lose and am wondering  if
> such a capability would be possible with acousticids? I'm still trying
> to figure out the questions, but here goes for now:
> 1) Is it possible to compare two acousticids and generate some idea of
> similiarity?
> 2) If so, has it already been done?

No, it isn't and it hasn't be done. :)

> 3) If not what would it require to implement? What would the basic
> algorithm look like? What would be some of the issues involved? How
> would one get started?

The answers to these questions are the tricky part of the problem.
There is no "standard" way to do something like this. MFCCs (timbre)
features are used a lot as the base information for many algorithms,
but you usually have to consider way more features. I've started
collecting some links here:

https://github.com/lalinsky/chromaprint/wiki/Music-Analysis

If you find something interesting, please add it to the page.

There is also a music similarity category of the MIREX contest, you
can find some details about it here:

http://www.music-ir.org/mirex/wiki/Audio_Music_Similarity_and_Retrieval

> Depending on the complexity and amount of time required, this is a
> project I would be interested in.

I recently got interested in this too, but I haven't done much
research yet due to lack of time. Given that I don't know that much
about the state-of-the-art research, my approach will be the same as
with the fingerprinting -- spend a few months of reading various
research papers before actually attempting to implement anything.

Lukas

Lukáš Lalinský

unread,
Jun 30, 2011, 1:54:12 PM6/30/11
to acou...@googlegroups.com
On Thu, Jun 30, 2011 at 7:32 PM, Ben Chobot <be...@silentmedia.com> wrote:
> Last.fm went so far as to develop their own fingerprinting tech so they could
> make better recommendations.

Well, they didn't really develop they own fingerprinting technology.
They just used http://www.cs.cmu.edu/~yke/musicretrieval/ which I
understand was not their research.

Lukas

Ben Chobot

unread,
Jun 30, 2011, 1:59:30 PM6/30/11
to acou...@googlegroups.com
Oh, I didn't know that. Thanks.

Ben Chobot

unread,
Jun 30, 2011, 2:09:01 PM6/30/11
to acou...@googlegroups.com
It should be noted there are (at least) two angles to attack this problem from: either extract information from the song itself, or observe how people combine songs and try to replicate that.

The former is much more challenging (hence all the research), but if it ever works out, it would allow for superior recommendations. This is effectively what Pandora does today, except that they have humans extract the information (which makes it expensive to scale). The latter approach is much simpler, and is what Amazon, Apple, and Last.fm do.... but the biggest downside is that people have to use a song in relation to other songs enough to make good (or any) recommendations, and that doesn't always happen.

Lukáš Lalinský

unread,
Jun 30, 2011, 2:35:00 PM6/30/11
to acou...@googlegroups.com
The top solutions actually combine the two approaches. The problem is
that an open source project has no way to get access to such data, so
only the semantic audio analysis approach is realistically possible.

Lukas

Ben Chobot

unread,
Jun 30, 2011, 2:46:11 PM6/30/11
to acou...@googlegroups.com
Well..... I can foresee musicbrainz letting people share playlists in the future. That could give a wealth of metadata to work with.

On Jun 30, 2011, at 11:35 AM, Lukáš Lalinský wrote:

Stephen Nesbitt

unread,
Jun 30, 2011, 2:48:23 PM6/30/11
to acou...@googlegroups.com
Looks like I bit off more than I can possibly chew ;-)

There's all sorts of interesting questions here starting with just what
exactly is similiarity? Key? Chord progression? Bass line? Tempo?

I do know that I was/am impressed with MusicMagicMixer's results. It may be a
case of hearing what your listening for, but it seems that I can always find a
thread of similarity. For instance selecting a Bruce Springsteen song as a
seed inevitably seems to result in a playlist containing a lot of Bruce
Springsteen songs (which generally are consistent in terms of key, chord
progressions and tempo)

And I agree that the best system will combine some sort of algorithmic
analysis of the waveform (or some projection thereof) along with human input.

I'll take a look at the papers you mention (though I suspect they will be way
beyond me).

It would also be great that as resources, papers, etc. become available if you
would post them here.

-steve

> >> Lukas%

azurec...@gmail.com

unread,
May 4, 2013, 5:04:07 PM5/4/13
to acou...@googlegroups.com
You may want to look at a project called Gjay


it has promise, not sure it's what you are looking for though.
Reply all
Reply to author
Forward
0 new messages