From Robin's Wiki

IrateDev: PlayList

This is the algorithm used to add/remove tracks from the playlist:

Firsly here are the * ratings:

*=2
**=5
***=7
****=10

  1. The play list length is equal to the number of tracks rated ** or higher but to a maximum of 37 tracks.
  2. Tracks get removed once they've been played the number of times equal to half their value (as above). The half values go on even/odd cycles, e.g. a ** track gets played twice on the even time and thrice odd time and so on.
  3. When a new tracks is added, a random number is chosen from 0 to 8 and a track is chosen from the pool of tracks greater than or equal to that value.
  4. The probability of choosing a track is proportional to the rating value / (1 + noOfTimesPlayed).

Note that skipping a track before it has finished doesn't count as having played a track. Also note that iRATE doesn't remember the play list when you shut it down but it does shuffle the tracks that were on it back onto the play list because of the "uneven" number of times played.

Retrieved from http://www.kallisti.net.nz/IrateDev/PlayList
Page last modified on March 05, 2009, at 11:56 AM