FS#1042 - Weighted Playlists / Smart Weighted Playlists
Opened by Anonymous Submitter - Friday, 07 March 2003, 18:51 GMT
Last edited by Marc Guay (Marc_Guay) - Friday, 30 January 2009, 17:20 GMT
It would be nice if there was an optional playlist file format that
could include a 'weight' rating for each song... say 1-10 (or maybe
1-5 if 10 is too many).
When a playlist starts in shuffle mode ... the weight helps to
determine if the song will play on this shuffle mode session or not
... so basically using a random generator ... a '10' would always
play ... a 9 would have a 90% chance of playing, 8 would have
80% chance of playing etc.
So some songs you don't like to hear as often won't always get
thrown into the mix and shuffled and the weight determines how
often (on average since it will probably be a random generator that
chooses to play or not).
Part 2 --- Smart Weighted Playlist.
I saw this feature on the Empeg Car Player...
My details are below. But in a nutshell, the player could pay
attention to when you skip songs in a playlist and change the
weight if you tend to skip the song a lot. Or vise-versa (you have
a song with a low number, but suddenly tend to start listenting to it
I think this would be a great feature ... because basically a playlist
could start to adapt itself to mimic the habits of the listener (user)
and it would result in a better listening experience.
The stats for this (as will as the weighted playlist about) could
either be stored as part of the playlist file ... or stored somewhere
else too i suppose if the playlist format is a limitation.
Here is my details of how i think it could technically work....
When a playlist is created the user could have the option to make
it a Smart Playlist .... basically everysong could start out with a
rating of 10 (or 5 if you go with 1-5). In addition the weight. The
playlist would hold the average amount of time (in percentage of
song) that the user actually listens to the song. Initially this
average sound start out at 100% (1.00). The average consists of
the last 10 times the user heard the song. So initially each value
for each item would reflect that the user listened to the entire song
the last 10 times.
So then when you listen to the playlist (shuffle mode) and you
finish a song (either by coming to the end or hitting the skip to go
to the next song) it calculates what % of the song you listened to.
Then it adjustes the average based on the old average.
Example: newAverage = ((oldAverage * 9) + thisPercent)/10
Then it would change the weight based on the newAverage score.
So for example if you were using a 1-10 based scale and the the
orignal average was 100% but the user listened to only 10% of the
song. newAverage = ((100 * 9) + 10)/10. Which is 91% As the
new Average. Then 91% if you convert to the 1-10 scale ... 91%
is closest to 9 (9 being 90% of 10). So the weight would now be
9. (If you were using a 1-5 weight scale ... 4 is 80% of 5, so 91%
would be closest to 5, so it would keep 5 this time around).
So going on more step ... if the user did the same thing when this
particular song came up and only listened to 10% of it .... then
newAvarege = ((91.00 * 9) + 10)/10. Which is 82.9% resulting in a
weight of 8 now ... so you can see that the weight can quickly
start to adjust itself as the listener uses the list.
Friday, 30 January 2009, 17:20 GMT
Reason for closing: Invalid
Additional comments about closing: Closing all feature requests.