[Banshee-List] quasi-randomness plugin



Hi Banshee users & devs,

I have a suggestion for a new plugin but what about a way to control just exactly how 'random' the next song to be selected was.

The next song could be chosen by the highest score - sort of a voting system of several random seeds - to see which random seed generates the highest relative score.

Out of a total probability of 100%, say the following preferences were pre-set.

10 %  -  Section 1   - the same band
5  %  -  Section 1.1 - a song from the same album
20 %  -  Section 2   - the same genre
65 %  -  Section 3   - a completely random song
                       (not in the above categories)

If the plugin was disabled, banshee could use its existing 'randomness' policies to select the next song.

Random numbers could be generated while the current song is playing to determine the next playing song.

Of course, if someone manually selects a song, then these random numbers would be generated again. I would ensure that the random seed only started after a song was 1/2 finished playing - just to not slow down multiple track skipping operations. Also, i assume that the same song would never be played twice while 'randomness' was on, unless the existing playlist had only 1 song.

Now an example.

Say we start playing a song Billy Holliday - Billy Holliday's Greatest Hits - Jazz. Assume each Section is weighted with the above preference.

Section 1 generates a value of 2 (something modulus 10)
Section 2 generates a value of 15 (something modulus 20)
Section 3 generates a value of 5 (something modulus 65)

The relative score in each of these circumstances is 1/5, 3/4 and 1/13, respectively. The obvious winner here is Section 2. Thus, the next song to be played would be an unweighted random selection from songs in the 'Jazz' category.

Anther example. Say that Section1 = 7/10, Section 2 = 3/20, Section 3 = 1/65. The winner in this example is section 1. Now 'roll another die' to determine if the next song to be played will be within the same album. If that result >= 50 % then play something in 'Billy Holliday's Greatest Hits', selected by a non-weighted random value.

A special case of this would be when only 1 album exists from the same artist. In that case, if the same artist was selected again, then the Section 1.1 result would be ignored.

Another special case of this would be when only 1 song exists from the same artist. In that case, maybe play another song in the same genre, or play a song from Section 3.

Yet another special case would be if it is a multi-artist album - however i think that that could be treated the same as any other song, taking into consideration the above 2 special cases.


I started thinking about this before I got my iPod - probably the first time I saw iTunes maybe - because I always wondered whether or not iTunes / iPod's actually played truly random songs or whether it was 'socially engineered' or marketed somehow ;-)


~/Chris



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]