The more I think about it, the weirder I find it that iTunes doesn’t keep track of every time you’ve ever listened to a track from your library. It would seem like such an obvious thing to do – why just throw all that data away? I mean, Audioscrobbler now has more data about what I’ve listened to and when than iTunes does. Surely that’s really bizarre? This lack of data means that I’m forever stuck looking at a list of favourite tracks that is almost dictated by when I installed the software. It’s like preferential attachment in small world network theory – the whole structure is set up so that the songs I’ve listened to the most will get listened to more. And while that might be an appropriate way to handle it, surely being able to time-limit the period you’re interested in would make the whole thing more flexible and powerful?
Think of the possibilities – in iTunes alone – (1) the ability to have playlists like “four star songs that I listened to most a year ago”, “top played songs of 2003” or whatever (2) weekly charts like they have on the radio of what you’ve played (again Audioscrobbler already has this (3) the possibility of seeing fun infographics for every song in your library, or by artist or whatever. The list goes on… And what about the other possibilities – the simple elegance of being able to create a playlist of photos in iPhoto and have it choose the most appropriate songs to play alongside it – songs that you were actually listening to at the time the photos were taken. How evocative would that be?!
And in the spirit of looking slightly startled in the direction of Apple (whose iPod Shuffle already doesn’t keep track of tracks played – an extraordinary oversight), one other piece of data I’d really like them to capture for me is the number of times that you’ve skipped past a track before the song has ended. That would seem to be to be an enormously useful piece of information. I’d love to have a smart playlist on my iPod that added in new songs as I received them and then removed them when they’d been (1) rated, (2) played over ten times and (3) skipped more than fifty percent of the time. That would be awesome. These organic playlists that manifest and evolve are so core to the way that I’ve been consuming music over the last few years since I bought my first iPod (Warning – over-excited guff from four years ago), which I feel I should point out was many many years before the rest of you did.
21 replies on “On iTunes and iPods and the data they don't capture…”
re “the number of times that you’ve skipped past a track before the song has ended” …
what a great idea!!!!
If you want that kind of data tracking, get one of the new Windows Media 10 players like the Creative Zen Micro.
It works with Napster to Go, but the data is taken even further so that even the copyright owners know how many times you’ve listened to the tracks.
Think about it – is this the kind of data you really want to share? And isn’t it more likely that Apple has chosen _not_ to take this information for the time being… rather than being an “oversight” as you suggest. After all, if they did that it would be a giveaway that Apple plan to start their own subscription service in a few years…
Wouldn’t the database get really very big after a while if every listen got logged? I’m just wondering.
What I’d really like (among other things) is a set of options to handle skipped songs which would let me set things like “Consider a song ‘played’ after 3 minutes/90%” and then use the data in the way you’ve described. Many songs I like and listened to pretty often didn’t appear in my Top 25 because I felt like jumping to another song just before the last chord/note/croon, and then I was always very careful to wait until the end, for the sake of statistics. Not very convenient.
One of the UI things I really like with last.fm/audioscrobbler is the 3 way rating. All they have is Love/Skip/Ban or +1/0/-1 I’d like to see this 3 way switch all over the place not just in a music player. Like on the AdSense ads on my blog. Or Amazon recommendations. Or social software. 5 way ratings (1-5) require too much thought.
I think iTunes keep track of the number of times you’ve listened to a track, you just need to select to display this option: Edit -> View Options… and select Play Count…
Found a link to this from MacSurfer Headline News. Yes, iTunes does keep track of how many times you’ve listened to a song. And it syncs it with an iPod so you can keep the data up to date between your computer and pod. I’ve heard that the iPod Shuffle might be slightly disabled in this regard, but that all the HD-based iPods know how many times you’ve played each track, and the date and time it was last played (in iTunes, right-click on the header of the table that lists all your tracks and enable more columns.)
It increments the “how many times” metric at the end of the song, so if you skip even the last 5 seconds it doesn’t count.
Yes, some of the other ideas are great ones, too, though. On the Mac, you could probably write an AppleScript to monitor iTunes and keep this data. On Windows I guess unless the developer included the feature, you’re screwed.
Can I encourage people to read the post again? I’m not talking about recording the total number of times songs have been played, I’m talking about recording the time and date of each time that a song was played. Does that make more sense?
Yeah Tom, iTunes has done this for ages, it’s one of the many additional view options. I’ve used a smart playlist based on this data (along with a modified “most recent 200 added” and “most recent 3000 songs played” smart playlists) to keep my iPod up to date with the songs I actually might care to hear, considering the iPod is smaller than my library.
I was suspecting that the iPod kept track too and fed this back on syncing up. Seems it does, which is cool. I don’t know how the Audioscrobbler plugin works but I think it keeps tabs seperately (on iTunes plays at least).
I might have a fiddle later and see if i can get iTunes + applecript to output something useful based on this data…
Can I restate again, that I’m asking whether iTunes and the iPod keep a distinct record of every time a song is played, not a total figure of how many times songs have been played or a record of just the last time a song was played.
Ah, I see, then no it doesn’t. If you look at the iTunes Music Library.xml file you can see the fields apple decided to store and it’s just last played (date, time) and play counter (number)…
…but in theory you could set up an applescript to write some extended metadata for your library, recording each and when and all sorts of useful info. Looking into it…
Having a quick look at the database format used at Audioscrobbler it would appear they have the data you are looking for, it’s just not readily available to users.
http://wiki.audioscrobbler.com/index.php/DataBase
Summary: Each track play has a unique record, including the user and timestamp.
I like the idea of keeping a play history: I go through phases of having favourite artists/albums/tracks which get played heavily for a week or so and then get pushed out by the next fad. It’d be interesting to be able to revisit some of these infatuations, both in “I remember now why I liked then”/”what was I thinking?” terms and because they’re often associated with life events: “I was listening to X a lot when I…”
As for the database getting really big: these days, who cares? It’d still be dwarfed by the size of the audio data iTunes is playing.
It annoys me too that iTunes doesn’t count a track as played unless it completely finishes. And I too submit to this tyranny by making sure the track completes before I start playing a new one. Even if I have to endure several seconds of silence or the noisy start of the following track. And all in the name of keeping the metadata accurate.
The thoughts on skipping tracks reminds me of this posting to furialog. Steps 1–4 are reality, steps 5 onwards increasingly baroque fantasy; but it does make me start thinking that there’s a lot of scope for running scripts behind iTunes that make it smarter.
Your ideas on being organic play lists and the ability to setup play lists of songs that I listened to in 2003 or in the last month are dynamite. It’s amazing to me that iTunes doesn’t do this already.
You have some nice ideas about how you want to listen to your music. I think you’re missing the point with apple’s design theory though… they like to keep things simple. They leave it up to other companies to provide the pro performance you want. All of apple’s apps are consumer grade and come with the basic important funtionality. The only way I can see you having a chance for those capabilities is if they provide a plugin interface for developers to add these capabilities to iTunes. I don’t see Apple ever moving from their “keeping things simple” design attitude. Hopefully the poster who suggested applescript as a possible solution can find more information for you.
I do like your ideas though.
I’m surprised that, as long as iTunes has been around and how popular it is, someone hasn’t come up with a database scheme to ping iTunes and archive all that crap. An app for an iTunes mega-database could allow for all types of interesting data manipulation.
Apple won’t do it of course. Why? Hell if I know. I’m sure they have a whole department devoted to iTunes, but we haven’t had a major feature update in a hell of a long time. You’d think that with Tiger and Spotlight this would be the perfect opportunity for that. Maybe in the future, I guess.
Also, it’s not about keeping things simple. They could keep the interface as it is, just having iTunes keep more information about our listening habits in its database would be nice to have access to for the the listening “pros” to screw around with. The applescript suggestion might be something to look into.
Windows Media Player does already sort of log the times that songs are recorded… there are some included auto-playlists like “Listen to at night”, “Listen to on weekdays” and “Listen to at weekends”, along with “Have not heard recently”. I think when it registers a play count, it also registers whether that play count was “at night”, “on a weekday” or “at the weekend”, rather than anything more sophisticated.
Me ⇒ iTunes
So this post is actually where I was going the other day when I started talking about people streaming their music to themselves. It was triggered off by Tom’s post On iTunes and iPods and the data they don’t capture……
Wow, not many people seemed to understand what you were trying to say but I sure do. I think about it everytime I try to organise my massive music collection onto my ipod. Before I got my ipod I had issues with winamps “play count” where it counted each time the song started, which is terribly worse then itunes method.
To be able to say that I’ve never listened to this whole song but skipped past it 17 times would make filling my ipod with music I like a hell of alot easier.
And how i’d love a commandline-style smart playlist formula, ahh the possibilities if only I could code.
I’ve started to code a program to do this under MacOS X – all it will do is create a second database (XML, of course) that just stores the iTunes database ID for a track, and the times it was played, and a value for how much of the track was played (maybe).
Thanks for the idea, though.
Deeper iTunes Data
I came across an interesting question today: Why doesn’t iTunes store all of the data about each time a song is played? And also, how much of the song was played?
It should be easy to write a daemon that monitors iTunes, and writes this data t…
Have been thinking for ages that that would be a great idea.
You could have Weekly Playlist.
Just like last.fm. Weekly Charts, Yearly Charts.
Hopefully someone can code a nice plugin to do this ?! On windows ๐