patch for new feature: acoustic fingerprinting and audio similarity

Jeff Mitchell kde-dev at emailgoeshere.com
Tue Aug 12 18:24:22 UTC 2008


Leo Franchi wrote:
> On Aug 12, 2008, at 6:40 PM, Gleb Litvjak wrote:
> 
>> I am not a part of the Amarok dev team, but here are my 2 cents:  
>> this sounds
>> great. Actually, I've been looking for something like this for ages.  
>> LastFM's
>> suggestions are good, but they aren't perfect, as I have many songs  
>> from
>> little known artists (mostly from Jamendo), which never get  
>> suggested. When
>> the music collection is rather large, it becomes hard to keep track  
>> of every
>> single song and its mood (and genre tags don't help too much - for
>> example, "Crazy" by Aerosmith and "Kill the King" by Rainbow both  
>> have "Hard
>> Rock" as the genre, but their mood is completely different). So,  
>> acoustic
>> fingerprinting would come very handy. It even might become yet
>> another "killer feature", proving once again that Amarok is indeed  
>> The Best
>> Audio Player Ever (TM)
> 
> Just to be clear, we are excited about this too. This could be /really  
> awesome/.
> 
> That said, we also want to do it right. We want it to fit in to  
> Amarok2 in the best way possible, and not throw away all the  
> refactoring and work that has already  been done.
> 
> So we are very aware that this is a potential killer amarok feature.  
> Bear with us as we figure out how to best work with this.

Soren, thanks for providing use cases.  It was very late yesterday, and 
while I could think up some on my own if I racked my sleep-deprived 
brain, I always want to hear it from the authors' mouth.  Good vision -> 
good software.  Your use-cases are great.  I'd love to see this 
integrated with the dynamic/fuzzy playlists.

I agree that this could be a really great feature.  But I want to repeat 
something I said yesterday:

"What I'm getting at though is that this kind of fingerprinting would 
belong in a well-documented library so that other apps could use it for 
correlation, not just Amarok, and which could then be integrated into 
Amarok if appropriate."

You already said: "an GSOC student (Charlotte Curtis) is working on an 
audio similarity project for Rhthymbox -- she also independently decided 
to use Marsyas, and we're sharing fingerprint calculation code."

It seems to me that if you're working on the same thing and already 
sharing code, the logical thing to do would be for the two of you to 
create a library together, and then integrate that common library into 
each of the applications.  It provides a focal point for bug-fixing, 
development, and enhancement.  If you guys can't agree on what toolkit 
to use, you could even create gtk/qt bindings for it  :-)

Another of the small quibbles with your patch: avoid using BlockingQuery 
if humanly possible.

--Jeff



More information about the Amarok mailing list