My original post got moved to the " iPod, mobile phones, and other portable devices" for reasons beyond my comprehension, so here's a slightly modified repost with additional information.
I'm trying to accomplish something quite specific in MC, with the help of a number of smartlists. The smartlists i already have are working quite well, but i'm running into performance problems because of the complexity of the "smartlist framework", so i'm asking myself (and now, other Interact members (; ) if there's a more elegant solution.
First, a description of what i want to do:
For my iPod collection, i want to have smartlists of the last x imported albums, where at least one of the album's tracks has not been rated yet. I want one smartlist per album. I want about 25-30 of these smartlists.
Short description of my current solution:
I have one "master smartlist" with the following parameters:
[Media Type]=[Audio] -[Genre]=[Audiobook],[Comedy],[Computer],[Podcast] [Rating]=0 -[_ipod_exclude]=1 -[_ipod_exclude_auto]=1 ~sort=[Date Imported]-d ~nodup=[Album] ~n=20
This gives me a list of single tracks as per my specifications.
Then i have 25 smartlists with something like:
playlistid==87289916 -playlistid==1047211171 ~sort=[Date Imported]-d ~n=1 ~a
These give me complete albums, based on the single tracks from the "master smartlist". Of course, the more smartlists i have, the more of the "previous" smartlists i have to exclude, in order to get a "new" album with every smartlist. This makes the "later" smartlists, where i have to exclude a lot of other smartlists, quite slow.
Now, my question is: is there a more elegant way to achieve what i want, without the excessive use of excluded smartlists? I think one solution would be to point the smartlists to specific tracks in the master smartlist (like "track #1 of smartlist xxx" or "track #5 of smartlist xxx"), but i have no idea how to do that.
MORE INFO: I've had some limited success with this type of smartlist:
playlistid==87289916 [=isequal(Counter(1,1),20,2)]=1 ~a
This code is super-fast, but i don't understand on which basis one of the tracks from the "master smartlist" is selected by the parameter that's "20" in this example. I can't recognize a pattern by which the track is selected. Looking at the sequence of tracks in the "master smartlist", it's certainly not number 20. No matter what type of sorting is applied to the "master smartlist", i keep on getting the same result with each number, until i import more albums. This could even be a bug in the query engine, because there's no logical basis i can see for the track that's selected. When i look at the "master smartlist", the parameter "1" should select the first entry of the "master smartlist", parameter "2" the second one, and so on.