I've written a small tool to check if the unrecognized songs are really
not available at TEN, or if it's a tagging issue. It uses the echoprint
audio fingerprint and queries TEN if it's recognized.

How to use
- get the echoprint utility from http://echoprint.me/ (You need the
'echoprint-codegen' (https://github.com/echonest/echoprint-codegen)
binary to create the fingerprint from your local tracks).
- create the file containing the prints:

Code:
--------------------
    echoprint-codegen -s 10 30 <  smartmix-missing.log > smartmix-missing.json
--------------------

The parameters 10 and 30 mean that a 30 second sample starting at 10
seconds will be analyzed. If you omit them, the whole track will be
processed, which will take a lot longer. TEN suggests 20 secs should be
enough.
- check if the output file (smartmix-missing.json) contains the results.
It should look similar to:

Code:
--------------------
    
  {"metadata":{"artist":"Jesus and Mary Chain", "release":"Reverence - US Promo 
Single", "title":"Reverence Album Version", "genre":"Alternative Rock", 
"bitrate":160,    "sample_rate":44100, "duration":222, 
"filename":"/home/someuser/tmp/sshfs/The Jesus And Mary Chain - Reverence/01 - 
Reverence Album Version.mp3", "samples_decoded":       2444246, 
"given_duration":0, "start_offset":0, "version":4.12, "codegen_time":0.284329, 
"decode_time":1.205423}, "code_count":5472, "code":"eJy1nQ...
  
--------------------

- install java if you don't have it
- unzip the attached zip anywhere you like
- run the tool from the same directory

Code:
--------------------
    java -classpath json_simple-1.1.jar:jEN.jar:entrackid.jar 
net.nexus0.ten.util.entrackid.EchoNestTrackId <API Key>  <fingerprint file>
--------------------

eg.

Code:
--------------------
    java -classpath json_simple-1.1.jar:jEN.jar:entrackid.jar 
net.nexus0.ten.util.entrackid.EchoNestTrackId FILDTEOIK2HBORODV  
smartmix-missing.json
--------------------

(FILDTEOIK2HBORODV is an demo API key published by TEN, which should
work for identifying tracks)

Output will be something like:

Code:
--------------------
    
  Identifying: Artist [Isobel Campbell & Mark Lanegan] Release [Sunday at Devil 
Dirt] Title [Trouble] File [/home/someuser/tmp/sshfs/Isobel Campbell & Mark 
Lanegan - Sunday at Devil Dirt/11 - Trouble.mp3]
  --> not found
  Identifying: Artist [Current 93] Release [Black Ships Ate the Sky] Title [The 
Beautiful Dancing Dust [ft. Antony]] File [/home/someuser/tmp/sshfs/Current 93 
- Black Ships Ate the Sky/15 - The Beautiful Dancing Dust [ft. Antony].mp3]
  TEN Song: Artist [Current 93] Release [The Beautiful Dancing Dust] Title [The 
Beautiful Dancing Dust]
  
--------------------


The "Identifying" line shows the data from the local file (ie. your
tags), the "TEN Song" line which song EchoNest thinks it is. "not found"
means TEN didn't recognize the audio fingerprint, so the song really is
not available.

Note:
This is a quick/ugly hack and only tested on Linux system using ~100
songs, so use it at your own risk.

Roland

14207


+-------------------------------------------------------------------+
|Filename: entrackid_dist.zip                                       |
|Download: http://forums.slimdevices.com/attachment.php?attachmentid=14207|
+-------------------------------------------------------------------+

------------------------------------------------------------------------
Roland0's Profile: http://forums.slimdevices.com/member.php?userid=56808
View this thread: http://forums.slimdevices.com/showthread.php?t=97668

_______________________________________________
plugins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/plugins

Reply via email to