The idea that I expose here I found it in PowerGold and it seems very interesting to me:
It tries to give "freshness" and helps us listen to songs so that the listener does not always hear the same thing.
I think it will be better understood in steps:
1-The tracks of a random category are mixed
2-The first N tracks are taken (for example 500). The filters are applied to these tracks and the playlist is armed.
3-At the end of the construction of the playlist those 500 tracks are inserted at the end of the category. (It works like a tail)
The next time a track needs to be generated, it will begin with step 2, except that the queue has already had a complete route, in which case step 1 is applied.
In RadioBOSS it is a bit more complicated since the tracks are in Playlist and not categories as such, it should be saved internally.
It tries to give "freshness" and helps us listen to songs so that the listener does not always hear the same thing.
I think it will be better understood in steps:
1-The tracks of a random category are mixed
2-The first N tracks are taken (for example 500). The filters are applied to these tracks and the playlist is armed.
3-At the end of the construction of the playlist those 500 tracks are inserted at the end of the category. (It works like a tail)
The next time a track needs to be generated, it will begin with step 2, except that the queue has already had a complete route, in which case step 1 is applied.
In RadioBOSS it is a bit more complicated since the tracks are in Playlist and not categories as such, it should be saved internally.