Magic Nodes 1.3b (IS OUTDATED SEE NOTE IN FIRST POST)

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

Moderators: Peke, Gurus

pah68
Posts: 1504
Joined: Wed Apr 07, 2004 5:26 pm
Location: Sydney, Australia

Post by pah68 »

Sorry alphaex32, don't mean to cut in.

but.....



Can Magic Nodes show me duplicate track names?

I'd like a list of tracks when they are listed more than once, ideally but probably not possible would be a list of the same tracks by different artists.

I'd like an easy way to display the same songs covered by multiple artists.
Last edited by pah68 on Sun Jun 05, 2005 12:12 am, edited 1 time in total.
Pablo
Posts: 554
Joined: Sun Feb 22, 2004 2:59 am

Post by Pablo »

alphaex32 wrote:I'm getting an error everytime I start MM:
Error #1002 - Microsoft VBScript compilation error
Syntax error
File: "C:\Program Files\MediaMonkey\Scripts\Auto\MagicNodes.1.3.vbs", Line: 891, Column: 3

I get a MagicNodes item in the tree, but I dont see an option anywhere to create any nodes.

I installed it correctly in the Scripts\Auto folder with no older versions installed. I am using the latest MM beta.
What operating system are you using? The only thing I can think of is that you're using an outdated version of windows scripting host. You can download the latest one from http://www.microsoft.com/downloads/deta ... laylang=en . Let me know if that works.
Pablo
Posts: 554
Joined: Sun Feb 22, 2004 2:59 am

Post by Pablo »

pah68 wrote:Can Magic Nodes show me duplicate track names?

I'd like a list of tracks when they are listed more than once, ideally but probably not possible would be a list of the same tracks by different artists.
I've made a small change to the script that makes it possible (you'll need to redownload it), but it's not possible to filter out duplicate tracks by the same artist (which at least in my case are by far the most common). Use this or similar mask:

Code: Select all

Duplicate tracks\<title|min tracks:2>\<artist>.
In a future version it may be possible to filter nodes based on aggregate properties of their children. In particular, this would allow to select only those titles for which there are at least two artists. But for now I hope this helps :D .
pah68
Posts: 1504
Joined: Wed Apr 07, 2004 5:26 pm
Location: Sydney, Australia

Post by pah68 »

It's been awhile since I've told you...but you are still a legend :D :D
pah68
Posts: 1504
Joined: Wed Apr 07, 2004 5:26 pm
Location: Sydney, Australia

Post by pah68 »

It works a treat...cheers :wink:
Guest

Post by Guest »

Pablo wrote:
alphaex32 wrote:I'm getting an error everytime I start MM:
Error #1002 - Microsoft VBScript compilation error
Syntax error
File: "C:\Program Files\MediaMonkey\Scripts\Auto\MagicNodes.1.3.vbs", Line: 891, Column: 3

I get a MagicNodes item in the tree, but I dont see an option anywhere to create any nodes.

I installed it correctly in the Scripts\Auto folder with no older versions installed. I am using the latest MM beta.
What operating system are you using? The only thing I can think of is that you're using an outdated version of windows scripting host. You can download the latest one from http://www.microsoft.com/downloads/deta ... laylang=en . Let me know if that works.
I'm running WinXP pro and I already tried updating scripting host, so that shouldn't be the problem.
ironlad
Posts: 6
Joined: Sat Jun 25, 2005 10:41 am

error message on installation "Variable is undefined '

Post by ironlad »

When I run the install program of magic node I get the following error message and install locks


line 51
char 2
error Variable is undefined: 'SDB'
Code 800A01F4
Source Microsoft VBScript runtime error
Pablo
Posts: 554
Joined: Sun Feb 22, 2004 2:59 am

Re: error message on installation "Variable is undefin

Post by Pablo »

ironlad wrote:When I run the install program of magic node I get the following error message and install locks


line 51
char 2
error Variable is undefined: 'SDB'
Code 800A01F4
Source Microsoft VBScript runtime error
You DO NOT have to install the script. You only have to copy/save the file to the scripts\auto folder in the MM program folder. It seems to me that you double-clicked or ran the file; don't worry because nothing bad happened, it just doesn't work that way.The script acts automatically when MM is started. Hope this helps :D .
nachtgieger
Posts: 37
Joined: Thu Dec 19, 2002 3:41 am
Location: Germany

Error with "Original artist"

Post by nachtgieger »

I added an "Original Artist" node, similar to the "Album Artist" node from the example.
This is the code:

Code: Select all

Original Artist|icon:top level|child of:artist\<Original Artist|trim:1>\<Original Artist>
The "first character" nodes are created correctly. On single click on "Original Artist" node or one of the "first character" nodes the tracks window is filled correctly with the corresponding tracks.

But expanding one of the "first character" nodes, either by double clicking it or by clicking the "+" does not work. An error message is displayed saying
07002:[Microsoft][ODBC Microsoft Access Driver] 1 parameter expected, passed not enough parameters
(or something like that, I tried to translate this message which is in german on my computer), followed by
Error #-2147418113 - SongsDB.SDDBIterator Field 'Count_Unknown' not found. File: "...\MagicNodes.1.3.vbs", Line:1148, Column 24
Other items that are also saved in the table AddSongInfo (eg. involved people, publisher, lyricist) show the same behavior.

Some items from AddSongInfo don't have a keyword in MagicNodes (e.g. original title, DataType=300, original lyricist, DataType=302). See http://www.mediamonkey.com/forum/viewtopic.php?t=2305 for a list of the DataType values.
Pablo
Posts: 554
Joined: Sun Feb 22, 2004 2:59 am

Post by Pablo »

Thanks for the report nachtgieger. This is odd. The exact same problem has been reported and solved before (look in pages 11/12 of the thread), but now it's not working again :-? . In any case, I remember what the problem was so I'll fix it (again) soon.

I usually add fields as they are requested, but it's very easy to add all the "extra people" field, so I'll use the thread you qouted as reference and add all of them for the next version. :D
Bex
Posts: 6316
Joined: Fri May 21, 2004 5:44 am
Location: Sweden

Post by Bex »

Pablo wrote:
onkel_enno wrote:

Code: Select all

Artist by Album Artist\<album artist>\<artist>
Doesn't show nodes where album artist <> song artist :(
f.e. Various
You're right, <album artist> and <artist> can't be combined. This issue is mentioned somewhere in the online help. The problem is that <album artist> links albums.idArtist = Artists.id and <artist> links songs.idArtist = Artists.id, so you end up with albums.idArtist = songs.idArtist, producing the behavior you described.

If you have any ideas of how to overcome this problem let me know :D . I wasn't able to find a solution that doesn't imply rewriting a big part of the script :cry: .
I have actually solved this problem! :D

The problem is that <album artist> and <artist> uses the same Artists table.
The solution is to add an extra Artists table to the SQL by giving it an alias. I called it Artists1.
Then you need to change the script like this:
Find.

Code: Select all

.Add "ALBUM ARTIST", "Artists.Artist"
And replace with

Code: Select all

.Add "ALBUM ARTIST", "Artists1.Artist"
Find

Code: Select all

.Add "ALBUM AND ARTIST", "Albums.Album & ' (' & Artists.Artist & ')'"
And replace with

Code: Select all

.Add "ALBUM AND ARTIST", "Albums.Album & ' (' & Artists1.Artist & ')'"
Find

Code: Select all

.Add "ALBUM ARTIST", " Artists.Id = Albums.IdArtist And Albums.ID = Songs.IdAlbum "
And replace with

Code: Select all

.Add "ALBUM ARTIST", " Artists1.Id = Albums.IdArtist And Albums.ID = Songs.IdAlbum "
Find

Code: Select all

.Add "ALBUM AND ARTIST", " Artists.Id = Albums.IdArtist And Albums.ID = Songs.IdAlbum "
And replace with

Code: Select all

.Add "ALBUM AND ARTIST", " Artists1.Id = Albums.IdArtist And Albums.ID = Songs.IdAlbum "
And now we come to the tricky part. How do we add an extra Artists table with the name Artists1?
I tried to change this

Code: Select all

tables = Array("Artists", "Albums", "Genres", "Memos", "AddSongInfo", "AddSongInfoInt", "Played", "PlayLists", "PlayListSongs", "Lists", "Medias", "Covers")
Into this (thats how you do it in SQL).

Code: Select all

tables = Array("Artists", "Artists as Artists1", "Albums", "Genres", "Memos", "AddSongInfo", "AddSongInfoInt", "Played", "PlayLists", "PlayListSongs", "Lists", "Medias", "Covers")
But it didnt work. It seems that you cant have any spaces in the Array? (Or is it possible?)
Anyway, I did a dirty trick.
The replaced the last code with this:

Code: Select all

tables = Array("Artists", "Artists1", "Albums", "Genres", "Memos", "AddSongInfo", "AddSongInfoInt", "Played", "PlayLists", "PlayListSongs", "Lists", "Medias", "Covers")
And then I opened up MediaMonkey.mdb in Access and created a query on table Artists and called it Artists1.

And there you go, it works!
I havent tested it so much though. And the drag&drop functionality is not modified so it will most certainly mess up the tags/library.

Warning!
If you plan to test this you better have knowledge of Access. If you dont know what you are doing you can screw up your library.
Do a backup if you plan to test it!

PS If anyone knows how to define "Artists as Artists1" as a table in the script then tell us. So we dont need the workaround with a query in Access.
Pablo
Posts: 554
Joined: Sun Feb 22, 2004 2:59 am

Post by Pablo »

Thanks Bex, that sounds great, I'll give it a try :D .
Bex
Posts: 6316
Joined: Fri May 21, 2004 5:44 am
Location: Sweden

Post by Bex »

I've made one more little enhancement regarding the <FORMAT>. I did change the code so it actually displays the file extension instead of the last three characters of the file.

Find:

Code: Select all

.Add "FORMAT", "Right(Songs.SongPath,3)"
And replace with this:

Code: Select all

	.Add "FORMAT", "IIf(Left(Right(songpath,3),1)='.', " & "Right(songpath,2), "& _ 
                       "IIf(Left(Right(songpath,4),1)='.', " & "Right(songpath,3), "& _ 
                       "IIf(Left(Right(songpath,5),1)='.', " & "Right(songpath,4), "& _ 
                       "IIf(Left(Right(songpath,6),1)='.', " & "Right(songpath,5), "& _ 
                       "Right([songpath],6)))))"
It take cares of every extension that can be associeted with MM. From AU to FLAC. It even displays extensions up to 6 characters because I've renamed all my mp3pro files to . mp3pro!
Pablo
Posts: 554
Joined: Sun Feb 22, 2004 2:59 am

Post by Pablo »

Bex wrote:I've made one more little enhancement regarding the <FORMAT>. I did change the code so it actually displays the file extension instead of the last three characters of the file.
Awesome! :D . Your enhancements will be definitely incorporated into the next version of the script, as well as Enrico's helpful suggestions. Unfortunately I'm crazy with other stuff right now, but I'll try to incorporate these suggestions and post the updated version soon as these are some nice improvements.
rk

Strange behaviour on album-artist hierarchy

Post by rk »

Hope this is the right place to place a question about MagicNodes ...

Made a node "Album(A..Z)|child of:album|icon:top level\<Album|trim:1>\<Album>\<Artist>"

which should give me 3 levels:
1) Initial of album
2) Album name
3) Artists that have published such an album

Imagine there are several artists with an album "Greatest Hits". Why do I get several 2nd-level nodes "Greatest Hits" with one artist below each instead of just one node with all the artists below?
Locked