iTunes “shuffle” not that random

Not to be confused with the iPod shuffle, I have discovered that iTunes v 4.7.1 (30) does NOT do a good job of “shuffling” songs when running on my Powerbook (Mac OS X 10.3.8).

When running in the “shuffle” mode (Controls -> Shuffle) iTunes follows the same “pattern” skipping songs within a session. Dig this.

—————————————————
1) Start iTunes and play any song you wish by double clicking it or just push play. For easy reference lets call this song A.
2) Make sure that “shuffle” is enabled.
3) Now you can continue to listen songs normally and notice which ones play (and in what order), or
if you’re in a hurry to verify if what I am talking about is crap or otherwise, skip to the “next” song 5-6 times in a hurry, again keeping track of the songs that play and their order.
4) Let’s call the songs that play A B C D E F (it doesn’t matter whether you skip to the next song or listen songs completely, the order stays the same)
5) Now go back and play A by double clicking it or pressing Enter.
6) Now skip to the “next” song.

It’s B isn’t it? I thought so 🙂

I have been able to reproduce this behaviour each and every time I have tried.

You can listen to 500 songs and come back to A – as long as you don’t close iTunes or toggle “Shuffle” off and then back on – the order will remain A B C D E F.

Closing and restarting iTunes or toggling shuffle off then back on, disturbs this pattern, but the new pattern that emerges again stays the same until you close iTunes or toggle Shuffle.

This order remains unchanged even if you change the way you view your playlist/ library i.e. whether you sort it by name of the artist/ song/ album etc. – it obviously uses the “Track ID” (see the iTunes library XML file) to identify the next song to be played not the song’s order in the current playlist.
—————————————————

I don’t know about you, but this shuffle isn’t random enough for me. I usually listen to music with shuffle mode on, and often go back to a song I heard some time back – having to listen the exact same songs after that kinda defeats the purpose of shuffle, doesn’t it?

I’ll be surprised if no one else has noticed this. I happened to chance upon this a few days back when I found myself going back again and again to listen to a particular song – hearing that the next song played was always the same was a minor shock to be honest. I played around a bit after that to confirm what my findings and finally today am posting this.

I have NOT tried it on my Windows machine yet, so can’t say if this is specific to the Mac platform and/ or this particular version of iTunes. Maybe you can try it on your own machine and leave your comments here.

I’ll be sending this to Apple as well – they might already know about it though. Will post back their reply here.

The “why” (?)
If I could hazard a guess, the next song selected by the shuffle algorithm is a function of something like the time iTunes was last started or shuffle last toggled (whichever was last). That’s the simplest of presumptions of course – it could be dependent on any value that remains the same during the while. Though I am not expert on this, I do know that one simple way of implementing a random function is to use the current time as a base value – if you take enough precision, the current date and time cannot be the same even within the same second.

That is, clearly, not what iTunes is doing.

Of course, theoretically it is impossible to create a “random” number generator – after all it runs on a mathematical formula 😉

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.