Display lyrics for almost any song in your music collection with just one click! Configure AmpJuke to display lyrics for tracks. Read more.

Advertisement

Are there some configuration examples of Echonest parameters ?

Yes, certainly, read on!

As mentioned when outlining the configuration of Echonest, there are virtually endless possibilities.

The best advise I can give you is to experiment with the parameters and see what happens. However, let's take a look at some configuration examples and their effect:

 

Example 1: The default values.

Maximum number of results returned by API-calls: 5

Maximum difference in duration: 3 seconds

Mark tracks not identified: Checked (on)

Limit factor: 0.05

BPM/tempo priority and BPM/tempo factor: 3 and 50

Danceability priority: 5

Energy priority: 4

Key priority and key factor: 2 and 1

Loudness priority: 1

 

Effect: When an attempt is made to identify a track not previously identified, 5 results (maximum) will be pulled from the Echonest API. 

 

In order to make a succesful identification, a maximum difference of 3 seconds in duration is accepted. This allows for a fairly "wide" acceptance of a track returned by the API (this has something to do with the "mechanics" - see link below).

 

If a track cannot be identified using the "lazy" call to the API, the track will be marked as "not identified". This is done for two reasons: a) Avoid another "lazy" call to the API later in a later attempt to identify the track and b) mark the track for upload and "real" identification using an upload+identification operation later (on request).

 

The priority values in this example favors tracks with danceability (highest value), energy, BPM/tempo, key and loudness (lowest value). In other words: Two tracks are more likely to be considered similar/related based on the parameters "danceability" and "energy" rather than "loudness" and "key" since the last two has a lower priority set for comparison of tracks ("loudness" and "key" are the first two to be removed as valid parameters when making a comparison).

 

The tempo/BPM factor of 50 will be multiplied with the limit factor (0.05) when comparing two tracks. This means that when comparing two tracks for similarity, the difference in tempo/BPM cannot be higher than +/-2,5 (50 * 0.05) in order to make a succesful comparison based on tempo/BPM.

 

The key factor is 1 in this example. This means that when comparing two tracks for similarity, the difference in "key" cannot be higher than +/-1 in order to make a succesful comparison based on "key". Remember: "Key" is a numerical expression between 1-11 of the track's musical key ("c", "c-sharp", "d" and so on).

 

The default values outlined above will work for the most "common" music collections.

 

 

Example 2: Using only 3 parameters, - two of them with same priority.

Maximum number of results returned by API-calls: 5

Maximum difference in duration: 3 seconds

Mark tracks not identified: Checked (on)

Limit factor: 0.1

BPM/tempo priority and BPM/tempo factor: 3 and 50

Danceability priority: 1

Energy priority: 0

Key priority and key factor: 1 and 2

Loudness priority: 0

 

Effect: For an explanation of "Maximum number...", "Maximum difference..." and "Mark tracks...", please see previous example.

 

The priority values in this example favors BPM/tempo (highest values), danceability and key (lowest values). In other words: Two tracks are more likely to be considered similar/related based on BPM/tempo rather than danceability and key, since these two has a lower priority compared to BPM/tempo.  

The parameters "energy" and "loudness" will be ignored when comparing tracks for similarity (both is set to 0).  

 

The tempo/BPM factor of 50 will be multiplied with the limit factor (0.1) when comparing two tracks. This means that when comparing two tracks for similarity, the difference in tempo/BPM cannot be higher than +/-5 (50 * 0.1) in order to make a succesful comparison based on tempo/BPM. 

 

The key factor is 2 in this example. This means that when comparing two tracks for similarity, the difference in "key" cannot be higher than +/-2 in order to make a succesful comparison based on "key". Remember: "Key" is a numerical expression between 1-11 of the track's musical key ("c", "c-sharp", "d" and so on). 

 

 

Example 3: Use all parameters. Avoid marking tracks for upload.

Maximum number of results returned by API-calls: 5

Maximum difference in duration: 2 seconds

Mark tracks not identified: Unchecked (off)

Limit factor: 0.1

BPM/tempo priority and BPM/tempo factor: 9 and 100

Danceability priority: 8

Energy priority: 8

Key priority and key factor: 7 and 2

Loudness priority: 7

 

Effect: For an explanation of "Maximum number..." and "Maximum difference..." please see previous example.

 

One of the (big) differences in this example compared to example 1 and 2 above is the fact that "Mark tracks not identified" is unchecked (off/not active).

If a track cannot be identified using the "lazy" call to the API, the track will not be marked as "not identified". In other words: Every time the track is streamed, a "lazy" call will be made against the Echonest API in an attempt to identify the track. Since the track (most likely) cannot be identified, the track will continue to have a status of "not identified". However, the big difference is that the track will not be marked for upload later.

So - turning off "Mark tracks..." will have the effect that every time the track is streamed, an identification attempt will be made using the "lazy" approach, and, if the track isn't available in the Echonest's database, nothing useful will be returned and the track will not be marked as "failed identification" and will not be marked for upload (by you/other administrators) later.

 

The rest of the parameters are just a variation of the previous two examples.

In this case BPM/tempo has the highest priority (9), tracks will be similar/related if the difference between BPM/tempo among two tracks is less than or equal to 10 ("limit factor" * "BPM/tempo factor": 100 * 0.1 = 10).

 

The parameters danceability and energy have the same priority (8), so the will be used as a "pair" when finding out if a track has is similar/related to another track.

 

Key and loudness have been assigned the lowest priority in this example (7), so they will be "paired" in the same way as danceability and energy.

 

Other documentation related to the Echonest API in AmpJuke:

What it is.

How to configure.

Configuration examples (this doc.).

The "mechanics".

Batch-processing.

Improved listening experience.

 

21-06-2013