Collection of most useful/wanted Magic Nodes masks [MM2+3]

Download and get help for different MediaMonkey for Windows 4 Addons.

Moderators: Peke, Gurus

ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

nohitter151 wrote:When I try this node, it still shows me tracks with multiple artists though they are the same as the original artists.
If you have a track with the Original Artist exactly same as the Artist then this track shouldn't be displayed, without a regard if the Artist is multi-item. I am just guessing, maybe your Original Artist has a space character after ";" instead of the Artist which haven't, for example:

Artist - Amy Lee;Seether
Original Artist - Amy Lee; Seether

If this is a case, you could try the next mask:

Code: Select all

Artist does not equal Original Artist|Filter:Replace(<Artist>, '; ', ';') <> Replace(<Original Artist>, '; ', ';')\<Artist>
nohitter151
Posts: 23640
Joined: Wed Aug 09, 2006 10:20 am
Location: NJ, USA
Contact:

Post by nohitter151 »

Most of my Original Artist tags were copied directly from the Artist tag using the Switch or Copy fields script, so there shouldn't be any discrepancies in spacing. Nevertheless, I checked the fields - they are exactly the same.

I also tried your new node, but I actually get two extra results that way, introducing these two new tracks which don't even have multiple values.

Artist - System of a Down
Original Artist - System of a Down

EDIT: The System of a down was an error on my part, one field read System of a Down while the other read System of A Down. Curious that the first node you gave me didn't pick that up. After I corrected that both nodes give me the same number of files (and they look to be the exact same at a quick glance).

EDIT2: I'm convinced this has something to do with Multiple values in the artist field against the original artist field now. Any song with Multiple artists appears in the node the same number as the number of artists defined in the track: for example --

Artist: Antsy Pants; Kimya Dawson
Original artist: Antsy Pants; Kimya Dawson

appears twice in the node, though there is only one instance of this song in my library, and it has the same artist/original artist.

Artist: Dionne Warwick; Elton John; Gladys Knight; Stevie Wonder
Original artist: Dionne Warwick; Elton John; Gladys Knight; Stevie Wonder

appears four times in the node, though the track is in my library only once and the artist/original artists are identical.

I'm not sure if its a MN issue or if I should be asking the MM devs for multi artist support for Original Artist.
MediaMonkey user since 2006
Need help? Got a suggestion? Can't find something?

Please no PMs in reply to a post. Just reply in the thread.
ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

nohitter151 wrote:The System of a down was an error on my part, one field read System of a Down while the other read System of A Down. Curious that the first node you gave me didn't pick that up. After I corrected that both nodes give me the same number of files (and they look to be the exact same at a quick glance).
If you have a space character after ";" in the Artist as well as the Original Artist, then both mentioned masks should return the same number of tracks.

When you use string comparative operators (= < > >= <= <>) the collation is case sensitive, so "A" is different from "a". If you want to compare two string value with the case insensitive collation, then you could use UpperW function, like this:

Code: Select all

Artist does not equal Original Artist|Filter:UpperW(<Artist>) <> UpperW(<Original Artist>)\<Artist>
I don't remember from which 3.x version this function is implemented. If you don't use the latest MM version and don't have Unicode characters in the Artist/Original Artist columns, then you could use Upper function instead (without "W").
Any song with Multiple artists appears in the node the same number as the number of artists defined in the track
Yes, of course, this is a feature, not a bug. Please take a look on the MM built-in Artist node and you will see the same behavior (biggest improvement in MM3 if you ask me). If you don't want such behavior, you should replace ";" in your data with some another separator character, for example "&" or ",".

Anyway, I repeat, if some track have Artist = Original Artist then this track should not be displayed with mentioned masks, without a regard if it has multi-items. For example:

'Antsy Pants; Kimya Dawson' = 'Antsy Pants; Kimya Dawson'

If you want that I check this behavior, please put your database in some free public file server (e.g. www.yousendit.com) and send me its URL in PM.

BTW, which version of the script you are trying?
nohitter151
Posts: 23640
Joined: Wed Aug 09, 2006 10:20 am
Location: NJ, USA
Contact:

Post by nohitter151 »

ZvezdanD wrote: Anyway, I repeat, if some track have Artist = Original Artist then this track should not be displayed with mentioned masks, without a regard if it has multi-items. For example:

'Antsy Pants; Kimya Dawson' = 'Antsy Pants; Kimya Dawson'
This is exactly the case, and yet the items still appear in my node.
ZvezdanD wrote:If you want that I check this behavior, please put your database in some free public file server (e.g. www.yousendit.com) and send me its URL in PM.
I have sent you a PM.
ZvezdanD wrote:BTW, which version of the script you are trying?
Version 1.7.5 of MagicNodes and MM version 3.0.3.1155.
MediaMonkey user since 2006
Need help? Got a suggestion? Can't find something?

Please no PMs in reply to a post. Just reply in the thread.
ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

