A mechanism is discussed that uses a heuristic for shuffling arbitrarily large playlists of media content items in a performant manner. The mechanism breaks up the larger playlist into smaller windows of media content items and randomizes those windows. The mechanism also breaks up the windows into smaller subwindows of media content items and shuffles the order of the subwindows. The mechanism allows customizing the tradeoff of performance and randomness to meet the behavior desired by tuning/configuring the window size and subwindow size of media content items. In addition, the mechanism enables presenting the resulting randomized playlist in a user interface such that a user may visualize the currently played media content item and any media content items that are to play subsequent to the currently played media content item.

Creative Commons License

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.