Shuffling playback content based on multiple criteria
First Claim
1. One or more computer-readable storage memories embodying computer-readable instructions, which, when executed, implement a method comprising:
- obtaining musical preference information from a social network service for a user of the social network;
determining criteria for shuffling a song list based on the musical preference information obtained from the social network; and
generating a shuffled list of songs for the user by;
selecting a first song from a current location in the song list;
determining whether the first song satisfies the criteria that are based on the musical preference information; and
if the first song satisfies the criteria that are based on the musical preference information then keeping the first song in the current location in the song list; and
if the first song does not satisfy the criteria that are based on the musical preference information then,attempting to find a second song in the song list that satisfies the criteria by randomly selecting the second song from the song list and checking whether the second song satisfies the criteria,swapping the first song and the second song if the second song satisfies the criteria, andif a number of attempts to randomly select a song that satisfies the criteria exceeds a threshold number of attempts without randomly selecting a song satisfying the criteria, then keeping the first song at its current location in the song list, the threshold number of attempts corresponding to at least one of a fixed number of songs or a number of songs relative to a number of songs in the song list.
1 Assignment
0 Petitions
Accused Products
Abstract
Each of one or more songs in a song list is analyzed to determine whether the song satisfies a set of criteria at its current location. For each of the one or more songs that satisfies the set of criteria, the song is kept at its current location in the song list. For each of the one or more songs that does not satisfy the set of criteria, an attempt is made to select (e.g., randomly) another song in an unprocessed portion of the song list that satisfies the set of criteria. If a selected song satisfies the set of criteria then the song and the selected song are swapped. However, if greater than a threshold number of attempts to select a song that satisfies the set of criteria are made, then the song is kept at its current location in the song list.
-
Citations
19 Claims
-
1. One or more computer-readable storage memories embodying computer-readable instructions, which, when executed, implement a method comprising:
-
obtaining musical preference information from a social network service for a user of the social network; determining criteria for shuffling a song list based on the musical preference information obtained from the social network; and generating a shuffled list of songs for the user by; selecting a first song from a current location in the song list; determining whether the first song satisfies the criteria that are based on the musical preference information; and if the first song satisfies the criteria that are based on the musical preference information then keeping the first song in the current location in the song list; and if the first song does not satisfy the criteria that are based on the musical preference information then, attempting to find a second song in the song list that satisfies the criteria by randomly selecting the second song from the song list and checking whether the second song satisfies the criteria, swapping the first song and the second song if the second song satisfies the criteria, and if a number of attempts to randomly select a song that satisfies the criteria exceeds a threshold number of attempts without randomly selecting a song satisfying the criteria, then keeping the first song at its current location in the song list, the threshold number of attempts corresponding to at least one of a fixed number of songs or a number of songs relative to a number of songs in the song list. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for generating a shuffle list in a device, the method comprising:
-
obtaining musical preference information for a user of the device from a social network service; analyzing, by the device, each of one or more songs in a song list to determine whether the song satisfies a set of shuffling criteria at a current location in the song list to generate a shuffled list of songs for playback, the set of shuffling criteria includes criteria that are based on the musical preference information obtained for the user of the device from the social network service; for each song that satisfies the set of shuffling criteria, keeping the song at the current location in the song list; and for each song that does not satisfy the set of shuffling criteria, attempting to randomly select a song in a portion of the song list that satisfies the set of shuffling criteria, and; if a randomly selected song satisfies the set of shuffling criteria then swapping a song that does not satisfy the set of shuffling criteria with the randomly selected song, and if a number of attempts to randomly select a song that satisfies the set of shuffling criteria exceeds a threshold without a randomly selected song satisfying the set of shuffling criteria, then keeping a song that does not satisfy the set of shuffling criteria at the current location in the song list, the threshold number of attempts corresponding to at least one of a fixed number of songs or a number of songs relative to a number of songs in the song list. - View Dependent Claims (10, 11)
-
-
12. A method comprising:
-
obtaining musical preference information from a social network service for a user of the social network; determining criteria for shuffling a song list based on the musical preference information obtained from the social network; and generating a shuffled list of songs for the user by; selecting a first song from a current location in the song list; determining whether the first song satisfies the criteria that are based on the musical preference information; and if the first song satisfies the criteria that are based on the musical preference information then keeping the first song in the current location in the song list; and if the first song does not satisfy the criteria that are based on the musical preference information then, attempting to find a second song in the song list that satisfies the criteria by randomly selecting the second song from the song list and checking whether the second song satisfies the criteria, swapping the first song and the second song if the second song satisfies the criteria, and if a number of attempts to randomly select a song that satisfies the criteria exceeds a threshold number of attempts without randomly selecting a song satisfying the criteria, then keeping the first song at its current location in the song list, the threshold number of attempts corresponding to at least one of a fixed number of songs or a number of songs relative to a number of songs in the song list. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
Specification