The Difference Between Random & Shuffle + Start On Track
These features can be used at the same time because they operate on two different ideas.
When the playlist "sort" option is set to "shuffle":
- The entire physical list is re-organized before being presented to the player.
- The player doesn't have to do anything special, just plays items back in a logical top to bottom manor
- Each time a playlist loads, the display order will be unique. Meaning that all subsequent requests for sub-folders or sub-playlists will also be shuffled.
Random logic gets triggered prior to launching a new track.
Tracks are randomly selected for playback, so the player will jump around the playlist.
Internally, Wimpy maintains a list of items that have already played in order to prevent items from playing consecutively -- with one caveat: When a playlist loops. After the last playlist item finishes, then automatically wraps around to the first item. During this process, the track that you just listened to (prior to the playlist "wrap") may be randomly selected, and therefore may play 2x in a row. While this sceneries is unlikely, it can happen, especially if your last name is Murphy. The reason this can happen is because the "randomizer" clears the memory for items that have already been played (because when the playlist "wraps", there is, essentially, a new "fresh" list to contend with)
Start On Track
The "Start On Track" option allows you to specify a particular track that will always be played first.
- Works in conjunction with both shuffle and random and
- Only happens one time during the first "play" request.
- When using shuffle in conjunction with "startOnTrack", the item specified for startOnTrack is honored.
For example if startOnTrack=3 the player will capture the information for track #3 prior to shuffle, then the player will find the track within the shuffled playlist after the playlist is shuffled and start on that track. So while track #3 probably won't be the 3rd item visually (because the playlist is shuffled) it will be the 3rd item in the original playlist send into the player.
- Wimpy skips over non-playable items (sub-folder and playlists) and searches for the next available "playable" item.
So for example, if you have a playlist as below with startOnTrack=4...
1 - audio 1
2 - audio 2
3 - audio 3
4 - playlist 1
5 - playlist 2
6 - video 1
7 - video 2
.. ... then item #6 will be the item that actually plays because item #4 and #5 are not "playable" items.
So it can get especially confusing if you're using random or shuffle in conjunction with startOnTrack because it will be unclear how many non playable items are between the request and actual playable items.