nohitter151 wrote:This is exactly the case, and yet the items still appear in my node.
You was right, problem is because the Artist is multi-item and the Original Artist is not. So, instead of <Artist> you should use Songs.Artist inside of the Filter expression, like this:

Code: Select all

Artist does not equal Original Artist|Filter:UpperW(Songs.Artist) <> UpperW(<Original Artist>)\<Artist>
Now, I think that I know what you meant when you said that same track is displayed several times for multi-item artists. This occurs only in the tracklist window when you click on the caption of the root node, but not as additional nodes in the tree list. I thought that I removed this bug, but it seems that this is only in my working version. This part of the script needs to be written from the scratch.

Thank you very much for you report of this drawbacks.
nohitter151
Posts: 23640
Joined: Wed Aug 09, 2006 10:20 am
Location: NJ, USA
Contact:

Post by nohitter151 »

Thank you ZvezdanD, this new node is working exactly as I wanted.
MediaMonkey user since 2006
Need help? Got a suggestion? Can't find something?

Please no PMs in reply to a post. Just reply in the thread.
ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

There is a new revision of the MN script (http://www.mediamonkey.com/forum/viewtopic.php?t=19168) with fixed bugs mentioned in previous posts of this thread.

Here are some very simple masks related to last posts. They could be useful for someone who don't know SQL, but want to display only tracks which have multi-item artists/genres:

Code: Select all

<Group|Name:Multi-item tracks>\Multi-artists|Filter:Songs.Artist Like '%;%'\<Title>

Code: Select all

<Group|Name:Multi-item tracks>\Multi-genres|Filter:Songs.Genre Like '%;%'\<Title>

Code: Select all

<Group|Name:Multi-item tracks>\Multi-moods|Filter:Songs.Mood Like '%;%'\<Title>
Instead of Artist/Genre/Mood you could use any multi-item field (AlbumArtist, Tempo, Occasion...).
Distort

Post by Distort »

Is there an easy way to do the same thing as the top average albums, but filter out any songs with a rating of less than 1 (I give this to instrumentals, and intros)?
ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

Distort wrote:Is there an easy way to do the same thing as the top average albums, but filter out any songs with a rating of less than 1?
I don't know what you mean with "top average albums", but you could try the next filter qualifier inside of your mask:

Code: Select all

Filter:<Rating> > 15
Guest

Post by Guest »

ZvezdanD wrote:
Distort wrote:Is there an easy way to do the same thing as the top average albums, but filter out any songs with a rating of less than 1?
I don't know what you mean with "top average albums", but you could try the next filter qualifier inside of your mask:

Code: Select all

Filter:<Rating> > 15
Every time that I attempt to add that into a mask it gives me issues if I later try and calculate the average. Basically I want to calculate the album/artist average using only songs that are 2 stars or above.
ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

Anonymous wrote:Basically I want to calculate the album/artist average using only songs that are 2 stars or above.
Sorry, but I still don't know what you want. Maybe something like this:

Code: Select all

Only albums with average track ratings >= 2|Filter:Songs.IDAlbum In (SELECT IDAlbum FROM Songs GROUP BY IDAlbum HAVING Avg(Rating) > 35)\<Album|Statistic:Avg(Rating)>
or something like this:

Code: Select all

Only tracks with average ratings >= 2|Filter:<Rating> > 35\<Album|Statistic:Avg(Rating)>
Guest

Post by Guest »

ZvezdanD wrote:
Anonymous wrote:Basically I want to calculate the album/artist average using only songs that are 2 stars or above.
Sorry, but I still don't know what you want.
Sorry for the confusion, I'll give an example:

Album:
Track 1: 1 Stars
Track 2: 5 Stars
Track 3: 5 Stars
Track 4: 5 Stars

Album average would be 5 stars (essentially throwing away anything less than 2 from the average calculation. I use zero and single stars to designate instrumental and introductory tracks, so these shouldn't weigh into the average.
ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

Anonymous wrote:Album average would be 5 stars (essentially throwing away anything less than 2 from the average calculation.
Did you tried my second example? It filters out all tracks which are below 2 stars and calculates the average rating for remained tracks from each album.
declan
Posts: 85
Joined: Wed Sep 20, 2006 3:55 pm

Post by declan »

Now, if I have entered the Involved People field like this: vocal:Bono;guitar:The Edge;bass:Adam Clayton;drums:Larry Mullen, Jr. I could use the following mask and get displayed nodes with guitarists:

Code: Select all

Guitarists\<Involved people|Exclusive Right of:guitar:|Right until:;>
That's handy, but, what if there are two guitarists?
ZvezdanD
Posts: 3257
Joined: Thu Jun 08, 2006 7:40 pm

Post by ZvezdanD »

declan wrote:That's handy, but, what if there are two guitarists?
This is currently not possible (only the first guitarist will be displayed), but MM developers have a plan to improve the Involved people field so it could work as other multi-items fields.
Post Reply