Is there any way to apply weighted sorts to a smartlist? As an example of what I'm trying to do:
I currently have a smartlist called "normal playing" which contains every mp3 audio file rated 3 and above. Currently, it's sorted as "random". However, I'm starting to find that I'd like to make it slightly less random in that tracks with a lower playcount OR tracks with a rating of 4 and 5 should _tend_ to fall nearer to the top of the list.
So, as an example, a track with a rating of "5" would have a 50% chance to be on the top third of the list, a 30% chance to be in the middle of the list, and a 20% chance to be at the end of the list. If the average number "number plays" count of all my mp3 files is 3, then a track with 0 number plays would also tend to fall near the top of the list (but not always!)
My first thought is that every track would be given a priority based on its rating, number of plays, and a random number:
AvgPlayed = (average number of plays for all tracks)
for (each track)
TrackPriority = TrackRating + (AvgPlayed - TrackNumPlayed) + (random number between 1-50).
Then, the list is sorted in TrackPriority order (decending) for my final playlist.
Obviously, this can't be done with smartlists...
My next attempt was the create a calculated user property with the formula of "[number plays] - [rating]" thinking I could use that as a sort. Unfortunatly, it seems that calculated properties are all about concatenating strings, and not adding numbers.
Any thoughts, help, etc?
Thanks
Gary