Is it possible to make a smart playlist in iTunes that's comprised of tracks from unique artists (no one artist appears twice on the list)?

Solution 1:

Through iTunes, what you are asking is not possible. However, I thought that it should be possible, and fairly easy to do through a plugin or interface to itunes,

So I did what I promised!

alt text

It's not a true iTunes plugin, as I couldn't find any real sdk or information on writing them, but its a small WPF that interfaces with iTunes through COM. I'm working on refining it and I hope to have it up on SourceForge soon.

This is done through a COM library provided by iTunes which works in .NET. Information about the library can be found here.

Solution 2:

On windows, it might be possible through the iTunes COM interface. I never tried it, but here is an example

Solution 3:

Based on the logic capabilities with smart playlists, to answer your question: No, this is not possible.

The logic works like this:

  1. Take all songs
  2. Narrow down the selection by applying rules (these are conditional statements)
    • Conditional statements apply only to the selection from the whole, not from what has already been selected
  3. You tell iTunes where to select the items, and how to limit the selection (minutes, songs, etc)
    • This is where you would apply the "unique artists" rule - though currently it is not an option. The logic would work by keeping a list of artists "selected" and when a song is chosen at random, its artist is checked against that list of "selected" artists, and if it is not in the list, it is chosen, and the artist is added to the "selected" list.

I can't find one, and I'm not sure if its possible - but this SHOULD be able to be accomplished through an iTunes plugin.

So in short, no, it is not currently possible.

Solution 4:

It's too bad you're not running OSX, or you could use an AppleScript like this one

If you're so inclined, perhaps you can code up something reading the script code referenced and using akurtser's suggestion to try the COM interface to iTunes?

Here's Doug's Script's windows resources for similar options for Windows iTunes users.