6

iTunes 11 seems to revolve around the screen that shows you all of the different albums that you own. However, the vast majority of the albums iTunes is showing me are albums from which I own only one song, and it is making it difficult to find those albums that are actually complete.

In iTunes 11, how do you filter the albums displayed in the Albums pane?

5 Answers 5

0

There's no way to do that, alas. This hint shows an AppleScript that can make playlists from all complete albums, but if you have a lot of albums, it might be overwhelming.

1
  • 2
    It's unfortunate that there's not an easier way to do this. Thanks for the response.
    – sffc
    Mar 10, 2013 at 2:15
2

Make a smart playlist with the following filter - Comments contains Full Album. For each album I want to add, I click on Get Info and add Full Album to the comments field

1

You can't. Write a suggestion to Apple at: http://www.apple.com/feedback/itunesapp.html

1

You can create a playlist that contains all full albums in your library using AppleScript. The code below is just a small modification to the script linked in Kirk's answer so that it creates one playlist instead of one per album. It's slow (takes maybe 5 minutes to run through my library) and is very sensitive to any metadata inaccuracies, but it works for me.

-- Creates one playlist of all full albums you have in iTunes
-- Set the playlistPrefix and playlistSuffix as desired before running

-- Original script by duozmo on Ask Different
-- http://hints.macworld.com/article.php?story=20130201061128257
-- http://apple.stackexchange.com/a/77626

-- Based on code by Brad Campbell
-- http://www.bradcampbell.com/2009/05/26/make-a-whole-album-playlist-in-itunes/

tell application "iTunes"
    set albumPlaylistName to "Full Albums"
    -- Create playlist
    if user playlist albumPlaylistName exists then
        try
            delete tracks of user playlist albumPlaylistName
        end try
    else
        make new user playlist with properties {name:albumPlaylistName}
    end if

    set albumBuckets to {} as list
    set allSongs to (every track of library playlist 1 whose enabled is true and podcast is false and kind contains "audio") as list

    -- Find all partial albums in iTunes
    repeat with currentTrack in allSongs
        set albumName to album of currentTrack as text
        set artistName to artist of currentTrack as text

        -- First check for missing values, then perform integer comparison
        -- Zero is on the left to force interger type coercion, just in case
        if album of currentTrack is not missing value and 0 is less than length of albumName then
            if artist of currentTrack is not missing value and 0 is less than length of artistName then
                if track number of currentTrack is not missing value and 0 is less than track number of currentTrack then
                    if track count of currentTrack is not missing value and 0 is less than track count of currentTrack then
                        if albumBuckets does not contain album of currentTrack then
                            copy album of currentTrack to the end of albumBuckets
                        end if
                    end if
                end if
            end if
        end if

    end repeat

    repeat with currentAlbum in albumBuckets
        set albumSongs to (every track of library playlist 1 whose album is currentAlbum)
        set firstTrack to first item of albumSongs

        -- Filter album list to act only on full albums
        if (count of albumSongs) is equal to track count of first item of albumSongs and 1 is less than (count of albumSongs) then
            -- This is a full album, construct the playlist

            -- Sort tracks by track number
            set albumSongsSorted to {} as list
            repeat with i from 1 to (count of albumSongs)
                repeat with trk in albumSongs
                    if track number of trk is i then
                        set nextSong to trk
                        copy nextSong to the end of albumSongsSorted
                    end if
                end repeat
            end repeat

            try
                repeat with trk in albumSongsSorted
                    duplicate trk to user playlist albumPlaylistName
                end repeat
            end try
        end if
    end repeat

    display dialog albumPlaylistName & " playlist created!"
end tell

Another option would be to use Doug's Random Full Albums script if you just want iTunes to act like a CD changer on album shuffle mode.

1
  • 1
    In iTunes 12.8 I got an error 'unknown object type'. This can be fixed by removing the 'podcast clause from the set allSongs line. The new line should be set allSongs to (every track of library playlist 1 whose enabled is true and kind contains "audio") as list
    – Quantum7
    Aug 22, 2018 at 20:54
0

My workaround is a bit different, because I didn't want to write a script and wasn't sure how long Apple would continue to support AppleScript anyway.

Instead what I do is either:

  • tag the fact it's an incomplete album in the metadata, by adding "incomplete_album" in the comments field for the relevant tracks, and then editing the smart playlist settings to exclude tracks which have that.
  • remove the track number from single tracks, and then write a rule in the smart playlist to exclude tracks where the track number is blank.

Method 2 is arguably slightly cleaner, though the advantage of the first is that should you ever want to look at your list of partial albums (e.g. to decide which of them you might want to get obtain in full) you can write make a smart playlist that works the other way around and lists only "incomplete_album".

Also, I think a good rule is to never remove metadata except where you know it's inaccurate, better to add additional tags so you can do what you want with them.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .