Magic Nodes music collection backup cross-check?

Download and get help for different MediaMonkey Addons.

Moderators: Peke, Gurus

Ooddiittyy
Posts: 15
Joined: Tue Mar 14, 2006 9:46 pm
Contact:

Magic Nodes music collection backup cross-check?

Post by Ooddiittyy »

So I'm having difficulty searching for a solution to this on the forum (I'm sure someone's talked about something like this somewhere, but I'll be damned if I can figure out how to phrase the search), so here goes:

I have a master directory of downloaded music, which I need to maintain unmodified for seed - er, egalitarian - purposes.

I also have a music archive directory, wherein I keep redundancies of the files in my download directory along with other music collected over the years.

What I would like to do is compare between those two directories, and generate a node reflecting all the music in the download directory which has not yet been added to the archive directory. Although I'm sure there will be certain inconsistencies between the tags, I believe this could be accomplished with sufficient accuracy using Artist/Album/Title/Length or Bitrate comparison.

I haven't a great deal of experience with coding, and trying to wrap my head around how to specify the net difference between two directories in Magic Nodes is making my head hurt.

Any help would be greatly appreciated.
Image

"By trying we can easily learn to endure adversity. Another man's, I mean."
--Mark Twain
Bex
Posts: 6316
Joined: Fri May 21, 2004 5:44 am
Location: Sweden
Contact:

Re: Magic Nodes music collection backup cross-check?

Post by Bex »

Check out my Duplicate script, link in signature, it will help you in such task!
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!

All My Scripts
Ooddiittyy
Posts: 15
Joined: Tue Mar 14, 2006 9:46 pm
Contact:

Re: Magic Nodes music collection backup cross-check?

Post by Ooddiittyy »

@ Bex:

Thanks for the reply, but I have looked at that option before and can't figure out how it would work. Seems to me what I end up getting is a list of files that are in both directories, not the difference between them.

If you don't mind taking a minute and explaining how you would set it up to work, I'd be happy to try out any suggestion you might have. Thanks!

edit: Because it needs to compare between the tags first, and then between the directories. I would suspect that doing something like "look for files contained in [download] AND NOT [archive]" would just result in files from the [download] directory, since none of those files are physically in the [archive] folder.
Image

"By trying we can easily learn to endure adversity. Another man's, I mean."
--Mark Twain
Bex
Posts: 6316
Joined: Fri May 21, 2004 5:44 am
Location: Sweden
Contact:

Re: Magic Nodes music collection backup cross-check?

Post by Bex »

Yes that's correct. Simply create a playlist of the dupes. Then take the directory minus the dupe-playlist (Is Not Dupe-Playlist) within an advanced search!
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!

All My Scripts
Ooddiittyy
Posts: 15
Joined: Tue Mar 14, 2006 9:46 pm
Contact:

Re: Magic Nodes music collection backup cross-check?

Post by Ooddiittyy »

@ Bex:

Yes, that sounds like it should work. I suppose I was hoping for something which would automatically maintain itself, but your idea should do the trick!

Many thanks. Logic FTW.
Image

"By trying we can easily learn to endure adversity. Another man's, I mean."
--Mark Twain
ZvezdanD
Posts: 3112
Joined: Thu Jun 08, 2006 7:40 pm

Re: Magic Nodes music collection backup cross-check?

Post by ZvezdanD »

You could use Magic Nodes for this without generating any playlist. You should specify download folder it the next mask (instead of c:\Download):

Code: Select all

<Group|name:Tracks...|Show tracks:No>\Tracks from download folder which have not duplicates|Icon:Top level|Filter:Songs.SongTitle || '|' || Songs.Artist || '|' || Songs.Album || '|' || Songs.TrackNumber || '|' || Songs.SongLength COLLATE IUnicode NOT IN (SELECT SongTitle || '|' || Artist || '|' || Album || '|' || TrackNumber || '|' || SongLength COLLATE IUnicode AS GroupField FROM Songs GROUP BY GroupField HAVING Count(*) > 1) AND <Folder> Like 'c:\Download\%'\<Title|Trim:1>\<Title with artist|Statistic:Count(All)>
You could also try the next mask where you should specify both download (in 2 places) and archive folders:

Code: Select all

<Group|name:Tracks...|Show tracks:No>\Tracks from download folder which have not duplicates in archive folder|Icon:Top level|Filter:Songs.SongTitle || '|' || Songs.Artist || '|' || Songs.Album || '|' || Songs.TrackNumber || '|' || Songs.SongLength COLLATE IUnicode NOT IN (SELECT SongTitle || '|' || Artist || '|' || Album || '|' || TrackNumber || '|' || SongLength COLLATE IUnicode AS GroupField FROM Songs WHERE <Folder> Like 'c:\Download\%' OR <Folder> Like 'c:\Archive\%' GROUP BY GroupField HAVING Count(*) > 1) AND <Folder> Like 'c:\Download\%'\<Title|Trim:1>\<Title with artist|Statistic:Count(All)>
Magic Nodes 4.3.3 / 5.2 RegExp Find & Replace 4.4.9 / 5.2  Invert Selection/Select None 1.5.1  Export/Create Playlists for Child Nodes 4.1.1 / 5.4.1  Expand Child Nodes/Expand All 1.1.2  Event Logger 2.7  Filtered Statistics Report 1.6  Track Redirection & Synchronization 3.4.2  Restore/Synchronize Database 3.1.8 / 4.0.1  Find Currently Playing Track 1.3.2  Queue List 1.2.1  Add to Library on Play 1.0.1  Tree Report for Child Nodes 1.1.1  Update Location of Files in Database 1.4.5 / 2.3  Inherit Child Playlists 1.0.3  Add Currently Playing/Selected Track(s) to Playlist 1.2
Ooddiittyy
Posts: 15
Joined: Tue Mar 14, 2006 9:46 pm
Contact:

Re: Magic Nodes music collection backup cross-check?

Post by Ooddiittyy »

@ ZvezdanD:

You are awesome for taking the time to put all that together, so thanks very much!

That being said, however, the first one doesn't quite seem to give proper results (still haven't figured out exactly what rules it's following, but it's definitely giving some false-positives), and the second one crashes MM every time I try and open the node. :(

I appreciate the effort, though. If you have any further recommendations I'll be happy to give them a shot. Cheers!
Image

"By trying we can easily learn to endure adversity. Another man's, I mean."
--Mark Twain
ZvezdanD
Posts: 3112
Joined: Thu Jun 08, 2006 7:40 pm

Re: Magic Nodes music collection backup cross-check?

Post by ZvezdanD »

Ooddiittyy wrote:the first one doesn't quite seem to give proper results (still haven't figured out exactly what rules it's following, but it's definitely giving some false-positives),
The first mask displays tracks from the c:\Download\ folder which don't have duplicates at all, not only in c:\Archive\ but nowhere else. If you have same track in c:\Download\ and e.g. c:\My Music\ then that track would not be displayed. This is a reason why I posted the second mask which have additional criterion with the c:\Archive\ folder. By the way, two tracks are considered as duplicates if they have same Title, Artist, Album, Track # and Length.
Ooddiittyy wrote:and the second one crashes MM every time I try and open the node. :(
Sorry, I didn't test the second mask. Here is the updated one:

Code: Select all

<Group|name:Tracks...|Show tracks:No>\Tracks from download folder which have not duplicates in archive folder|Icon:Top level|Filter:Songs.SongTitle || '|' || Songs.Artist || '|' || Songs.Album || '|' || Songs.TrackNumber || '|' || Songs.SongLength COLLATE IUnicode NOT IN (SELECT SongTitle || '|' || Artist || '|' || Album || '|' || TrackNumber || '|' || SongLength COLLATE IUnicode AS GroupField FROM Songs, (SELECT *, CASE WHEN DriveLetter IS NOT NULL THEN SubStr('ABCDEFGHIJKLMNOPQRSTUVWXYZ', DriveLetter + 1, 1) ELSE '' END AS DriveStr FROM Medias) AS Medias2 WHERE (<Folder> Like 'c:\Download\%' OR <Folder> Like 'c:\Archive\%') AND Songs.IDMedia = Medias2.IDMedia GROUP BY GroupField HAVING Count(*) > 1) AND <Folder> Like 'c:\Download\%'\<Title|Trim:1>\<Title with artist|Statistic:Count(All)>
Magic Nodes 4.3.3 / 5.2 RegExp Find & Replace 4.4.9 / 5.2  Invert Selection/Select None 1.5.1  Export/Create Playlists for Child Nodes 4.1.1 / 5.4.1  Expand Child Nodes/Expand All 1.1.2  Event Logger 2.7  Filtered Statistics Report 1.6  Track Redirection & Synchronization 3.4.2  Restore/Synchronize Database 3.1.8 / 4.0.1  Find Currently Playing Track 1.3.2  Queue List 1.2.1  Add to Library on Play 1.0.1  Tree Report for Child Nodes 1.1.1  Update Location of Files in Database 1.4.5 / 2.3  Inherit Child Playlists 1.0.3  Add Currently Playing/Selected Track(s) to Playlist 1.2
Post Reply